Overview:
This lab was a continuation of Lab 9 - connecting to any aircraft requires two things. A transmitter and a receiver. On our aircraft we’re using the controller as a User Interface for a third-party transmitter rather than using the built-in transmitter. We’re using a “backpack” module called the TBS Tracer, which uses a protocol called CRSF - known for its superior penetration and distance capabilities over most standard protocols.
Parameters Version Control
Receiver Setup
Andrew and I each soldered header pins to the 3 Nano RX boards, updated the Transmitter to use the TBS tracer “backpack” module, and then bound the transmitter and receiver - verifying that they bound using the GCS software. Although the transmitter and receiver bound, the controller needed to be updated to be properly set up - we did that with a provided zip file, and the DATX with the tracer was able to communicate with the receiver. We did need to alter the Cube’s software as it wasn’t set up properly - we flashed the Cube with Version 1.31, but the version and parameters files had some sort of discrepancy, so that caused and error - we were given a new file that was supposed to facilitate these changes; however, we ran into a multitude of issues, which were ultimately resolved by using a different path to upload the file. At this point, we were able to test if everything still worked, and everything but the GPS did.
We fixed the GPS issue by flashing a new (different/updated) firmware. With the different firmware, the GPS parameters were changed, and then we reinstalled the Windracers firmware. I believe our group was the first to receive the updated firmware, as Professor Rose used a Cube running Ardupilot to tweak parameters and then test them in our system running Windracers' firmware. This process was relatively lengthy, stretching from the tail end of lab 10 to the beginning/middle of lab 11. We were able to get GPS signal, however, and verified this by placing the GPS module up against the window.
Note: Revised after GPS issues were resolved
| Connector | Connector Type |
|-----------|----------------------------------|
| GPS1 | JST-GH 1.25 mm (6-pin) |
| GPS2 | JST-GH 1.25 mm (6-pin) |
| TELEM1 | JST-GH 1.25 mm (6-pin) |
| TELEM2 | JST-GH 1.25 mm (6-pin) |
| I2C2 | JST-GH 1.25 mm (4-pin) |
| CAN1 | JST-GH 1.25 mm (4-pin) |
| CAN2 | JST-GH 1.25 mm (4-pin) |
| POWER1 | Molex CLIK-Mate 2mm (6-pin) |
| POWER2 | Molex CLIK-Mate 2mm (6-pin) |
| DSM | JST-GH 1.25 mm (3-pin) |
| POWER | JST-GH 1.25 mm (6-pin) |
| ADC | JST-GH 1.25 mm (6-pin) |
| DST | JST-GH 1.25 mm (15-pin) |
| ETH | TE Multi-purp plug (8P) |
Reflection
This lab was relatively straightforward aside from the aforementioned firmware/GPS issues - similarly to the last lab, I feel as though I’m starting to understand how the Believer system operates, as well as its advantages and disadvantages as a closed system. Being in a group was crucial for this lab, as I feel that individually all of us would’ve struggled significantly more than we did, given the unfamiliar nature of both Windracers Ground Control as well as their “sealed”/closed-off approach to flight controller firmware. If this had been ArduPilot, the fix likely would’ve been much faster and perhaps more relevant to our issues, easy to upload. Ultimately, it seems as though this lab is a good look into semi-closed source software and likely how many of the platforms i’ll be working with will be operated in the future.