diff --git a/README.md b/README.md index baad235..a9f8816 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,20 @@ And, of course, a BLE controller is also required. On linux systems, any Bluetoo required (it also works on linux, by the way). + # GBSHAHAQ edit: + Hardcoded Hub addresses have been replaced in the examples with a fetch of environment + variable for the Boost hub. + I found the address of mine from my Raspberry Pi (Buster) using + sudo hcitool lescan + Useful BLE resource: https://www.instructables.com/Control-Bluetooth-LE-Devices-From-A-Raspberry-Pi + Then export this as an environment variable called "MYMOVEHUB" + + Linux: export MYMOVEHUB="[insert MAC address]" + To persist it, add it your shell profile - for bash, add this line to the ~/.bashrc file. + + Windows: set (or setx for persistence) + set MYMOVEHUB "[insert MAC address]" + ## Supported environments ## As I only have linux systems, most tests are done on my Ubuntu laptop (17.04, x64) and, of course, on diff --git a/examples/color_controlled_car.py b/examples/color_controlled_car.py index 847bb6a..6c0187d 100755 --- a/examples/color_controlled_car.py +++ b/examples/color_controlled_car.py @@ -11,7 +11,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_button_read.py b/examples/demo_button_read.py index 273825a..429cadc 100755 --- a/examples/demo_button_read.py +++ b/examples/demo_button_read.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_color_speak.py b/examples/demo_color_speak.py index c9fe87c..24ae6e4 100755 --- a/examples/demo_color_speak.py +++ b/examples/demo_color_speak.py @@ -6,7 +6,9 @@ from espeak import espeak # apt install python3-espeak from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' espeak.set_voice = 'en' diff --git a/examples/demo_colordist.py b/examples/demo_colordist.py index d17aac5..9606659 100755 --- a/examples/demo_colordist.py +++ b/examples/demo_colordist.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_encoder_and_color.py b/examples/demo_encoder_and_color.py index 77d832c..746f9e7 100755 --- a/examples/demo_encoder_and_color.py +++ b/examples/demo_encoder_and_color.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_encoder_read.py b/examples/demo_encoder_read.py index f3b9db9..509f9d1 100755 --- a/examples/demo_encoder_read.py +++ b/examples/demo_encoder_read.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_encoder_read_x3.py b/examples/demo_encoder_read_x3.py index 684836e..737d13d 100755 --- a/examples/demo_encoder_read_x3.py +++ b/examples/demo_encoder_read_x3.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_gamepad.py b/examples/demo_gamepad.py index 1f6fa9b..2bdd886 100755 --- a/examples/demo_gamepad.py +++ b/examples/demo_gamepad.py @@ -38,7 +38,9 @@ import evdev import threading -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' MY_GAMEPAD_NAME = 'Bluetooth Gamepad' diff --git a/examples/demo_linefollower.py b/examples/demo_linefollower.py index df40c3d..8c05832 100755 --- a/examples/demo_linefollower.py +++ b/examples/demo_linefollower.py @@ -5,6 +5,7 @@ from time import sleep +import os # # Line Follower # - wheels on motor A and B @@ -12,7 +13,7 @@ # Demo video: https://youtu.be/2QysaaYmy9Q # -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' delay = 0.0 # delay at the end of each cycle @@ -53,4 +54,4 @@ def back(): pass finally: - mymovehub.stop() \ No newline at end of file + mymovehub.stop() diff --git a/examples/demo_motor.py b/examples/demo_motor.py index 77f3303..ec048e1 100755 --- a/examples/demo_motor.py +++ b/examples/demo_motor.py @@ -5,7 +5,12 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +ENV_MOVEHUB = os.environ.get('MYMOVEHUB') + +#MY_MOVEHUB_ADD = '00:16:53:AB:EB:25' +MY_MOVEHUB_ADD = ENV_MOVEHUB MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_motor_wedo2.py b/examples/demo_motor_wedo2.py index 665d5b5..6cbc34b 100755 --- a/examples/demo_motor_wedo2.py +++ b/examples/demo_motor_wedo2.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_tilt_read.py b/examples/demo_tilt_read.py index bceb447..dbd8d5c 100755 --- a/examples/demo_tilt_read.py +++ b/examples/demo_tilt_read.py @@ -5,12 +5,14 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' -#mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) +mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) #mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueGiga', '') -mymovehub = MoveHub(MY_MOVEHUB_ADD, 'Auto', MY_BTCTRLR_HCI) +#mymovehub = MoveHub(MY_MOVEHUB_ADD, 'Auto', MY_BTCTRLR_HCI) try: mymovehub.start() diff --git a/examples/demo_vernie.py b/examples/demo_vernie.py index add5314..31657dc 100755 --- a/examples/demo_vernie.py +++ b/examples/demo_vernie.py @@ -41,8 +41,9 @@ from time import sleep import evdev import threading +import os -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' MY_GAMEPAD_NAME = 'Bluetooth Gamepad' diff --git a/examples/demo_wedo2distance.py b/examples/demo_wedo2distance.py index 0f1b09f..f5e7239 100755 --- a/examples/demo_wedo2distance.py +++ b/examples/demo_wedo2distance.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_wedo2tilt_angle.py b/examples/demo_wedo2tilt_angle.py index 0dbed1e..5747b08 100755 --- a/examples/demo_wedo2tilt_angle.py +++ b/examples/demo_wedo2tilt_angle.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/demo_wedo2tilt_tilt.py b/examples/demo_wedo2tilt_tilt.py index 4f1fa8a..29c7d37 100755 --- a/examples/demo_wedo2tilt_tilt.py +++ b/examples/demo_wedo2tilt_tilt.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI) diff --git a/examples/ev3-tilt-controller.py b/examples/ev3-tilt-controller.py index 2769005..2046171 100755 --- a/examples/ev3-tilt-controller.py +++ b/examples/ev3-tilt-controller.py @@ -10,7 +10,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci1' m1 = ev3.LargeMotor('outA') diff --git a/examples/test_connection.py b/examples/test_connection.py index 417f36e..68554cc 100755 --- a/examples/test_connection.py +++ b/examples/test_connection.py @@ -5,7 +5,9 @@ from time import sleep -MY_MOVEHUB_ADD = '00:16:53:A4:CD:7E' +import os + +MY_MOVEHUB_ADD = os.environ.get('MYMOVEHUB') MY_BTCTRLR_HCI = 'hci0' mymovehub = MoveHub(MY_MOVEHUB_ADD, 'BlueZ', MY_BTCTRLR_HCI)