ERSKYTx (was ersky9x) Questions

erskyTx runs on many radios and upgrade boards
ersky9x was a port of er9x for use on the sky9x board.
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

As I understand it, crsfshot is just a method for the crossfire module to report synchronising information to the radio so that latency is reduced. Since the control data is sent to the module every 4mS, this may provide a latency reduction of an average of 2mS.
Does crsfshot provide anything else?

Regarding ELRS, does this use the same protocol as crossfire for setting the power level etc.?
If so, there is a script here: https://github.com/nrw505/ersky9x-crossfire-script that may do the required job.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!

User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

CatRovacer wrote: Thu Oct 08, 2020 7:15 am Mike, which version of arm-none-eabi-gcc need to build (make) erskytx?
Internal module for Jumper T12 PRO implemented under opentx, maybe we can see there how the interaction works
I use 4.8.3 currently, it works so I haven't bothered to update it. In the last few days, I have downloaded a version from 2020, but I haven't tested it yet.
Does the version of erskyTx for the T12 run OK on the T12 PRO, just not supporting the internal multiprotocol module? If so, it should be possible to ad this in. I have support for the internal module of the T16, so the code should be very similar.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
spinorkit
Posts: 48
Joined: Sun Dec 31, 2017 12:21 am
Country: New Zealand

Re: ERSKYTx (was ersky9x) Questions

Post by spinorkit »

LiM3, thanks so much for that info. One last question, how did you flash your r9m the first time? I imagine the new bootloader could be flashed using the sport in maintenance mode in erskyTx on the 9xr pro, but imagine you had to use an STLink or FTDI to flash the firmware without openTx?

This link: https://github.com/AlessandroAU/Express ... DI-adapter
says you can flash the r9m via FDTI, but I can't find Bootloader.hex anywhere.
User avatar
Kilrah
Posts: 11108
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: ERSKYTx (was ersky9x) Questions

Post by Kilrah »

You can't use sport, has to be stlink or serial.
LiM3
Posts: 15
Joined: Thu Mar 22, 2018 8:13 pm
Country: Finland

Re: RE: Re: ERSKYTx (was ersky9x) Questions

Post by LiM3 »


MikeB wrote:As I understand it, crsfshot is just a method for the crossfire module to report synchronising information to the radio so that latency is reduced. Since the control data is sent to the module every 4mS, this may provide a latency reduction of an average of 2mS.
Does crsfshot provide anything else?

Regarding ELRS, does this use the same protocol as crossfire for setting the power level etc.?
If so, there is a script here: https://github.com/nrw505/ersky9x-crossfire-script that may do the required job.

Mike
That's right. It reduces latency.

Lähetetty minun GM1913 laitteesta Tapatalkilla


spinorkit
Posts: 48
Joined: Sun Dec 31, 2017 12:21 am
Country: New Zealand

Re: ERSKYTx (was ersky9x) Questions

Post by spinorkit »

Kilrah wrote: Sat Nov 07, 2020 6:53 am You can't use sport, has to be stlink or serial.
Thanks, I have now flashed it using STLink.
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: RE: Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

LiM3 wrote: Sat Nov 07, 2020 10:24 am That's right. It reduces latency.

Lähetetty minun GM1913 laitteesta Tapatalkilla
I do have information relating to crsfshot, although I'm not quite sure how to interpret the synchronising value, and as I don't have any crossfire hardware I can't test any changes properly.
I'm sure how important/useful the latency improvement is, since it is "only" and average of 2mS and a maximum of 4mS, so I haven't got round to investigating this change.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
spinorkit
Posts: 48
Joined: Sun Dec 31, 2017 12:21 am
Country: New Zealand

Re: ERSKYTx (was ersky9x) Questions

Post by spinorkit »

MikeB wrote: Fri Nov 06, 2020 9:58 pm As I understand it, crsfshot is just a method for the crossfire module to report synchronising information to the radio so that latency is reduced. Since the control data is sent to the module every 4mS, this may provide a latency reduction of an average of 2mS.
Does crsfshot provide anything else?

Regarding ELRS, does this use the same protocol as crossfire for setting the power level etc.?
If so, there is a script here: https://github.com/nrw505/ersky9x-crossfire-script that may do the required job.

Mike
Now that I have Arduino style serial debugging on my r9m flashed with ELRS, I thought I might try talking to it with a basic script based on the one you linked to above.
Before I start, I note the ELRS lua script uses functions like
crossfireTelemetryPush(0x2D, {0xEE, 0xEA, 0xFF, 0x01}) and
local command, data = crossfireTelemetryPop()

which I assume map onto the opentx c++ functions

static int luaCrossfireTelemetryPush(lua_State * L)
and
static int luaCrossfireTelemetryPop(lua_State * L).

Do these correspond (more or less) to the ErskyTx basic functions
crossfiresend(sendCommand, sendLength, transmitBuffer)
crossfirereceive(count, command, receiveBuffer)
functions used in that script?

Thanks,
Kit
Last edited by spinorkit on Tue Nov 10, 2020 12:00 pm, edited 1 time in total.
spinorkit
Posts: 48
Joined: Sun Dec 31, 2017 12:21 am
Country: New Zealand

Re: ERSKYTx (was ersky9x) Questions

Post by spinorkit »

spinorkit wrote: Wed Nov 04, 2020 8:36 am
LiM3 wrote: Mon Sep 07, 2020 6:51 pm Nirvana just got crossfire shot protocol support. https://www.rcgroups.com/forums/showthr ... st45357535

Any plans to bring it over to erskytx? I'm using latest test version in 9xr pro + r9m flashed to ExpressLRS 200hz link and crsfshot should improve things.
I am interested in ExpressLRS because I bought a R9M back in 2019 to use with my 9xr pro running ersky9xr.
However I never used it because I live in New Zealand and the license free 868 and 915 bands are narrower than either the EU or FCC ones, making both the R9M and TBS Crossfire illegal, although people use them anyway.
I tested the R9M on 868 MHz with my SDR and it was stomping over an ever-present CDM signal starting around 869 MHz.
In N.Z. you are allowed to radiate up to 2 W (if frequency hopping) between 864 and 868 MHz. So, with ExpressLRS I thought I could configure the hop frequencies and finally get a long range system that wasn't obviously illegal.

So you are running OpenTX on your 9xr pro?
I have never used OpenTx and don't really want to change to it, but I assume erskytx/ersky9xr doesn't support ExpressLRS?
I just checked the New Zealand radio regulations again and they have changed since I last looked. They now seem to match the Australian regs for 915 MHz in that you can radiate up to 1 W EIRP from 915 MHz to 928 MHz.
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

spinorkit wrote: Tue Nov 10, 2020 11:50 am
Now that I have Arduino style serial debugging on my r9m flashed with ELRS, I thought I might try talking to it with a basic script based on the one you linked to above.
Before I start, I note the ELRS lua script uses functions like
crossfireTelemetryPush(0x2D, {0xEE, 0xEA, 0xFF, 0x01}) and
local command, data = crossfireTelemetryPop()

which I assume map onto the opentx c++ functions

static int luaSportTelemetryPush(lua_State * L)
and
static int luaSportTelemetryPop(lua_State * L).

Do these correspond (more or less) to the ErskyTx basic functions
crossfiresend(sendCommand, sendLength, transmitBuffer)
crossfirereceive(count, command, receiveBuffer)
functions used in that script?

Thanks,
Kit
Yes they do the same operation.

A description of the erskyTx script language is here: https://openrcforums.com/forum/viewtopi ... =7&t=10325.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
spinorkit
Posts: 48
Joined: Sun Dec 31, 2017 12:21 am
Country: New Zealand

Re: ERSKYTx (was ersky9x) Questions

Post by spinorkit »

MikeB wrote: Tue Nov 10, 2020 12:00 pm Yes they do the same operation.

A description of the erskyTx script language is here: https://openrcforums.com/forum/viewtopi ... =7&t=10325.

Mike
Thanks Mike, that's great, especially interpreter.exe!
I have a lot to learn yet but looking at the ELRS lua script and the ELRS C++ code, they are definitely using a protocol that has a lot in common with the crossfire protocol for controlling the radio module.
Kit
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

Hi everybody. I have a 9XR PRO with firmware 222 and a QCZEK LRS 2.10 transmitter module only supports SBUS input. Tell me how to output the SBUS signal from the external 9XR pro module? I checked on the OPENTX 2.3.10 firmware there the connection works, but the firmware does not suit me.
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

I'll need to add SBUS as a protocol option. This might take a day or two to do. I see I do have SBUS available on er9x (for the 9X radios), I hadn't realised it wasn't on erskyTx.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

thanks Mike, that's very cool. I spend a lot of time on erskyTx, this is a great firmware. OpenTX is terribly inconvenient for 9XRpro. I looked at the output with an oscillograph, Opentx and erskyTx. May come in handy
1605641478223.jpg
erskyTx
1605641463566.jpg
openTX
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

Do you have the labels on those images the correct way round?

I have an SBUS signal being output. Currently it idles at a high voltage, with the start bit going low. I assume you are looking for inverted serial data, idling at 0V with the start bit going high.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

yes, all signals are relative to ground. The signal in the figure with Open tx is working. If it is impossible to invert the signal programmatically, I can make a transistor inverter, this is not a problem. thanks
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

I've just posted a test version for the 'PRO that supports inverted SBUS protocol on the external module. The signal looks OK on my 'scope, but I can't test it.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

Hi Mike. I tried the firmware. The signal looks like an XJT signal. QCZEK 2.10 radio does not work (. Signal not like SBUS OPENTX
sbus.jpg
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

OK, I've just posted a version that doesn't invert the signal. The 'scope image for openTx is a bit unclear. It is possible your 'scope is not showing the signal fully, it looks like a square wave but it may be that where the signal goes low, there follows high going data that is not showing.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

Great, lrs communication is working.
It looks like my mavlink telemetry disappeared on the 9ХР PRO screen while I figure it out. it's still great, old man 9XR PRO works again, old but not useless.
Thanks Mike
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

Hi Mike. I have telemetry problem on new SBUS firmware for 9XRPRO. When you select the SBUS protocol, telemetry disappears. How can I fix this. I recorded a short video of this happening. https://youtu.be/QFXfywYbkLA
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

Probably failing to get the correct baudrate and/or telemetry protocol. erskyTx tries to work out what to use from the selected control protocol.
Is the telemetry FrSky SPort and still at 57600 baud (as when you use XJT protocol), or has the baudrate changes to 100000 to match the SBUS baudrate?

Please also go to the DEBUG menu (UP LONG, then LEFT about 5 times) and let me know what the 4-digit number is at the bottom right of the screen, when you have SBUS selected.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

I have not changed the speed setting,. On Debug 9/13 screen "TelRxCount" 0000
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

There should be another number the the extreme right of the screen after "TelRxCount 0000", that is the number I would like to know.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

0000 is the last number on the right. To the left, the numbers are constantly running.
1606591802694.jpg
(2.38 MiB) Not downloaded yet
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

I've just posted a new test version. With this, when you select SBUS as the protocol, then it uses the baudrate set in the telemetry menu (COM1) for the telemetry reception. 100000 baud has also bee added to the available baudrates. You probably need either 57600 or 100000 to receive telemetry when sending SBUS.

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
danlaben
Posts: 9
Joined: Tue Nov 17, 2020 4:44 pm
Country: Russian Federation

Re: ERSKYTx (was ersky9x) Questions

Post by danlaben »

Hi Mike. I checked the firmware, telemetry is working. COM1 baud rate "AUTO" or "57600". Thanks Mike, great work. For clarification, this firmware is for 9XrPro and QCZEK LRS 2.10 (SBUS_Telemetry)
AlessB
Posts: 31
Joined: Wed Mar 01, 2017 9:09 am
Country: Ukraine

Re: ERSKYTx (was ersky9x) Questions

Post by AlessB »

Hi Mike. Frsky hub protocol send gps speed in knots value. Possible converted to km/h?
Thanks!
User avatar
MikeB
9x Developer
Posts: 17990
Joined: Tue Dec 27, 2011 1:24 pm
Country: -
Location: Poole, Dorset, UK

Re: ERSKYTx (was ersky9x) Questions

Post by MikeB »

Currently the easiest way to do this is to use a Scaler (in Globals menu). Set the source to the GPS Speed, the multiplier to 1852 and the divisor to 1000. You may give the Scaler a name, and use the Scaler as a telemetry value (e.g. for display and voice output).
(To adjust the multiplier and divisor quickly, hold the MENU button down while editing, the value changes in steps of 20 instead of 1).

Mike
erskyTx/er9x developer
The difficult we do immediately,
The impossible takes a little longer!
AlessB
Posts: 31
Joined: Wed Mar 01, 2017 9:09 am
Country: Ukraine

Re: ERSKYTx (was ersky9x) Questions

Post by AlessB »

Thanks Mike. I try this.

Post Reply

Return to “erskyTx (was ersky9x)”