Connie Mixture LVars

Post any technical issues here. This forum gets priority from our staff.
new reply
DCAPilot
Airman
Posts: 43
Joined: 04 Jul 2010, 10:18

Connie Mixture LVars

Post by DCAPilot »

I'm trying to set up my CH TQ with the Connie using FSUIPC with controllers disabled and it all works except for the mixtures. I'm using four levers on the TQ for the mixture levers and I'm trying to figure out what LVars are needed for this. I want to move the TQ lever and have the lever on the FE panel move with it. If I need to script it that's fine as long as I can find the variables to use.

For testing I'm only using the first engine so I set the TQ lever axis to Send direct to FSUIPC calibration and the function to Mixture 1. I wrote a Lua script that logs the variables I'm working with

I've dumped the LVar list for the Connie with FSUIPC and have found the following.

1. L:MixtureRatioLever1 goes from 0 to 100 with 0 being Cut-off, 50 being cruise lean and 100 being Auto-rich. I left the lever in Auto Rich which is a value of 100 and If I write to this LVar it changes (I read it, write it, read it again and display all to the log) but the lever never moves and the next pass it's back to the original value of 100

2. L:Mixture1Control seems to have no effect at all. If I log this and move the lever the value stays the same.

3. L1MC changes from 0 to 1 and writing it doesn't change the lever.

I did find that if I enable controllers and assign the axis in P3D the mixture levers respond to the TQ levers. That is an option in which I can delete all axes assignments in P3D but I would like to get FSUIPC controlling the mixtures with the controls disabled.

Thanks.

Gypsy Baron
A2A Master Mechanic
Posts: 3396
Joined: 02 Aug 2008, 17:04
Location: San Francisco

Re: Connie Mixture LVars

Post by Gypsy Baron »

The L049 mixtures are set to one of three states. Cutoff (0), Auto Lean(1), Auto Rich(3)

Here are the L:Vars as declared in my L049.MCRO file:

38=L:MixtureRatioLever1Position=SET
39=L:MixtureRatioLever2Position=SET
40=L:MixtureRatioLever3Position=SET
41=L:MixtureRatioLever4Position=SET

I have a Saitek Pro yoke with 2 throttle quadrants with 3 double throw switches on each quad.

I looked through my FSUIPC4.ini file and see that I simply used 4 switches to set either Cutoff or
Auto Lean for each engine. I used the 5th switch to set ALL engines to either Auto Lean or Auto Rich.

I use a unique combination of conditional assignments for my quadrant switches with 5 being
conditionally assigned based upon a value in User Defined Offset 0x66C0. The value in that
location is incremented or decremented by switch number 6 on the quads. Think of it as
a 'mode' switch. For the Coni the value in 0x66C0 can range between 0 and 11, thus I have
essentially 12 'modes', 12 different assignments for each of the other 5 switches. Remember
that these are double throw switches thus the 5 switches allow for 10 assignments per 'mode'.

To add further flexibility if 120 unique assignments were not enough, in some of the 'mode'
I add the pinky switch of my X45 joystick to be an additional conditional variable.
An entry in my INI file for the Coni using the 'double condition' looks like this:

!8=-{CONTROL SET 5 - STARTERS}-
!1=-{ ENG 1 }-
80=B66C0=5 CP(-C,6)D,14,CM25:34,1 -{Macro A2A_L049: L:StartersInertia set}-

!4=-{CONTROL SET 5 SHIFTED - MAGNETOS FOR USE WHEN STARTING}-
429=B66C0=5 CP(+C,6)D,14,C66127,0 -{MAGNETO1_INCR}-

Here my Controller 'D' Switch '14' is the Engine 1 Inertia Starter switch in 'mode' 5 IF the Pinky Switch
(Controller 'C' Switch '6' ) is not active.

If the Pinky switch is pulled, then Controller 'D' Switch '14' becomes the Magneto Increment switch.

I have a Lua script that displays the current 10 (or 20 Pinky conditional) assignments for the 10 switches
for 3 or 4 seconds whenever the value in 0x66C0 changes. Also I can press F10 any time to see the assignments
without having to change the 'mode'.

The flexibility of this scheme allows me to just push buttons on the Quadrants and X-45 and bring the
Coni from cold & dark to ready to taxi.

After I coded all that conditional stuff in the FSUIPC4 INI file I decided to play around with some Lua
scripts. I wound up creating a 'Virtual Flight Engineer Extension' . That automatically ran through the
pre-start check list, then engine start. After that a small control panel pops up and one can select
Take Off mode where the settings for the MP and RPM are set automatically. Then there is a 'Climb'
mode and a couple of Cruise modes to set MP/RPM or BMEP.

In those Luas I have statements to set the Mixture of each engine. That looks like this:

In one of the CRUISE settings:

ipc.writeLvar("L:MixtureRatioLever1Position",1) -- Mixtures AutoLean
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",1)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",1)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",1)

One of the CLIMB settings:

ipc.writeLvar("L:MixtureRatioLever1Position",2) -- Mixtures Auto-Rich
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",2)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",2)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",2)

In the Pre-Start check list section:

ipc.writeLvar("L:MixtureRatioLever1Position",0) -- Mixtures CUTOFF
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",0)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",0)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",0)

So, back to your desire to use the axis. I suggest that you set each of those axis up with 'zones'
that will set the mixture lever/mixture to Cutoff, Auto Rich or Auto Lean.
Just declare the L:Vars in a MCRO file and they will then appear in the Buttons/Switches and other
menus as assignable commands.

I am traveling at the moment so can't fire up FSX/FSUIPC4 to get the exact procedure.

Now I hope that this all will post in the forum OK. Earlier today I attempted to post some Lua
scripts and found that A2A seems to have subscribed to this draconian post-filtering service that
absolutely will not let you post when something is detected in a post that the service deems a 'threat'.
Nowhere is the criteria stated so it is trial and error.

Anyhow, here goes the first attempt !

Paul

Image

Gypsy Baron
A2A Master Mechanic
Posts: 3396
Joined: 02 Aug 2008, 17:04
Location: San Francisco

Re: Connie Mixture LVars

Post by Gypsy Baron »

Just digging around on one of my sites and I see that I have a zip'ed copy of my Coni VFEX.

Download it and have a look at the Lua scripts for ideas or follow the installation readme
file(s) and take it for a test drive :) The link is case sensitive.

http://www.sonic.net/~csardas/public/L0 ... _Files.zip

Paul

Image

DCAPilot
Airman
Posts: 43
Joined: 04 Jul 2010, 10:18

Re: Connie Mixture LVars

Post by DCAPilot »

Gypsy Baron wrote: 11 Jan 2020, 07:58 The L049 mixtures are set to one of three states. Cutoff (0), Auto Lean(1), Auto Rich(3)

Here are the L:Vars as declared in my L049.MCRO file:

38=L:MixtureRatioLever1Position=SET
39=L:MixtureRatioLever2Position=SET
40=L:MixtureRatioLever3Position=SET
41=L:MixtureRatioLever4Position=SET

I have a Saitek Pro yoke with 2 throttle quadrants with 3 double throw switches on each quad.

I looked through my FSUIPC4.ini file and see that I simply used 4 switches to set either Cutoff or
Auto Lean for each engine. I used the 5th switch to set ALL engines to either Auto Lean or Auto Rich.

I use a unique combination of conditional assignments for my quadrant switches with 5 being
conditionally assigned based upon a value in User Defined Offset 0x66C0. The value in that
location is incremented or decremented by switch number 6 on the quads. Think of it as
a 'mode' switch. For the Coni the value in 0x66C0 can range between 0 and 11, thus I have
essentially 12 'modes', 12 different assignments for each of the other 5 switches. Remember
that these are double throw switches thus the 5 switches allow for 10 assignments per 'mode'.

To add further flexibility if 120 unique assignments were not enough, in some of the 'mode'
I add the pinky switch of my X45 joystick to be an additional conditional variable.
An entry in my INI file for the Coni using the 'double condition' looks like this:

!8=-{CONTROL SET 5 - STARTERS}-
!1=-{ ENG 1 }-
80=B66C0=5 CP(-C,6)D,14,CM25:34,1 -{Macro A2A_L049: L:StartersInertia set}-

!4=-{CONTROL SET 5 SHIFTED - MAGNETOS FOR USE WHEN STARTING}-
429=B66C0=5 CP(+C,6)D,14,C66127,0 -{MAGNETO1_INCR}-

Here my Controller 'D' Switch '14' is the Engine 1 Inertia Starter switch in 'mode' 5 IF the Pinky Switch
(Controller 'C' Switch '6' ) is not active.

If the Pinky switch is pulled, then Controller 'D' Switch '14' becomes the Magneto Increment switch.

I have a Lua script that displays the current 10 (or 20 Pinky conditional) assignments for the 10 switches
for 3 or 4 seconds whenever the value in 0x66C0 changes. Also I can press F10 any time to see the assignments
without having to change the 'mode'.

The flexibility of this scheme allows me to just push buttons on the Quadrants and X-45 and bring the
Coni from cold & dark to ready to taxi.

After I coded all that conditional stuff in the FSUIPC4 INI file I decided to play around with some Lua
scripts. I wound up creating a 'Virtual Flight Engineer Extension' . That automatically ran through the
pre-start check list, then engine start. After that a small control panel pops up and one can select
Take Off mode where the settings for the MP and RPM are set automatically. Then there is a 'Climb'
mode and a couple of Cruise modes to set MP/RPM or BMEP.

In those Luas I have statements to set the Mixture of each engine. That looks like this:

In one of the CRUISE settings:

ipc.writeLvar("L:MixtureRatioLever1Position",1) -- Mixtures AutoLean
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",1)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",1)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",1)

One of the CLIMB settings:

ipc.writeLvar("L:MixtureRatioLever1Position",2) -- Mixtures Auto-Rich
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",2)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",2)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",2)

In the Pre-Start check list section:

ipc.writeLvar("L:MixtureRatioLever1Position",0) -- Mixtures CUTOFF
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever2Position",0)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever3Position",0)
ipc.sleep(300) -- wait .3 second
ipc.writeLvar("L:MixtureRatioLever4Position",0)

So, back to your desire to use the axis. I suggest that you set each of those axis up with 'zones'
that will set the mixture lever/mixture to Cutoff, Auto Rich or Auto Lean.
Just declare the L:Vars in a MCRO file and they will then appear in the Buttons/Switches and other
menus as assignable commands.

I am traveling at the moment so can't fire up FSX/FSUIPC4 to get the exact procedure.

Now I hope that this all will post in the forum OK. Earlier today I attempted to post some Lua
scripts and found that A2A seems to have subscribed to this draconian post-filtering service that
absolutely will not let you post when something is detected in a post that the service deems a 'threat'.
Nowhere is the criteria stated so it is trial and error.

Anyhow, here goes the first attempt !

Paul

Image
Thank you. I'll dig into the VFEX later.

The code came through fine and I see about the posting. Now I'm getting some nonsense about checking a box and telling me I can avoid this by running an anti-virus. Duh, I am running an AV program.

Paul, I saw the mixture ratio is an enum from looking at the code.xml file but my logging showed 0, 50, 100 so this is very useful information. With the axis the range ideas sounds like a good one but then I may need to rethink since I'm dealing with the Connie and get rid of my ideas from other aircraft. I had to do that on the prop control since it uses one switch to increase/decrease rpm and I initially tried to use the prop levers but eventually went to a switch for it. I'll think about doing that for the mixture, too. Lots to think about.

Please explain about declaring LVars in a macro. I've been reading the FSUIPC docs - all of them and have done a script for lights and autopilot using my TM MFD 16 but haven't delved into macros at all. Looks like Macros are next on my reading list.

I like your idea for mode switching. I'm used to it with the CH Control Manager and Joystick Gremlin. I did extensive programing in CH CM for different modes to give me 1,2,3, or 4 throttles/mixtures/props and other features as the aircraft required it but unfortunately CM no longer works reliably in Win 10. I've done programming in various languages so that's not an issue but I'm just now digging into FSUIPC and getting to know it.

Thanks for the ideas and help.

Gypsy Baron
A2A Master Mechanic
Posts: 3396
Joined: 02 Aug 2008, 17:04
Location: San Francisco

Re: Connie Mixture LVars

Post by Gypsy Baron »

The MCRO file is simply a text file with the MCRO extension that is placed in the Modules folder.
FSUIPC reads it and adds the declared variables to the list of available commands/controls.

Whenever I install a new A/C I dump the Local Panel Variables to the FSUIPC log file. I then create
a MCRO file for that aircraft and add the L:vars that I wish to use from the dumped listing to the MCRO file.
Not to be confused with 'Mouse Macros'.

Here is a partial example of my 'A2A_L049.MCRO file:

[MACROS]
1=L:WingflapWarningLampTestSwitch=TOGGLE
2=L:FireTestSwitch=SET
3=L:CarbHeat1Switch=TOGGLE
4=L:CarbHeat2Switch=TOGGLE
5=L:CarbHeat3Switch=TOGGLE
6=L:CarbHeat4Switch=TOGGLE
7=L:InverterSwitch=TOGGLE
8=L:Eng1_FuelTankCutOffLever=TOGGLE
9=L:Eng2_FuelTankCutOffLever=TOGGLE
10=L:Eng3_FuelTankCutOffLever=TOGGLE
11=L:Eng4_FuelTankCutOffLever=TOGGLE
12=L:Propeller1SwitchRPM=SET
13=L:Propeller2SwitchRPM=SET
14=L:Propeller3SwitchRPM=SET
15=L:Propeller4SwitchRPM=SET
16=L:PropellerMasterSwitchRPM=SET
17=L:Feather1Switch=SET
18=L:Feather2Switch=SET
19=L:Feather3Switch=SET
20=L:Feather4Switch=SET
21=L:ApuStarterGenSwitch=TOGGLE
22=L:LandingLightExtendSwitch=TOGGLE
23=L:MasterIgnitionSwitch=TOGGLE
.
.
.
34=L:StartersInertia=SET
35=L:StartersEngage=SET
36=L:Primer12Switch=SET
37=L:Primer34Switch=SET
38=L:MixtureRatioLever1Position=SET
39=L:MixtureRatioLever2Position=SET
40=L:MixtureRatioLever3Position=SET
41=L:MixtureRatioLever4Position=SET
42=L:EngineSelection=SET
43=L:WindowSliding1Lever=SET
44=L:WindowSliding2Lever=SET
45=L:InverterSwitch=SET
46=L:GroundBlowerSwitch=TOGGLE
47=L:ApuStarterGenSwitch=SET

and so on for a total of 159 entries.

A note on my VFEX 'add on'. I created that using FSX and did some quick testing of it
in P3DV4 which I have but seldom use.

I used the FSUIPC4 ability to specify multiple messages with screen position data so that when
the 3 VFEX Lua scripts are running simultaneously it was possible to see 3 Lua windows appear
displaying status info for each Lua script. It turns out that that capability which I found very useful
was a 'hack' into the FSX code by Pete Dowson. With P3DV4 he choose not to attempt to implement
that capability so when my VFEX scripts run there will be only one 'Lua window' and the 'last one wins'
when it comes to the message displayed.

Here is an example of the message window use in the RPM control Lua:

-- ====================== INITIALIZATION CODE SECTION =======================

function init_msg() -- Message displayed when this Lua script loads

ipc.setowndisplay("RPM Control Module", 75, 2, 45, 5) -- values in percent of the screen sizes

sound.path("../Modules/L049_Sound")

ipc.sleep(4500)

ipc.display("L049 RPM SET Lua Started", 4)
sound.play("RPM_CTL_ON")

A message window with the Title "RPM Control Module" would appear at the location indicated
whenever an "ipc.display" command was used in this script.

Here is an example of the message window use in the MP control Lua:

-- ============= INITIALIZATION CODE FUNCTION =================
-- ============================================================

function init_msg()

ipc.setowndisplay("Manifold Pressure Control Module", 50, 2, 45, 5) -- DISPLAY LOCATION values in percent of the screen sizes
sound.path("../Modules/L049_Sound") -- PATH TO THE L049_Sound FOLDER

ipc.display("L049 MP SET Lua Started", 4)
sound.play("MP_CTL_ON")

So in P3DV4 those ipc.display commands will simply send the message to the single Lua message window
over-writing any previous message.

If you have any questions feel free to PM me here. When I am at home I can fire up P3DV4 in needed
to check/test any functions.

Paul

DCAPilot
Airman
Posts: 43
Joined: 04 Jul 2010, 10:18

Re: Connie Mixture LVars

Post by DCAPilot »

Thanks for all the information. I am familiar with Lua and the FSUIPC screens but haven't done anything with macros so that's a helpful tip. I've dumped the LVars into a text file I use for reference but I like the Macro idea. I saw in the docs Pete mentioned last one wins unless you do something else. I'll dig through what you sent later today.

Thanks again.

DCAPilot
Airman
Posts: 43
Joined: 04 Jul 2010, 10:18

Re: Connie Mixture LVars

Post by DCAPilot »

I got the levers working thanks to your information on the Macros. I did it just to learn some more about macros and ranges and it also reflects the FE's panel with the lever. So much fun this!

You gave me some good ideas on the modes. I have a CH Eclipse Yoke, Pro Pedals, and two Throttle Quadrants for these kind of aircraft with a WartHog HOTAS for others. I used to use the CH Control Manager (CM) to do all the programing to handle modes so I could set it to any one of the number of modes and it set the proper number of throttles, props, and mixtures and assigned them to the proper TQ levers so I had all my throttles next to each other, props and mixture the same. When I went to an aircraft with a different number of engines I simply told it with the modes. With FSUIPC we have the aircraft profiles so that makes life easier.

Thanks again.

new reply

Return to “Lockheed Model 049 Tech Support”

Who is online

Users browsing this forum: No registered users and 8 guests