Develop

Ticket #1758 (closed defect: fixed)

Opened 16 months ago

Last modified 15 months ago

LX MiniMap pro / Lx Color Vario does not work as expected

Reported by: Winfried Simon Owned by: Turbo
Priority: normal Milestone: XCSoar 6.3
Component: Devices Version: 6.3
Keywords: Device Driver LX Navigation Cc:

Description

Setup
LX Mini Map pro connected to LX Color Vario

Configuration

config3/device/edit

  • Port COM2:
  • Baudrate 38400
  • Bulk baud rate Default
  • Driver LX / Colibri
  • Sync from device On
  • Sync to device On
  • Ignore checksum

What I expect
Every Second:

  • update of V TAS
  • update of Alt. Baro.
  • update of Vario

When I change Mc Cready on LX Color Vario

  • update of XCSoar Mc Cready Infobox

Menu Config3/Devices says

  • LX on COM2: Connected; Baro; Airspeed; Vario

When I change the QNH Setting (Config1, Flight Setup, QNH)

  • LX Color Vario should adopt it and show QNH heigh

What I get
No regular Update of VTAS, Alt. Baro, Vario

When I change Mc Cready on LX Color Vario

  • update of XCSoar Mc Cready os ok

When I change the QNH Setting (Config1, Flight Setup, QNH)

  • LX Color Vario nothing happens

Menu Config3/Devices says

  • LX on COM2: Connected

Menu Config3/Devices/Monitor

  • no manual action: no communication
  • manual change of Mc Cready: LXWP2, LXWP3 sentence

Code Analyses
I took a look at the LK8000 realization from the Lx Naviagion developers and saw, that they initiate the communication every ca. 10 seconds with a PFLX0 Sentence. I think this is missing in XCSoar.

Remark: I wrote an extra driver for XCSoar which work for me. The XCSoar developers told me, that this is not the right way to do it. So I wrote this bug report.

Remark 2: In the XCSoar LX driver there are functions at the external device expected, which the Lx Color Vario do not support. I'm not sure if we get site effects, when we speak to it and asume that it has this functionality (Logger, command mode, declaration of tasks).

thanks

Attachments

in-lxdriver-included.patch (2.4 KB) - added by Winfried Simon 16 months ago.

Change History

comment:1 Changed 16 months ago by Turbo

  • Owner set to Winfried Simon
  • Status changed from new to assigned

I think the LX vario should be able to handle commands that it doesn't support without crashing. If you notice any side-effects please tell us, otherwise the overhead of the duplicate code and separate drivers is not really worth it IMHO.

In the LX flight computers you can configure which sentences the device is sending. Does the vario have the same function or does it have to be configured by the PFLX0 sentence? Please ask LX about this.

For QNH: The PutQNH() function for the LX driver is not implemented. Do you have any protocol documentation on how to set the QNH?

Changed 16 months ago by Winfried Simon

comment:2 Changed 16 months ago by Winfried Simon

"In the LX flight computers you can configure which sentences the device is sending. Does the vario have the same function or does it have to be configured by the PFLX0 sentence? Please ask LX about this."

  • I asked LX, and they told me, that there is no documentation about this.
  • In the LK8000 realization they use the PFLX0 sentence, so we should use this solution.

"For QNH: The PutQNH() function for the LX driver is not implemented. Do you have any protocol documentation on how to set the QNH?"

  • In Mini Map Pro there is no possibility to set the QNH, but a "altitude offset" which is equivalent.
  • Also in the LK8000 realization LX calculate the altitude offset and use a PFLX3 sentence This calculation is a bit complicated and uses its own barometric model. I propose to do this calculation, but usethe given XCSoar barometric model. It's quite simple.

I recognized, that we have to transmit this PFLXO sentence only once, to cause LX Mini Map to repeat the LXWP0 sentence every second. In the LK8000 software, this is repeated every x seconds.

I have done a "minimal invasive" patch, which changes only two files in the Device/ Driver/ LX directory a little bit (Internal.hpp, Settings.cpp). This solution works for me, the patch is attached.

I see the problem, that XCSoar thinks, that the Mini Map device has a logger included. So the user interface shows a "Flight download" button, which does not work. That behavior is, in my opinion, somewhat confusing.

A second drawback of this solution IMHO is, that in case of Mini Map Pro the the LX Device and a FLARM device appears on the same serial interface (LX mentioned that there is inside Min Map pro a embedded controller included, which handles the RS485 communication to the LX peripherals. This controller seems also to combine the data stream of a flarm and the LX peripheral devices). So I fear, that the Flarm download functionality is hidden by the LX driver. But I'm not sure about that.

Another idea is, to write an extra driver, which uses the code base of given LX driver.

comment:3 Changed 16 months ago by Winfried Simon

  • Owner changed from Winfried Simon to Turbo

comment:4 Changed 15 months ago by max

  • Status changed from assigned to closed
  • Resolution set to fixed

528123a4f44eb0ce8f0b8e20767e93a842df2a96

I have splitted the patch into three, and merged all of them.

Note: See TracTickets for help on using tickets.