-
Notifications
You must be signed in to change notification settings - Fork 216
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Altitude is reported incorrectly via FANET protocol #64
Comments
Please, provide status screenshots and serial output capture from both SoftRF units (close to each other, good satellites reception and at the same altitude). |
Okay, there you go: device 1: device 2: 8 satellites reception, <1m near each other. Here a picture of the skytraxx device seeing the 56e20 device, as well as it showing it's own altitude: |
Thanks! I am currently in travel and will not be able to validate your report on the hardware I have
onto
|
I also am on holidays, with limited internet access (bandwidth), but will try to do so!
Besides that, thanks for the nice software :).
Am 2. September 2019 12:55:24 MESZ schrieb Linar Yusupov <notifications@github.com>:
…Thanks!
I am currently in travel and will not be able to validate your report
on the hardware I have
until at least end of this week (or begin of next week) .
If you have enough skills to build the firmware from source code and
flash the binary into your unit -
I would suggest you to alter line 322 in
[Protocol_FANET.cpp](https://github.com/lyusupov/SoftRF/blob/master/software/firmware/source/SoftRF/Protocol_FANET.cpp)
from:
```
pkt->altitude_msb = (altitude & 0x700) >> 16;
```
onto
```
pkt->altitude_msb = (altitude & 0x700) >> 8;
```
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
#64 (comment)
--
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
|
Tried it, but cannot get it to link properly. This is the error message I get:
I used the |
|
Okay, that fixed it. Thank you :)! I just uploaded the suggested change to one of the devices, and it worked. I will create a PR for the change and attach it here. |
Height has been incorrectly reported via FANET protocol. Suggested change came from lyusupov. Co-authored-by: lyusupov
If this was sufficient - there is no need for a PR. Be aware that your C56E20 unit is having non-genuine NEO GPS module been soldered on the board.
|
It was sufficient - PR was already there. You can merge it or decline, both fine for me as long as the fix goes into the product :). Thanks for the hint - I already was curious why the output was different for both devices. Fun fact: The device I ordered directly from china is the one with the genuine chip, the other one (bought on the airwhere homepage) had the non-genuine GPS chip. With |
I saw no reports on 'fake NEO' issue with T-Beams since then. |
Altitude has been incorrectly reported via FANET protocol. Suggested change came from lyusupov. Co-authored-by: lyusupov
Your project - your rules ;). I also changed altitude calulation above 2047m (confirmed wrong yesterday). I'd add unit tests (e.g. property-based tests to verify that fanet_decode(fanet_encode(x)) == x (circa) for all sensible x), but could not find a spot to add some. Same here - you may use it, or discard it. In the end I'm not interested in the "fame", I just want it fixed :). |
The issue has been reproduced. Resolution: confirmed |
Fix has been issued in this commit. |
Confirm that the commit fixes the issue, both for altitudes <2047m and >=2047m. |
Thank you for the confirmation! If the issue is no longer pertinent for you - please, close it. |
First: I have seen #45 and that it was closed (inalid template usage), but I think they are related.
Hardware
Firmware version
1.0-rc6 ESP32
Firmware settings
Describe the bug (or ask a question): BUG REPORT
GPS height reported by the device seems right, but height reported via FANET protocol seems to be wrong (off by about 780m). I used 2 devices (both Prime Mark 2, from different resellers), directly besides each other (see picture above). XCSoar shows the height correctly (using GPS from SoftRF, disabling internal GPS) as 811m (see screenshot:)
In FLARM radar however, the height of the other device is shown incorrectly (as -777m relative):
This view shows absolute heights:
I also had a colleague with a Skytraxx 3.0 check my reported heights, and they are reported as the same (around 15-40m) for him, from both devices. I can see his height correctly in XCSoar via SoftRF. (no photos here, if you need them I can take them later). I tried exchanging the devices (connecting to the other Prime Mark II), which did not change the situation.
See this NMEA log (captured via serial port from the computer):
capture.txt
You can see that the reported heights are indeed relative negative around 780m as in this line:
$PFLAA,0,-1,-5,-780,3,07A370!FAN_07A370,330,,0,0.0,7*4D
I am unsure how to capture GDL90, but if you need it I can provide that as well.
Since the heights are also reported incorrectly on a device that is not running SoftRF firmware, I think it must be somewhere on the sending side, not the receiving side, but this is a pure guess.
To Reproduce
Set up two devices besides each other, observe reported heights with FANET protocol via NMEA. The heights are reported incorrectly.
Expected behavior
The heights are reported correctly (up to GPS accuracy +-10-20m).
The text was updated successfully, but these errors were encountered: