I'm trying to set up the heart_rate_collector.py
example app for pc-ble-driver-py, but gotten pretty confused about the process to run it.
What's gotten me furthest so far is:
- Erasing and flashing the board with the 115k baud hex file:
$ nrfjprog --family nRF52 -e $ nrfjprog --family nRF52 --program ./sd_api_v5/connectivity_2.0.1_115k2_with_s132_5.0.hex $ nrfjprog --family nRF52 -r`
- Running the collector script:
$ python /.../pc_ble_driver_py/examples/heart_rate_collector.py NRF52
- From here, I just have to select my device and the script tries to run - but it fails pretty quickly with Queue.Empty:
0 : /dev/ttyACM0: 000682154983 Enter your choice: 0 Serial port used: /dev/ttyACM0 Enabling larger ATT MTUs Received advertisment report, address: 0xE2A6B5FE7403, device_name: Charge 2 Received advertisment report, address: 0xE2A6B5FE7403, device_name: Charge 2 Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/pc_ble_driver_py/examples/heart_rate_collector.py", line 187, in <module> main(serial_port) File "/usr/local/lib/python2.7/dist-packages/pc_ble_driver_py/examples/heart_rate_collector.py", line 151, in main conn_handle = collector.connect_and_discover() File "/usr/local/lib/python2.7/dist-packages/pc_ble_driver_py/examples/heart_rate_collector.py", line 87, in connect_and_discover new_conn = self.conn_q.get(timeout = 60) File "/usr/lib/python2.7/Queue.py", line 176, in get raise Empty Queue.Empty
I'm confused on several points here:
- The immediate issue (why it's failing with Queue.Empty)
- Why does the DK have to be connected over USB for this? I thought the purpose of the example apps were to show BLE communication between PC and DK?
- How do I build the hex file mentioned at the top (provided in pc-ble-driver) myself, or change values in it? What are all of the serial options in the SDK for (ser_s132_hci, ser_s132_spi, ser_s132_spi_5W, ser_s132_uart) - I don't see those for many of the other example apps?
Configuration:
- Ubuntu 17.04
- SDK v14.2
- pca10040, v1.2.1
- nrf52832