Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Electronic projects that are either related to the firmwares for the 9x, or simply great for radio control applications.
Post Reply
User avatar
Rob Thomson
Site Admin
Posts: 4543
Joined: Tue Dec 27, 2011 11:34 am
Country: United Kingdom
Location: Albury, Guildford
Contact:

Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Rob Thomson »

Hi All

I am starting to pull together some information to enable a SPORT to DUPLEX convertor to be made.

The idea here is to enable cheaper frsky sensors to be used with the Jeti Duplex protocol.

Initial research would show it to be quite a straight forward job.

A few resources I have found are:

1. invertor cable
This cable would probably be needed to allow the sport sensor to be plugged into an arduino. This is due to the signal being inverted. (to be confirmed)
http://www.hobbyking.com/hobbyking/stor ... Cable.html

2. arduino receive code
This project is already receiving the frsky code. Essentially allowing you to plug a smart port device into an arduino, then reading the values.
https://github.com/zendes/SPort

3. jeti duplex output
This project implements a duplex protocol from mavlink source. Essentially the guts of what I already need.
http://www.devfor8.com/mav2duplex/

I am hoping to find some time over the next few weeks to try and put a working sample together! (unless any other guru can beat me to it!) If anyone else has any ideas in this regard.. shout!

Rob
Slope Soaring, FPV, and pretty much anything 'high tech'
...........if you think it should be in the wiki.. ask me for wiki access, then go add it!

mstrens
Posts: 1435
Joined: Fri Dec 27, 2013 7:49 pm
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by mstrens »

As you probably know, you can find some code in openXsensor that could be usefull to receive the SPORT data without using an inverter.
This is possible because it does not use the harware UART.
Take care that currently openxsensor read only the deviceID and not all data but I think it could be adapted.

Otherwise, I think you can try using a software serial library. If I remember wel, such a library was used in an old version of openxsensor.
User avatar
Rob Thomson
Site Admin
Posts: 4543
Joined: Tue Dec 27, 2011 11:34 am
Country: United Kingdom
Location: Albury, Guildford
Contact:

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Rob Thomson »

Can you point me roughly to where in the source I can find this?
Slope Soaring, FPV, and pretty much anything 'high tech'
...........if you think it should be in the wiki.. ask me for wiki access, then go add it!
mstrens
Posts: 1435
Joined: Fri Dec 27, 2013 7:49 pm
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by mstrens »

I presume that you would like to connect the Frsky sensors directly to the Arduino without using a Frsky receiver.
In this case, you have to take care that Arduino has to generate the polling that is normally generated by the Rx.
This is required because the Sport sensors do not sent automatically their data. They have a device ID and they sent their data only when a master (normally the Rx) makes a polling with the same device Id.
User avatar
Rob Thomson
Site Admin
Posts: 4543
Joined: Tue Dec 27, 2011 11:34 am
Country: United Kingdom
Location: Albury, Guildford
Contact:

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Rob Thomson »

Hmm...

Yes. Prerty much.

Having a read of this:
https://github.com/zendes/SPort

It sould look to me like this code is simply sniffing the wire. Not actually sending th id.

This will need some thought.

The aim is essentially to make the Arduino emulate the receiver function.
Slope Soaring, FPV, and pretty much anything 'high tech'
...........if you think it should be in the wiki.. ask me for wiki access, then go add it!

mstrens
Posts: 1435
Joined: Fri Dec 27, 2013 7:49 pm
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by mstrens »

Rob Thomson wrote:Can you point me roughly to where in the source I can find this?
The code for the communication is in the file Aserial.cpp (and Aserial.h).
This file contains code for the 2 protocols (Hub and Sport). Normally only SPORT has sense for your project I presume.

If you need more explanations, do not hesitate to ask for.

Note: if you want a cheap solution, you could also avoid using Frsky sensor and use openxsensor as base.
You must then replace the Hub/SPORT protocols by the Jeti protocol. I can help if you want but I do not have a Jeti to test.
OpenXsensor supports already:
- altitude, uncompensated and/or pneumatically compensated Verticalspeed (vario)
- airspeed and (electronically) compensated vario
- up to 6 voltages/temperature measurements
- current measurement
- RPM.
I have some PCB that can help putting all compoments toegether.
mstrens
Posts: 1435
Joined: Fri Dec 27, 2013 7:49 pm
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by mstrens »

Rob Thomson wrote:Hmm...

Yes. Prerty much.

Having a read of this:
https://github.com/zendes/SPort

It sould look to me like this code is simply sniffing the wire. Not actually sending th id.

This will need some thought.

The aim is essentially to make the Arduino emulate the receiver function.
If you need informations on the way the Rx polls the sensors, I can help a little.
There are also some information on this forum
User avatar
Rob Thomson
Site Admin
Posts: 4543
Joined: Tue Dec 27, 2011 11:34 am
Country: United Kingdom
Location: Albury, Guildford
Contact:

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Rob Thomson »

I've got a general idea at this point. Any info you can supply would be usefull.

I guess what I need to do is hook a up a sensor and arduino - to see what I get out of it! I have never done any proper protocol based coding so will be a challenge :)

I think that a big advantage of this sort of trancoder will be the porential of enabling frsky sensors to be used on any telemetry system. Jeti is just the step1.
Slope Soaring, FPV, and pretty much anything 'high tech'
...........if you think it should be in the wiki.. ask me for wiki access, then go add it!
mstrens
Posts: 1435
Joined: Fri Dec 27, 2013 7:49 pm
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by mstrens »

Rob,
you can also find some information about SPORT in the thread.
viewtopic.php?f=96&t=5393&hilit=SPORT+protocol.

Frsky Rx makes a polling using 28 codes (allowing up to 28 sensors on the bus).
There is about 11 ms between 2 polling sent by RX.
So it takes initially 300 msec (28 * 11) to poll all sensors ID.
Still, if one sensor reply to RX, then Rx will poll this sensor once on two (so every 22 ms). This allows this sensor to transmit more data than if it would be polled only every 300 msec.
If more than one sensor reply, the Rx will adapt this logic in order to give priority to the sensors that replies.
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by MikeB »

The defined polling rate is 12mS, specifically the Rx sends out the 2 polling bytes (7E and the physical ID)(at 57600 baud), then listens for any response. Such a response should occur quite soon, and complete before 8mS from the start of the 7E poll. The last 4mS of the 12mS 'slot' the bus should be idle.

Mike.
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
User avatar
Henning
Posts: 14
Joined: Fri Feb 15, 2013 8:28 am
Country: Germany

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Henning »

Hello Rob,

I just read your post today, also the other one where you searched for the JETIBOX.INO code I used in the openXvario jeti branch...
If this helps, here is my most compact "Jeti Duplex EX" sensor implementation based on arduino:

Jeti Duplex EX Sensor (Arduino Demo code)

The JETIBOX.INO is included in this archive as well. The code can be directly flashed to a Pro Mini 328 16Mhz and sends some simple static sensor data to the UART (= EXT telemetry) port, Duplex EX coded as well as classic 16x2 jetibox.

But: It requires a hardware serial port to get the 9 bit protocol running. Shure the software implementatino could be patched to handle the 9th bit as well...

For my sensor projects I changed away from Arduino to pure C in the meantime. My current "Dual MS5611 vario" runs well with C, the DIY PCB is sized 16 x 22mm with a MS5611 on each pcb side and a m328 handling them.

By the way:
I am still interested in getting the TGY 9x "Duplex EX" capable, so I started to implement the EX "receiving side" into the OpenTX JETI code this summer. At least the state machine in JETI.INO decodes the EX frames already (besides the 16x2 jetibox text frames) and displays them alternativly on the transmitters jeti telemetry page. But its still buggy in the decoding, there are some frame errors on some channels...

Let me know if I can help in your transcoder project,
kind regards from Germany,
Henning
Last edited by Henning on Mon Nov 10, 2014 7:52 pm, edited 1 time in total.
User avatar
Rob Thomson
Site Admin
Posts: 4543
Joined: Tue Dec 27, 2011 11:34 am
Country: United Kingdom
Location: Albury, Guildford
Contact:

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by Rob Thomson »

Hey. Thanks for the info.

I have a load of diy going on at home, so work on this project will be patchy.

If I can get the frsky side sorted - I imagine the jeti side wilk be rather easy. The classes kind of already exist to just do the job.

Realistically... a few weeks before I make progress. Just too much on!
Slope Soaring, FPV, and pretty much anything 'high tech'
...........if you think it should be in the wiki.. ask me for wiki access, then go add it!
cradi
Posts: 1
Joined: Thu Jun 23, 2016 8:51 am
Country: -

Re: Arduino FRSKY SPORT to JETI DUPLEX transcoder..

Post by cradi »

Henning wrote:
By the way:
I am still interested in getting the TGY 9x "Duplex EX" capable, so I started to implement the EX "receiving side" into the OpenTX JETI code this summer. At least the state machine in JETI.INO decodes the EX frames already (besides the 16x2 jetibox text frames) and displays them alternativly on the transmitters jeti telemetry page. But its still buggy in the decoding, there are some frame errors on some channels...

Let me know if I can help in your transcoder project,
kind regards from Germany,
Henning
Hello Henning,

i am new to openTX. I am using Jeti at the Moment, and want to have a lightweight Transmitter. So I want to test a Taranis 9XD Plus.
I have many Models with Jeti Receiver, so i want to use a TG2 Modul at the Taranis.
Now is the open thing, how can i get the Telemetry in the Taranis. I need an Converter from JetiEX Protocol to FrSky.

Please tell me the state of your Project from the last Summer.
Or is there some sample Code available, to make an transcoder

Regards
Christian

Post Reply

Return to “General RC Electronic Projects and Discussion”