Bluetooth RSSI Testing and Flight Controller Shenanigans
- Shyam Hari
- Jan 26, 2023
- 2 min read
Week of Jan 27th
Overview
While the final components were being built and the BRD was being assembled the software team began creating flight control code to begin flight testing once the BRD was assembled. The off the shelf flight controller (FC) bought would handle motor control however inputs to the FC would be handled through a flight algorithm developed by the SWE team. An Arduino was used to interface with the FC to provide commands to fly the drone. The BLE capabilities of the purchased Arduino’s would also need to be tested to confirm that they meet the requirements of the project. The plan for the week was to complete the aforementioned testing.
Flight Controller
The Arduino uses PPM (Pulse-Position Modulation) to communicate with the FC. The different input channels, throttle, pitch, roll and yaw, and their values are sent in one PPM message. For testing purposes the on-board araduino will be communicated with, via Bluetooth, from an off-board Arduino. The on-board Arduino will accept flight commands from the off-board Arduino and convert the signal into a PPM signal and output those signals to the FC.
Bluetooth (BLE) RSSI
The localization mechanism used by the BRD and the target drone is bluetooth RSSI. Once the RSSI values are sufficiently low enough the drone will switch to using its on-board camera and distance sensors.
The board that will be used for the BRD is the Arduino Portenta H7. An Arduino Nano board was initially used as a board to interface with the Bluetooth on the Portenta. RSSI values are only integer values so obtaining precise values amongst the noise will be difficult. Regardless using Bluetooth Low Energy communication, on both Arduino's, RSSI values were received from the Portenta. A lower absolute value for the RSSI indicates closeness.
Further testing will include using a Bluetooth Chip on the Arduino to see if it can increase its signal strength range as during initial testing, BLE range maxed out at 6-7 meters.
Comments