DSM Telemetry support

More
14 Feb 2015 02:46 #28652 by Indigo
Replied by Indigo on topic DSM Telemetry support
The Telemetry data display includes Altitude and Speed (ground speed) from GPS sensor.

I'm thinking that data from a specialised barometric altimeter should replace GPS Altitude and data from a specialised speed sensor should replace GPS Speed.

Does anyone have any reason why these values should not be overridden by another sensor? If not I will go ahead and update the code to override these 2 values.

Calibrating barometric altimeter
I guess, if GPS Altitude is available then calibrate altimeter from it. But what if no GPS sensor?
Should the initial value read become the "adjustment value" so that the displayed value is always zero initially? So then displayed value is difference from starting value.

Please Log in or Create an account to join the conversation.

More
14 Feb 2015 03:34 #28653 by mwm
Replied by mwm on topic DSM Telemetry support
Why do you want to replace it? Looking through the HH web site, you get two different values from them.

The GPS systems gives you altitude above mean sea level and ground speed. The various specialized sensors give you altitude above ground level and air speed. They aren't the same things, and I can see a reasons for wanting all of them. At the very least, they should both be available for alarms & main page display boxes. Given how much data shows up in a GPS sensor, I can't see how adding a couple more would make much difference on the telemetry display page.

As for barometer calibration - I suspect that depends on the sensor. The Spektrum ones I looked required no user calibration. Are their Tx's doing that for the user, so we need to duplicate it? If so, say do what the Spektrum ones do, which is to record the first reading as ground level. Copying it from the GPS data would convert your barometer altitude from AGL to AMSL, making it a copy of the the GPS data modulo errors. Keeping AGL is almost certainly more useful. If nothing else, changing the behavior of the barometer readout when you add a GPS system seems counterintuitive.

Do not ask me questions via PM. Ask in the forums, where I'll answer if I can.

My remotely piloted vehicle ("drone") is a yacht.

Please Log in or Create an account to join the conversation.

More
14 Feb 2015 04:19 #28654 by Indigo
Replied by Indigo on topic DSM Telemetry support
Thank you, that answers a lot. No special handling required = less work & more play :woohoo:

With so many different Telemetry sensors available and many combinations of sensors, I think each sensor should present its data within a separate frame; with name of sensor as the frames title eg. GPS, GForce, PowerBox, Variometer, etc.

Each frame would have different width x height; and would either be visible or hidden depending on whether or not some telemetry data has been received. Then some smart display logic would need to look at what frames are visible and workout how to best arrange and evenly space them within the bounds of the LCD screen.

On the Devo10/7e they would appear in just one long scrollable list and would look similar to the tx configure page.

Please Log in or Create an account to join the conversation.

More
14 Feb 2015 08:57 #28665 by Indigo
Replied by Indigo on topic DSM Telemetry support
I've just noticed that there is no code to handle a negative GPS Altitude in DSMX protocol. :huh:

Here is the code:
case 0x16: //GPS sensor (always second GPS packet)
  Telemetry.gps.altitude = altitude + bcd_to_u16(packet+2) * 100; //In millimetres (0.1m)
  Telemetry.gps.latitude  =  pkt32_to_coord(packet+4) * (packet[15] & 0x01)? 1: -1; //=N/S
  Telemetry.gps.longitude = (pkt32_to_coord(packet+8) + (packet[15] & 0x04)? 360000000: 0)
                                                      * (packet[15] & 0x02)? 1: -1; //=E/W
  Telemetry.gps.heading = bcd_to_u16(packet+12); //In degrees (1 unit is 0.01 degrees)
  update = update16;
  break;
case 0x17: //GPS sensor (always first GPS packet)
  Telemetry.gps.velocity = bcd_to_u16(packet+2) * 5556 / 108; //In m/s * 1000
  altitude = bcd_to_u8(packet[9]) * 1000000; //In 1000 meters * 1000 (8Bit decimal)
  update = update17;
  break;

The sign for Latitude and sign for Longitude is stored in packet[15], would the sign for Altitude also be stored in packet[15]??? I'm guessing it will be in the 4th bit :unsure:

Can someone please find the answer for me?

Thank you.

Please Log in or Create an account to join the conversation.

More
15 Feb 2015 05:46 #28704 by vlad_vy
Replied by vlad_vy on topic DSM Telemetry support
I can't find how the altitude sign is stored at GPS packets. We need DX8 *.spm log file with GPS negative altitude to find that.

Please Log in or Create an account to join the conversation.

More
15 Feb 2015 07:47 #28709 by Indigo
Replied by Indigo on topic DSM Telemetry support
The 3rd post in this thread: www.rcgroups.com/forums/showthread.php?t=1725173

shows some VB code with AltitudeSign coming from MSbit of 2nd altitude number and a valid range of +/- 1000 m/s. I'm inclined to believe it because I've found that other signed numbers in DSM Telemetry use that same bit for the sign.

Please Log in or Create an account to join the conversation.

More
15 Feb 2015 08:32 - 15 Feb 2015 08:42 #28710 by vlad_vy
Replied by vlad_vy on topic DSM Telemetry support
I don't see inside VB code any parsing for GPS sensor. GPS data are decimal(0-9), not signed/unsigned integer.

9999 = 1001 1001 1001 1001

SPMA9575 Aircraft Telemetry Altitude Sensor
Measures: -10,000 – 10,000 ft with 3 ft resolution (1 meter)

valid range of +/- 3276.7m
Last edit: 15 Feb 2015 08:42 by vlad_vy.

Please Log in or Create an account to join the conversation.

More
15 Feb 2015 10:30 - 15 Feb 2015 10:35 #28711 by Indigo
Replied by Indigo on topic DSM Telemetry support
Yes, you're right, there is no bcd encoding so that's not the gps altitude. Thanks.

Is this issue you reported still current? Should I remove second part of patch?
Devo 7e - voltage telemetry unstable
Last edit: 15 Feb 2015 10:35 by Indigo.

Please Log in or Create an account to join the conversation.

More
15 Feb 2015 10:55 #28713 by vlad_vy
Replied by vlad_vy on topic DSM Telemetry support
For my opinion it has place. My current custom build (PB build 6dd95db) has second part of this patch removed, and it works fine.

Please Log in or Create an account to join the conversation.

More
04 Mar 2015 09:14 #29318 by Indigo
Replied by Indigo on topic DSM Telemetry support

cmpang wrote: I confirm that Indigo's fix ON DSM2/X for RF lock out under Telemetry ON works great.

Nevertheless, seems similar RF lock out on DEVO protocol has not been addressed so far.

cmPang


Thank you cmPang. I have now applied the same change to DEVO protocol. Can some Devo people please test this and report back. Thanks ;)
bitbucket.org/Indigo1/deviation/downloads

And I'll soon upload a second version in case this first one doesn't work at all.

Please Log in or Create an account to join the conversation.

More
04 Mar 2015 12:59 - 04 Mar 2015 13:40 #29320 by linux-user
Replied by linux-user on topic DSM Telemetry support

Indigo wrote: Thank you cmPang. I have now applied the same change to DEVO protocol. Can some Devo people please test this and report back. Thanks ;)
bitbucket.org/Indigo1/deviation/downloads

And I'll soon upload a second version in case this first one doesn't work at all.


Hi Indigo,

I've just done a quick test of your version "Devo10-devo2-dsm-telemetry.zip" 01389e8 on Devo10.
I can confirm that #533 is fixed.
I want to do more tests especially about #525 , but that will take some time, so please be patient. See 21247

Update crash:
- load new model
- goto "1. model menu" - "2. Telemetry config"
=> reboot

Greetings
Manfred
Last edit: 04 Mar 2015 13:40 by linux-user.

Please Log in or Create an account to join the conversation.

More
04 Mar 2015 14:31 #29321 by Indigo
Replied by Indigo on topic DSM Telemetry support
Hi, thanks for testing this. :cheer:

linux-user wrote: Update crash:
- load new model
- goto "1. model menu" - "2. Telemetry config"
=> reboot

I works fine for me, so I'm thinking it must be something in your model file.
Being able to reproduce bugs make them much easier to find.

Can you please post the model file?

Please Log in or Create an account to join the conversation.

More
04 Mar 2015 15:03 - 04 Mar 2015 15:23 #29322 by linux-user
Replied by linux-user on topic DSM Telemetry support

Indigo wrote: Hi, thanks for testing this. :cheer:

linux-user wrote: Update crash:
- load new model
- goto "1. model menu" - "2. Telemetry config"
=> reboot

I works fine for me, so I'm thinking it must be something in your model file.
Being able to reproduce bugs make them much easier to find.

Can you please post the model file?


Uhh, I am afraid that won't help, as it happens with the files in your *.zip.

I have an Idea:
I am using small fonts from sbstnp (/media/config.ini)

Update:
no crash with standard (big) font.

Greetings
Manfred
Last edit: 04 Mar 2015 15:23 by linux-user. Reason: added link to sbstnp

Please Log in or Create an account to join the conversation.

More
04 Mar 2015 20:01 - 04 Mar 2015 20:05 #29333 by linux-user
Replied by linux-user on topic DSM Telemetry support
Hi,

I've found some minor issues with Devo telemetry so far.
1.) datalog doesn't seem to work anymore, which is a pity as most of my former tests rely on it. (at least datalog2csv.py can't read it)
Very minor:
2.) I've tested telemetry with MiniCP which only supports Temp1 and Volt2.
In telemetry monitor (on page1) all the other values are shown as 0.
Shouldn't the non available values be displayed inverted as is the case with the GPS-values (on page2)?
Last edit: 04 Mar 2015 20:05 by linux-user.

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 01:40 #29339 by Indigo
Replied by Indigo on topic DSM Telemetry support
A big thank you, they were good finds.

A new version is now available for download.

All issues fixed (I hope) :whistle:

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 09:14 - 05 Mar 2015 09:27 #29345 by linux-user
Replied by linux-user on topic DSM Telemetry support
Hi,
I've only updated the dfu-file (version cedb50d). Hope this is OK.

First the good news:
The crash is fixed.

And now the bad news:
1.) previous-version (01389e8): I left the TX running over night without bound RX.
- plugged in heli this mornig, but didn't bind. I think it should with fixed-ID.
- needed to power-cycle TX to bind RX. :-(

2.) current-version (cedb50d) Telemetry monitor:
- Temp2, Temp3, Temp4 are inverted as is expected - good.
- Volt1, Volt3, RPM1, RPM2 still showed "0", although these aren't supported by the RX.
- even worse: one time I saw random numbers of (I think) all values.

3.) datalog still isn't working for me.
Could it be, this isn't working any more since a long time?
Last edit: 05 Mar 2015 09:27 by linux-user.

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 11:12 #29347 by Indigo
Replied by Indigo on topic DSM Telemetry support
Updating the dfu-file only is fine.

1.) Is this a new problem? I don't think my change would effect binding in any way.

2.) That's good, I only upgraded how temp was handled. Volt and RPM appears to be 16bit values but only 8 bit is read. It looks wrong but it must be producing correct values, so I left it. Random numbers of all values - I think I know the cause of that.

3.) The datalog I looked at all changes and found a mistake with one, fixed it and hoped that would be fix the datalog not working. Ok, I need to look into further.

It's getting late here, so I'll leave this until tomorrow.

Thanks for testing and providing feedback. :)

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 11:48 #29348 by linux-user
Replied by linux-user on topic DSM Telemetry support

linux-user wrote: 1.) previous-version (01389e8): I left the TX running over night without bound RX.
- plugged in heli this mornig, but didn't bind. I think it should with fixed-ID.
- needed to power-cycle TX to bind RX. :-(

Indigo wrote: 1.) Is this a new problem? I don't think my change would effect binding in any way.


Hi,
well, I am afraid I can't reproduce this, and I don't think that you have introduced this issue. This may be related to #525
It is more, that I hoped that your changes have prevented this "lock out".

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 14:17 - 05 Mar 2015 14:27 #29352 by Indigo
Replied by Indigo on topic DSM Telemetry support
I have uploaded a new version

I have added to Devo protocol the same change I made to DSM protocol which I think will fix #525.

This release (dfu-file only) is latest nightly merged with latest telemetry.
Last edit: 05 Mar 2015 14:27 by Indigo.

Please Log in or Create an account to join the conversation.

More
05 Mar 2015 14:37 #29353 by Indigo
Replied by Indigo on topic DSM Telemetry support
I have uploaded a new version which I think will fix #525.

This release (dfu-file only) is latest nightly merged with latest telemetry.

Please Log in or Create an account to join the conversation.

Time to create page: 0.090 seconds
Powered by Kunena Forum