EdgeTX / edgetx

EdgeTX is the cutting edge open source firmware for your R/C radio
https://edgetx.org
GNU General Public License v2.0
1.62k stars 340 forks source link

Nirvana NV14 Jittery RC signal #922

Open fpvdoc opened 3 years ago

fpvdoc commented 3 years ago

Describe the bug On the NV14 I found the rc signal to be strange/jittery on 150/250/500Hz. ADC filter is switched off. Radio is set to 400k baud rate just as an x9d as a reference. The x9d shows the same behaviour at 500Hz but is free of jitter at <=250Hz. This is with the HM 2.4 TX module and an EP2 receiver.

To Reproduce Set the external module to the desired packet rate. Set the debug mode to rc_smoothing_rate and create a log for review.

Expected behavior A jittery free signal at <=250Hz just like in the x9d. 500Hz would be appreciated though, which is working on OTX/x9d as far as i remember. I can flash OTX to my x9d to validate though.

Screenshots 250_vs_500_x9d

250_vs_500_nv14

logs.zip

General information x9d: 2.4.0 (09a65807) from 2021-07-22 19:09:33 NV14: 2.6.0 (54fc59a9) from 2021-10-13 3:10:35

fpvdoc commented 3 years ago

After some further testing I figured another issue (if the jitter even is one at all. Not sure about that anymore since it's beyond my knowledge. On the Nirvana there is a lot of Packetloss when set to 500Hz. There is none on the x9d. Just review the logfiles to figure.

raphaelcoeffic commented 3 years ago

After some further testing I figured another issue (if the jitter even is one at all. Not sure about that anymore since it's beyond my knowledge. On the Nirvana there is a lot of Packetloss when set to 500Hz. There is none on the x9d. Just review the logfiles to figure.

You mean ELRS reporting a number of packets lower than 500/s?

fpvdoc commented 3 years ago

No,Lua is reporting 0:500 but blackbox explorer rc_command traces showing Packetloss with packets being received regulary at only 250Hz. Find the logfiles I posted and watch rc_command traces closely.

stefan73 commented 2 years ago

I guess the reason for this behaviour may be a HW flaw. For reference pls see the the HW modding document for the Nirvana attached below. This has caused some issued on Crossfire communication and kicks in on higher data rates.

Out of the document: The radio has a pull-up resistor on the S.PORT line. This pull-up is mounted close to the inverter chip right before the UART RX input to the main processor. The pull-up puts the S.PORT line to high on idle. Thus the initial frame of a communication may be incorrectly read as the necessary low to high transition is missing.

https://docs.google.com/document/d/1SRegkGT0wnFcTbT9YFNwIuluz5aupOivjGYq4cDiHjE

fpvdoc commented 2 years ago

Do we have to resolder that resistor or is it a Hardware flaw in general with that radio?

stefan73 commented 2 years ago

It is a design flaw. The resistor needs to be removed. Have a closer look in the linked document.

fpvdoc commented 2 years ago

I know the document. My NV14 is fully modded.

Neukom720 commented 2 years ago

@fpvdoc hey man is this still the case? loving edgetx 2.6 rc3 on my nirvana now with lua trim control :) wanted to use 500hz but will stick to 250hz if there are still problems? pull up resistor is removed on mine as well. Havn't done power mods on mine yet because mine is a later model that has 6+ volts to the jr bay and with expresslrs I usually run 10mw 2.4ghz when flying micros and most of my 5in+ quads are on elrs900mhz 200hz and NEVER need more than 100mw(usually 25mw even 6 miles out is plenty) so power mods not needed and batteries actually last unlike crossfire which locked at 150hz had no range and had to run a super high power levels which was ridiculous!

Neukom720 commented 2 years ago

@fpvdoc will mega baud fix this? whats the max the NV14 can do? Im trying 3.75m (million) now but can NV14 handle the 5.25m? Will this help with this issue? Any thoughts guys?

fpvdoc commented 2 years ago

Megabaud won't change a thing regarding 500Hz jitter. I wouldn't use 500Hz at the moment. 3.75 is the max I can do.

stefan73 commented 2 years ago

With my Ghost Module, I can activate the max baud setting offered by the FW (5.25M) and it works. Frame locking seems stable. With Race500 the module reports 2000us frame interval on its display, telemetry reports the same. My R9M@ELRS cannot do more than 400k serial communication. So here I amlimited by the radio. Frames are stable at 400k. I guess there are no jitters if you follow the HW mod and remove that resistor.

fpvdoc commented 2 years ago

I'm on ELRS. >3.75 and the LUA isn't working anymore.

yds commented 2 years ago

@fpvdoc ELRS >=3.75 does not work on my unmodded Nirvana either. 1.87M does work.. rule of thumb: once ELRS.lua stops working you gotta step down the megabaud till ELRS.lua starts working once again.. that's how I do it..

fpvdoc commented 2 years ago

Sure thing. I mixed the MB on the NV14. 1.87 is maximum.

Neukom720 commented 2 years ago

Had to bump mine down to 921k baud because at 1.87m baud I left my lua open with quad connected and after a 5-10 minutes, arming once and a while, I woke the screen and I was still running at 500hz but my elrs 2.0 lua was reporting 250 with 0 lost so for some reason it will drop back to running at 250hz on the radio side even though module tx to receiver is still at 500hz which is weird. Anyone else scene this at 1.87m baud? I suggest try it and leave the lua open to see if something similar happens. Let me know. Any idea why?

pfeerick commented 1 year ago

It may be worth reviewing this again with v2.8.1, as CRSF at higher baud rates is a lot more stable.