AutoQuad & Spektrum telemetry
Posted: Tue Apr 01, 2014 2:26 pm
Hi Guys,
A very small preview what I'm working on:
Update jun: attached try out version and some instructions.
Using the Mav2HoTT (plan to rename it to Mav2Telem) and some protocol descriptions on the RCG I'm working on mapping the AQ mavlink data to Spektrum telemetry.
In this vid a very small portion of the data, I have all the Spektrum telemetry modules working on the arduino but I need to map all the mavlink data to it.
Compared to the Graupner HoTT the Spektrum is very limited both in data fields and flexibility, but I will be able to provide data like:
- GPS coordinates
- Altitude
- Speed
- Heading
- Distance to first position
- Bearing to first position
- Current Usage
- Capacity usage
- Main voltage
- GPS acquired satellite time (or maybe the motor runtime?)
- num satellites, but I will be using the hAcc (horizontal accuracy for that, limited to 99cm (2 positions)
Stuff like temperature and Volts in the main screen are only possible using the Spektrum sensor delivered with the TM1000. That data is not transmitted on the communication bus.. shame...
For connections: not much needed, the arduino will communicate with the TM1000 bridge using I2C (in 2&3 on pro micro, or 4&5 on pro mini).
So, hope some will like it... Will be ready soon when time permits .........
ps. This is obviously the first attempt, maybe it can be ported to the AQ native but first a I2C slave driver must be developed on the STM32.
Update:
Here you can see how the connections work: (click on the picture for full display!)
Use an arduino pro mini or pro micro. Pro mini uses SCA/SCL pin 4&5, the micro pin 2&3.
The SCA/SCL I2C bux is called xBus on the TM1000 telemetry transmitter, in the picture it is shown how to wire.
The 5V can be pulled from the AutoQuad 5V output if you like or from the Arduino.
In the arduino sketch you can now select the telemetry protocol, so for spektrum comment out the HoTT and uncomment the spektrum (default in attached sketch).
Because the mavlink protocol on the AutoQuad has changed, it now requires requesting the correct telemetry streams FROM the AutoQuad. This means that not only the TX to arduino RX is needed but also the Arduino TX to AutoQuad RX.
Ok, all wired and sketch uploaded to the arduino. First start the AutoQuad controller, attach the arduino with all the needed cabling and watch for mavlink activity (on the pro-micro the left led will display a heartbeat). Attach the TM1000 and on the transmitter select the different telemetry modules you want.
Some samples in the pictures.
What we cannot send is the voltage and current for display in the main screen, that is hardcoded to use fixed wires in the tm1000, we will use the powermodule screen for that.
note: the tm1000 is very picky about timing, in some occasions arduinos boot is to slow for the inventory window (<1s) from the tm1000. In that case either a special bootloader is needed or the TM1000 must be powered or cycled after the arduino boot.
The TM1000 uses around 45mAh so using a straight digital pin from the arduino to power it is not possible. If requested a change in the code can be made to trigger a digiport (with a transistor/fet) after boot so that will power the tm1000 but lets see how it works out..
The files:
ftp://ftp.autoquad.org/3/334693_22529/a ... lem_v1.zip
Unpack all files in a directory and make sure the library files are copied to the arduino library folder.
Menno
A very small preview what I'm working on:
Update jun: attached try out version and some instructions.
Using the Mav2HoTT (plan to rename it to Mav2Telem) and some protocol descriptions on the RCG I'm working on mapping the AQ mavlink data to Spektrum telemetry.
In this vid a very small portion of the data, I have all the Spektrum telemetry modules working on the arduino but I need to map all the mavlink data to it.
Compared to the Graupner HoTT the Spektrum is very limited both in data fields and flexibility, but I will be able to provide data like:
- GPS coordinates
- Altitude
- Speed
- Heading
- Distance to first position
- Bearing to first position
- Current Usage
- Capacity usage
- Main voltage
- GPS acquired satellite time (or maybe the motor runtime?)
- num satellites, but I will be using the hAcc (horizontal accuracy for that, limited to 99cm (2 positions)
Stuff like temperature and Volts in the main screen are only possible using the Spektrum sensor delivered with the TM1000. That data is not transmitted on the communication bus.. shame...
For connections: not much needed, the arduino will communicate with the TM1000 bridge using I2C (in 2&3 on pro micro, or 4&5 on pro mini).
So, hope some will like it... Will be ready soon when time permits .........
ps. This is obviously the first attempt, maybe it can be ported to the AQ native but first a I2C slave driver must be developed on the STM32.
Update:
Here you can see how the connections work: (click on the picture for full display!)
Use an arduino pro mini or pro micro. Pro mini uses SCA/SCL pin 4&5, the micro pin 2&3.
The SCA/SCL I2C bux is called xBus on the TM1000 telemetry transmitter, in the picture it is shown how to wire.
The 5V can be pulled from the AutoQuad 5V output if you like or from the Arduino.
In the arduino sketch you can now select the telemetry protocol, so for spektrum comment out the HoTT and uncomment the spektrum (default in attached sketch).
Because the mavlink protocol on the AutoQuad has changed, it now requires requesting the correct telemetry streams FROM the AutoQuad. This means that not only the TX to arduino RX is needed but also the Arduino TX to AutoQuad RX.
Ok, all wired and sketch uploaded to the arduino. First start the AutoQuad controller, attach the arduino with all the needed cabling and watch for mavlink activity (on the pro-micro the left led will display a heartbeat). Attach the TM1000 and on the transmitter select the different telemetry modules you want.
Some samples in the pictures.
What we cannot send is the voltage and current for display in the main screen, that is hardcoded to use fixed wires in the tm1000, we will use the powermodule screen for that.
note: the tm1000 is very picky about timing, in some occasions arduinos boot is to slow for the inventory window (<1s) from the tm1000. In that case either a special bootloader is needed or the TM1000 must be powered or cycled after the arduino boot.
The TM1000 uses around 45mAh so using a straight digital pin from the arduino to power it is not possible. If requested a change in the code can be made to trigger a digiport (with a transistor/fet) after boot so that will power the tm1000 but lets see how it works out..
The files:
ftp://ftp.autoquad.org/3/334693_22529/a ... lem_v1.zip
Unpack all files in a directory and make sure the library files are copied to the arduino library folder.
Menno