-ralf- wrote:Yes, works perfekt ..... or better
Bind the X8R as second receiver ..... and you can use channel 9 to 16 direkt at
the receiver and channel 1 to 8 via s.bus.
Has anyone done this successfully with 16 channels of SBUS data.
I have a Taranis setup to send 16 channels of data to an X8R receiver configured to output channels 9-16 on the servo connectors. The plan was to use the first 8 channels with MultiWii and the second 8 channels as normal servo outputs.
When this is done, a very strange thing happens. The channel display in the GUI changes, it appears that the first three channels are no longer used and everything is moved by 3 channels. It appears that for some reason the channels are being remapped.
The TX is setup with the following channel order:
1 - Throttle
2 - Aileron
3 - Elevator
4 - Rudder
5 - AUX1
6 - AUX2
7 - AUX3
8 - AUX4
The only place I see any channel mapping is in rx.cpp around line 31. The mapping does not match what my TX is sending, but in 8 channel mode everything works fine. I have verified my channel order with a logic analyzer.
I have a logic analyzer connected to the SBUS output of the receiver and the only thing different between 8 channel and 16 channel operation is that the last 8 channels now contain valid data instead of all zeros. I could not find anyplace in MultiWii where the data fror channels 9-16 was actually used, but just in case I modified the the code in rx.cpp to force the last 8 channels to be 988 (default SBUS offset). That did not alter the problem.
Something is going on with MultiWii to force this funny operation but I have no idea what.
This same thing happens on 2 different systems using the same model transmitter, receiver and Flight Controller.
The flight controller being used is ATMega 2560 based and can be seen here:
http://witespyquad.gostorego.com/flight-controllers/multiwii-pro-ez3-0-black-flight-controller-w-gps-option-276.htmlI have attached 3 screen shots that will help display the problem. Ignore the difference between the GPS and the MAG settings. I cleared the EEPROM just in case some data from old versions of the firmware left some junk. I have not calibrated the MAG since the clear (too many cables and scope probes connected to rotate the Quad on all three axis). I have the same problem when the MAG is calibrated.
The first screen shot shows the output of the GUI with only the RX and FC powered on. This allows us to to see the default setting from the FC when no SBUS data is present.
- TX Off, all modes cleared in MultiWii
This screen shot shows the output of the GUI after the TX has been turned on and the RX is sending SBUS data. All outputs are correct and follow the stick movements as they should.
- TX Powered On
This screen shows what happens once a mode has been selected. In this case I forced Angle mode. The mode selected does not matter, almost anything that is selected will cause the problem. Note that the first 3 channels have been forced to 1000. The throttle is now on the YAW channel, Aileron on AUX 1, Elevator on AUX2 and Rudder on AUX3. Also note that the values are not correct for AUX1, AUX2 & AUX 3, they should be around 1500 but they are not. The values will change as the sticks are moved but do not have the full range of travel.
When the TX is set to only send 8 channels, everything is back to normal.
- TX On, Angle Mode Forced
Any thoughts?
John
UPDATETaranis will allow any number of channels up to 16. I found that all values work except for 15 and 16. The unused channels will be set to 0 (by the X8R SBUS generator) and then have the SBUS_MID_OFFSET value added (1006 in my case) before being placed into rcValue[chan]. Still not clear to me why a value > 1006 in rcValue[14] and/or rcValue[15] breaks things.
No longer a big issue as only 9 channels are currently need, but it makes you wonder.