Sign in to follow this  
GraMcN

Saitek Switch Panel Landing Gear LED’s for MJC8Q400

Recommended Posts

I have been using and am enjoying learning about LINDA since last fall primarily for Aerosoft DHC-6 Twin Otter Extended and PMDG 777.  Setups were done through a combination of FSX, FSUIPC, SPAD, and LINDA.  I recently purchased the MJC8Q400 and things are set up mostly through LINDA and without using SPAD.  My problem is that I only get solid green lights on the Saitek Switch Panel landing gear indicator LED’s.

 

My hardware consists of MS FFB2 Sidewinder, CH Pro Pedals, CH Throttle Quadrant, TrackIr and Saitek Switch Panel with all USB’s connected directly into my computer.

 

Software summary:

Windows 7-64

FSX SP2

MJC8Q400 Pro 1.018

FSUIPC V4.948 registered

SPAD V0.5.1 (not loaded for this aircraft)

LINDA 2.6.7

LINDA module Majestic Dash 8 Q-400 version 2.3

 

I did see a few others with this issue on the forum but do not recall seeing how it was resolved.  I would be grateful for any assistance in getting the LED’s working properly with the MJC8Q400.

 

Best regards,

Graham McNicol

(near CYKZ, Canada)

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

Hi Graham

 

Welcome to the LINDA forum. I assume with your detailed setup description that you have the Saitek Switch Panel switches working with the Q400. This confirms that the LINDA is communicating with the panel. Something I have learned just recently (and am working on finding a fix) is that LINDA does not read the switch status until at least one switch is operated. This causes all the switch positions to be read and actioned.

 

With the Landing Gear lights (3 greens/3 reds) a change was introduced in the Majestic DH8-Q400 module 2.3 to read the landing gear position from the Q400 model and display these with the lights.  (**Note the Q400 does not update the FSUIPC4 offsets itself). Therefore I am surprised they are not working on your system. I have rechecked this morning and my lights are working correctly. Are the lights working correctly with a default aircraft (with retractable landing gear) like the Beechcraft Baron 58.

 

You say you are not using Spad but is the process siapanel.exe running?

Share this post


Link to post
Share on other sites

Hi Scotflieger,

 

Thank you for your welcome and quick reply.

 

Yes, the switches on the Saitek Switch Panel are all working.  I checked the default Beechcraft Baron 58 and the more complex PMDG 777 and both work with LINDA and the Switch Panel with the gear lights showing 3 greens/3 reds.  

 

I am not sure what siapanel.exe is but I ran process explorer throughout today’s test with LINDA alone then together with SPAD-on and it did not appear.  I have never installed any Saitek software.  Would it be useful to provide the contents from the LINDA Console log?  (It did not show any errors in red.)

 

Regarding LINDA not reading the switch status until one switch is operated, I wonder if this is common with these kind of devices?  I have to move a switch on my CH Throttle Quadrant, press the brake axis on the CH Rudder pedals, and twist the joystick (z-axis) used for ground steering to “wake” them up.  But I look at it as part of the pre-flight routine.

 

Best regards,

Graham McNicol

Share this post


Link to post
Share on other sites

Well after much trial and successive errors, I stumbled on a fix that is working for me.

 

I added "MJCD8_CheckGearPos" on the switch repeat in my config-hid.lua file.

The last 4 lines now look like this:

 

D:\1MS FSX\Modules\linda-cfg\aircrafts\Majestic Dash 8 Q-400\config-hid.lua

.

.

.

JSTK["06A30D670"][19]="Other_GearHandle_up"

JSTKrp["06A30D670"][19]="MJCD8_CheckGearPos"

JSTK["06A30D670"][20]="Other_GearHandle_down"

JSTKrp["06A30D670"][20]="MJCD8_CheckGearPos"

 

 

Is this the proper and required setup?

 

Graham McNicol

Share this post


Link to post
Share on other sites

Hi Graham

 

The function MJCD8_CheckGearPos is called automatically at 1Hz (from the Q400 module Timer() function. Its purpose is to check the Q400 landing gear status and relay it to the FSX default landing gear offsets. LINDA can then pick up the standard offsets to control the landing gear greens/reds. There is no need to assign MJCD8_CheckGearPos you listed to any button. Using the OnRepeat function is not a good idea because it will constantly actioning this function call and replicating the automatic reading.

 

One point I have found is that you need to operate one switch on the Switch Panel (and other Saitek panels) before the current status is read by LINDA. This is a fault I have not yet isolated.

Share this post


Link to post
Share on other sites

Hi Scot,

 

Thank you for your explanation.  Since I can get the green/red’s to function manually, does this suggest there is something amiss with the function Timer () not referencing the "MJCD8_CheckGearPos" function properly?  This is what I see immediately below the "function MJCD8_CheckGearPos ()” section in the action.lua file:

 

function Timer ()

    Tcount = Tcount + 1

    --_log('[awg] Tcount = ' .. Tcount)

    -- FD

    MJC_APstate = MJCD8_Read(31281)

 

    if MJC_APstate ~= 0 then

        DspFD(1)

    else

        DspFD(0)

    end

    --------------

 

    MJCD8_VS_Show ()

    MJCD8_ALT_Show ()

    MJCD8_HDG_Show ()

    MJCD8_SPD_Show ()

    MJC_FlightInfo ()

 

    MJCD8_CheckGearPos()

end

 

Does this look correct?

 

Graham McNicol

Share this post


Link to post
Share on other sites

Hi Graham

 

That is the Timer() code I was referring to. If you don't think it is being coded for some reason try using the log function. Take the -- prefix off the log line and copy it to before and after the check gear position call. Change the wording to suit you. The log appears in the Console window. Be careful that it will repeat every second.

Share this post


Link to post
Share on other sites

Hi Graham

 

I was testing the Q400 with my Saitek Switch Panel. The landing gear lights worked as advertised except occasionally a light for one leg (or other) did not extinguish. I recycled the lever and all the lights went out. You mention that you are not using Spad with the Q400. Are you sure that there is no Spad code running?

Share this post


Link to post
Share on other sites

Hello Scot,

 

Yes, I am pretty certain SPAD is not running.  As I understand it, SPAD is started either manually or when the OS starts by checking off the option in SPAD.  I use neither for this aircraft.

 

While preparing to run the _log as per your suggestion, I thought I would setup the "MJCD8_CheckGearPos" function on an empty momentary switch “on repeat” since it had worked with the gear lever as per post #4.  On a check flight, I discovered that after the "MJCD8_CheckGearPos" function was invoked once by this switch, subsequent cycling of the gear resulted in the gear lights working as advertised without further use of this switch.

 

Reassigning the "MJCD8_CheckGearPos" to the rotary switch, which I use for engine start-up (on repeat while engine 2 starts, then released), now achieves the same thing.  Here are the rotary switch assignments in my config-hid.lua file:

 

JSTK["06A30D670"][14]="Engine_Eng2_Off"

JSTK["06A30D670"][15]="Engine_Eng2_Norm"

JSTKrl["06A30D670"][15]="Engine_Eng1_Off"

JSTK["06A30D670"][16]="Select_Eng2_and_start"

JSTKrp["06A30D670"][16]="MJCD8_CheckGearPos"

JSTKrl["06A30D670"][16]="Engine_Select_Neutral"

JSTK["06A30D670"][17]="Engine_Eng1_Norm"

JSTK["06A30D670"][18]="Select_Eng1_and_start"

 

So for now I believe this should work for me.  I think I should be able to get back to flying. :smile:

Thank you for your patience and great guidance.

 

Graham McNicol

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this