...
Code Block | ||
---|---|---|
| ||
{ takeoffCommand: 41 byte boolean, qrScanFlag: 41 byte boolean, detectFlag: 41 byte boolean, gpsCoordinates: { lattitude: 8 byte double, longtitude: 8 byte double } } |
...
Encoding
Encode the schema as a semicolon separated value with start and end bitsbyte array. Note that the semicolons are just for readability, they're not part of the message.
FOJI
Start bit is a $ followed by FOJI
Code Block |
---|
$FOJI;lattitude;longtitude;altitude;yaw;pitch;roll |
Total Message Size: 47 41 bytes
FIJO
Start messages with a '$' sign followed by the string “FIJO”
Code Block | ||
---|---|---|
| ||
$FIJO;takeoffCommand;qrScanFlag;detectFlag;lattitude;longitude |
Total message size: 38 24 bytes
Implementation - Computer Vision
...
All functionality relating to FIJO will be contained in the FltConnSend module. When a request is recieved of type QR_COORDINATES or TARGET_COORDINATES as defined here from the input pipeline in the worker function it will call the the sendFIJO method to encode it into a string as defined above and set the required flags. The worker function will then use the write method of the UARTInterface to send the message before waiting for the next message from the pipeline.
Timeline/Plan:
Understand how to create a general UART communication link between 2 microcontrollers - December 10th at the latest (the second I find some free time, won't take too long)
Create a UART Driver to get ZeroPilot to send and receive data taking into account all the required information above - Maybe before exams?
Test and integrate into Telemetry Manager - Sometime after exams, potentially winter break?
Modify Telemetry and Path Manager Comms as required - Sometime after exams, potentially winter break?