-
Adafruit feather nrf52840 express
-
ESP32 devkit c v4 (32D)
-
3.7v Li-ion battery (to power the feather)
-
5v Li-ion battery (to power the ESP32)
-
ESP32 power expansion board
The power supply method for the ESP32 does not have to be the same as mine (I used a 5V battery because of my power expansion board); just choose the method that suits you. For everything else, it is recommended to stay consistent with my setup to increase the success rate.
Download and install Arduino IDE.
Configure the protocol stack for the feather and modify the relevant library files: ANT+ Device Development Guide | 知者不言
GitHub - 1wpc/PowerMeter_Arduino: XDSHacker function: XDS -> nrf52840 -> magene (feather)
GitHub - 1wpc/xds_repeater (ESP32)
-
Start the AD350 power meter first; when the green light flashes, it has started successfully (Note: ensure the power meter is not connected to any other device at this time).
-
Power on the ESP32.
-
Power on the feather (when the blue light changes from flashing to solid, it is operating normally).
Following the sequence of the steps above can ensure a higher success rate.
The Bluetooth service of the XDS power meter is 0x1828 (Mesh Proxy Service) and the characteristic value is 0x2A63 (Cycling Power Measurement).
Additionally, connecting the nrf52840 directly to the XDS power meter does not receive data, so the ESP32 is currently used as a relay. Therefore, there is still room for optimization in this system, ideally solving it with a single board.
