April 15, 20206 yr Hello, Before all things, I am not an expert with the language of Shakespeare I prefer that of Molière, so I go to google translate every time so my apologies. Here's my problem: I have been using FSX SP2 for a long time and wanting to improve my user experience I bought a Logitech Multi-Panel. Very quickly I realized that to go further in its use, it was necessary to use third-party software like LINDA. Today I have 2 major problems and I cannot find the solution on the Web. First of all I have a curious phenomenon on the display when I select the altitude and more than a long complicated speech I put a video that will show the concern https://youtu.be/LMon1DjS0Kg My second concern comes from the assignment of the keys themselves. For example for the AP key I program the AP MASTER function, but when I test it it does not work, on the console I see the listing below (filtering has been performed): 819796 *** EVENT: Cntrl= 65580 (0x0001002c), Param= 0 (0x00000000) AP_MASTER 819796 *** EVENT: Cntrl= 65580 (0x0001002c), Param= 0 (0x00000000) AP_MASTER 819937 LUA.0: Local: value = PR:06A30D060:8 819937 LUA.0: Local: value = PR:06A30D060:8 819953 LUA.0: Local: s = [EVNT] Execute Command = "PR:06A30D060:8" 820000 LUA.0: Local: jid = 06A30D060 820000 LUA.0: Local: btn = 8 820015 LUA.0: Local: s = [EVNT] OnPress Button detected PR:06A30D060:8 ++++++++ 820046 LUA.0: Local: s = [hHID] Checking Saitek button press 06A30D060 820062 LUA.0: Local: vid = 06A3 820062 LUA.0: Local: pid = 0D06 820078 LUA.0: Local: s = [hHID] Checking Saitek vid/pid 06A3/0D06 820093 LUA.0: Local: s = 1699 820093 LUA.0: Local: ret = 820109 LUA.0: Local: ret = 6A3 820109 LUA.0: Local: ret = 06A3 820125 LUA.0: Local: s = [COMM] HexToStr 06A3 820140 LUA.0: Local: s = 1699 820140 LUA.0: Local: s = 3333 820156 LUA.0: Local: ret = 820156 LUA.0: Local: ret = D05 820171 LUA.0: Local: ret = 0D05 820187 LUA.0: Local: s = [COMM] HexToStr 0D05 820187 LUA.0: Local: s = 3333 820203 LUA.0: Local: s = 3334 820203 LUA.0: Local: ret = 820218 LUA.0: Local: ret = D06 820218 LUA.0: Local: ret = 0D06 820234 LUA.0: Local: s = [COMM] HexToStr 0D06 820250 LUA.0: Local: s = 3334 820250 LUA.0: Local: s = [EVNT] Ignore Radio button 0D06/8 820390 LUA.0: Local: value = I tried uninstalling / reinstalling LINDA and the Multi Panel without success If you have an idea I'm interested because I'm a bit lost Thanks in advance for your help Edited April 15, 20206 yr by Obbiwan22
April 15, 20206 yr The video shows that you may be running 2 different software programs that are interfering with each other. The Multi-panel also appears very new. You need to uninstall the Logitech/Saitek software if you want LINDA to control the panel. Alternatively, you can disable LINDA control of the panel by unticking the enable checkbox in Setup Joysticks. If you still have problems please follow the Fault Diagnosis Procedure and email be the logs and confit-hid.lua files Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
April 15, 20206 yr Author despite a very slight improvement, it still does not work properly, so I just sent a message with the Fault Diagnosis Procedure thanks again
April 16, 20206 yr Author After an email exchange with Andrew, it turns out that the key assignments were wrong in the config-hid.lua file Andrew communicated to me an example of this file which allowed me to solve all my problem of key assignments which works very well on the Beechcraft Baron 58 For the autopilot key for example: Before: - ## Saitek Multi Panel ## (06A30D060) ## {NoSerNum} ############ JSTK ["06A30D060"] [8] = "FSX: _AP_MASTER: 0" JSTK["06A30D060"][9]="FSX:_AP_HDG_HOLD:0" JSTK["06A30D060"][10]="FSX:_AP_NAV1_HOLD:0" JSTK["06A30D060"][11]="FSX:_AP_MACH_HOLD:0" Andrew's solution that works JSTK ["06A30D060"] [8] = "Autopilot_MASTER_toggle" JSTK["06A30D060"][9]="Autopilot_HDG_hold" JSTK["06A30D060"][10]="Autopilot_NAV_hold" JSTK["06A30D060"][11]="Autopilot_AIRSPEED_hold" ...... Regarding point number 1, the removal of all LOGITECH / SAITEK software has enabled the switching from one value to another. But as the video below shows, the wrong values are not displayed. There is a scaling problem https://youtu.be/3LDAJxFkB6c The problem therefore remains intact for this subject
April 16, 20206 yr I will need to take a look at the scaling issue. I am working on the P3Dv5 fix at the moment so there will be a delay. Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
April 16, 20206 yr Author I am ready to do all the tests that allow to find a solution and it can help the community. It will be perfect. I think of a theory without having formal proof of it. when I look at the value in feet and convert it into meters, I realize that I am at each loan of the truth example: 1000 feet -> 304 meter displayed on the multi panel 300 2000 feet -> 609.6 meter displayed on the multi panel 610 3000 feet -> 914.4 meter displayed on the multi panel 910 4000 feet -> 1219.2 meter displayed on the multi panel 1220 if we take into account the rounding it can be an explanation, but I'm not sure Thanks for your help
April 21, 20206 yr Author The new flight simulator 2020 will be released at the end of the year, so I'm not interested in P3D V5, so I have to continue to dig my little problem. Since obviously this is a variable problem between FSUIPC and LINDA, I used FS-INTERROGATE2std to find out the content of the variables. The variable concerned is 0x07D4 for an altitude displayed at 1000 in the cockpit and 300 on the Saitek I get the value 19975372 in buffer 1. If I divide it by 65356 (figure indicated in the FSUIPC SDK), I get 304.7999877929688 or about the value displayed on the Saitek. When I look at the getALTValue () function in LINDA's common.lua file, I notice that there is the following condition: if P3D == 1 or A2A == 1 then alt = alt * 3.2808399 end I therefore take it back to my account and I multiply 304.7999877929688 by 3.2808399 I get 999.9999614706848 or after rounding 1000 as the display in the cockpit. Is my reasoning correct? Edited April 21, 20206 yr by Obbiwan22
April 21, 20206 yr I understand the problem. You will need to wait a little longer. I am still working on P3Dv5 testing and improvements. Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
April 21, 20206 yr Author my problem is not under P3D V4 or V5 but under FSX Thank you again for your help
April 22, 20206 yr Author I'm continuing my research on my little problem and I must admit that I'm a bit new to this type of programming So I check the value of offset 07D4 directly in the Linda console and I use the plot to apply the calculations to it: 07D4 :UD :DEC : *1/65536*3.2808399 In the console I now have 641875 LUA.0: LINDA:: Watching new offset: 07D4:UD:DEC:*1/65536*3.2808399 = 19975372 653157 LUA.0: LINDA:: [EVNT] Execute Command = "PR:06A30D060:7" 653188 LUA.0: LINDA:: [EVNT] OnPress Button detected PR:06A30D060:7 ++++++++ 653204 LUA.0: LINDA:: [hHID] Checking Saitek button press 06A30D060 653204 LUA.0: LINDA:: [hHID] Checking Saitek vid/pid 06A3/0D06 653204 LUA.0: LINDA:: [COMM] HexToStr 06A3 653204 LUA.0: LINDA:: [COMM] HexToStr 0D05 653219 LUA.0: LINDA:: [COMM] HexToStr 0D06 653219 LUA.0: LINDA:: [EVNT] Ignore Radio button 0D06/7 653329 LUA.0: LINDA:: [O] Offset: UD 0x07D4 = 700 (13982761*1/65536*3.2808399) So my reasoning is good since it conforms to the display in the cockpit Starting from the same idea as Kama2004 I define a new getALTValue () variable in the user.lua file function getALTValue () local alt alt = round(ipc.readUD((0x07D4) / 65536)* 3.2808399) _loggg('[SAITEK] Multi-Panel Alt value = '.. alt) return alt end I cannot now control the value of alt, I do not have a display in the console _loggg ('[SAITEK] Multi-Panel Alt value =' .. alt) does not work and the display on the saitek is not edit You can help me thanks again Edited April 22, 20206 yr by Obbiwan22
April 22, 20206 yr Do you have the Saitek Panels checkbox ticked in LINDA Setup? Try changing this to see if it alters the display. Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
April 22, 20206 yr With the checkbox ticked, it means that all input and output is hard coded in the GUI (Linda.exe). There is nothing you will be able to do in LUA to change the output. I will take a look when I can get to it. By untickIng the box the LUA is used. Although it is slower you can gain control of the output. I will need to check to advise were this code can be found. For the moment look at lib-Saitek.lua in /Linda/libs. Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
April 23, 20206 yr Author Hello, The last POST allowed me to move forward significantly So I unchecked the checkbox of the Saitek panel, which allowed me to see in the console the messages in _loggg and therefore to control my modifications So I take my problem from the beginning (the user.lua file is empty) in order to make a fair observation. I go to the common.lua file and line 5306 --_ loggg ('[awg] getALTvalue =' .. tostring (alt)) remove the - - The console now displays [awg] getALTvalue = 305 for an actual display of 1000 My theory is validated, the treatment is wrong I now put these lines of code in the user.lua file function getALTValue () local alt alt = round (ipc.readUD (0x07D4) / 65536) alt = round (round (alt * 3.2808399) / 10) * 10 _loggg ('[SAITEK] Multi-Panel Alt value =' .. tostring (alt)) return alt end I try again and I notice a curious operation as soon as we want to adjust the altitude, I go from 300 to 10200 or 65300 to fall back to 30 randomly As a reminder in my config-hid.lua file (following Andrew's good advice), I add: JSTK ["06A30D060"] [6] = "SAI_MULTI_increase_value" JSTK ["06A30D060"] [7] = "SAI_MULTI_decrease_value" So I decide to delete these lines in my configuration. I now find myself with the display of the correct values on the Saitek. And normal and progressive operation I only have a refreshing problem on the VS Do you think that these modifications can be incorporated into the basic version? Friendly
April 23, 20206 yr Well done. The SAI_MULTI_increase_value/ SAI_MULTI_decrease functions were designed (by someone with a bigger brain than me) to work with all the ALT/VS/.... knob positions. These are still needed in LUA to make the Multi Panel fully functional. You should look at these functions to find that part which change the Altitude value and insert your modified getALTValue() there or where the display instruction is. As a tip, normal airborne real time software keeps the input and output functions separate. The reason is that the no input must be missed but output can be much slower. Edited April 24, 20206 yr by ScotFlieger Andrew Gransden Scotland, UK LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew
Archived
This topic is now archived and is closed to further replies.