Axis and Ohs: Help and questions

What am I doing wrong?.

Hard to tell. Make sure that you apply the WASM module to the base model “Aerosoft_CRJ_550”, “Aerosoft_CRJ_700” not to one of the extra liveries. Those may have a panel.cfg too, but people told me that the WASM doesn’t work when it is in there.

Hello @ll JustFlight customers,

here is an open link to the workaround app and instructions, should those not show up in your account:

Best regards

2 Likes

hello,

Its working great and in want All my Hardware take with your addon.

I need help

everywhere have a gauge icon for the streamdeck i can See the Alt and Rpm direct on streamdeck. i have that with flight tracker but sometime Crash my streamdeck and i think its to much different addon.

Pls send me a Profil with that for the normal 15 Button streamdeck.

Many thx for the help

Thank you Ic4c and Oliver for your responses.
Deleting and reassigning the template did not work.
I have verified that the WASM module is in the CRJ_500 and CRJ_700 folders.
The only difference I have found has been in [VCockpit04] and in the “texture” line where it had “$ efb_display” instead of “$ PFD”. I replaced it and it still doesn’t recognize assignments.

I told Oliver about this but thought maybe someone else has seen it. CRJ purchased from Aerosoft Store. Used the crash workaround installer. The CRJ 550 works. LVARS can be rea from the scripting menu and HC Alpha/Bravo works as before the world update. The CRJ700 does not. Script reading fails and none of the buttons work. Any ideas?

Any ideas?

Maybe. Please check the layout.json file - is there one reference of the “LorbyLVarHookWASM.wasm” or are there two of them? There must be two, one for each CRJ model. I didn’t anticipate that in the installer, and it is definitely possible that there is only the first one that you installed.

Hello @LCplCrabby, @Fuentes000,

I just tried it on my end, and AAO definitely works in both the 550 and the 700.

  • Make sure that the WASM module is in both panel folders
  • Make sure that both panel.cfgs have been altered
  • Make sure that BOTH wasm files are present in the layout.json, one in the 700 folder, the other in the 550.

But I probably cheated, because I disconnected AAO (click on the green LED) when I switched from the 550 to the 700, and reconnected it after the 700 finished loading - because the CRJ always was trouble during the initialization process.

Hello @ll,

the MSFS hotfix 1.15.8 is now live.

The sim is no longer crashing when a stand alone WASM module is present, so things can go back to normal.

  1. Do I need a new version of AAO? No, the 2.06 b08 that is in the shops will work fine

  2. How do I remove the workaround? panel.cfg and layout.json must be reverted to their original state. You can do that either manually, by reinstalling the plane or with the WASM installer tool. If you were using the tool and it throws an error when you try to remove a configuration, check the plane folders manually - the original layout.json and panel.cfg files are there, renamed to “.original”.
    → After that just reinstall AAO

  3. If AAO is only displaying a white window in the taskbar, delete the following folders:
    C:\Users…\AppData\Local\Lorby-SI\LorbyAxisAndOhs_MSFS.exe_Url_czjzikxvfp4omouhsqicacm52dqowlpu
    (= everything that has those cryptic characters at the end)
    ATTENTION: Be mindful that this is not the same folder as the one with the configuration database - that is LORBY_SI and you should not delete that!!

I don’t know if (3.) happens everywhere, but it happened to me.

4 Likes

Stunned how quickly they pushed that out! But thank goodness

Thank you for always being so attentive

really really thx for your Support.

I though Asobo need many weeks for this update.

Just a quick question on the release notes of AAO 2.06:
What does “AAO can handle more LVars at the same time” mean. How is this change recognizable?
Does that mean stability improvement with templates that have a lot of LVars in their scripts, improvement with a lot of automated scripts running or something else?

@LorbySI , removed the workaround and flew the CJ4 with Beringher X-Touch mini from EDDF to EBBR with AAO 2.06 installed after the hotfix 1.15.8.0.

All is working very well (as before).

Thank you very much for the excellent AAO development and professional support!

Just a quick question on the release notes of AAO 2.06:
What does “AAO can handle more LVars at the same time” mean. How is this change recognizable?
Does that mean stability improvement with templates that have a lot of LVars in their scripts, improvement with a lot of automated scripts running or something else?

Normally, I wouldn’t have mentioned that. But the 2.06 had to be rushed to cover the MSFS workaround, so I thought it would be best to make people aware that “something” has changed with the LVars - just in case that they don’t work as expected. This is about profiles that have a lot more LVars than I anticipated. With very large setups (especially with the StreamDeck) it was possible to go beyond the coded boundaries in AAO, and those LVars would no longer return a value.

So like when you have multiple complete Planes in the stream deck?
Thank you for clarification!

So like when you have multiple complete Planes in the stream deck?

No, for a single aircraft. It was just too easy to have more than 80-100 LVars in the SD profiles, the scripts and buttons, even just for a single plane.

Hi, i need some help with my CRJ Project :slight_smile:
I want to bind the DH / MDA knob
grafik
to my X-Touch mini Knob a long click is switching between DH and MDA

These are variables that could be the triggers for the CPT Knob
and i try to create a toggle for that, this is my script, its working for getting it to MDA but not back to DH

(L:ASCRJ_LSP_HEIGHT_MODE,·Number)·1·==·if{·0·(>L:ASCRJ_LSP_HEIGHT_MODE,·Number)·}·els{·1·(>L:ASCRJ_LSP_HEIGHT_MODE,·Number)·}

The script works fine for me. Something must be wrong with the assignment.

Shorter versions of the same script:
(L:ASCRJ_LSP_HEIGHT_MODE,·Bool)·!·(>L:ASCRJ_LSP_HEIGHT_MODE,·Bool)

1·(L:ASCRJ_LSP_HEIGHT_MODE,·Number)·-·(>L:ASCRJ_LSP_HEIGHT_MODE,·Bool)

Thanks, worked :slight_smile:
Another big problem are my Integ Lights, in want to have a button toggle for it, so if i press it once it turns the INTG Knob all the way to 1/2 and pressing it again to full INTG Knob, pressing it long will turn the lights complete of.
I tried the follwoing not very nice appraoch of using sleep and repeating the same script all the time until its at the position, sadly sometimes it doesn’t work and jumps back to 0 :frowning:

1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-OVHD·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-LSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-RSP·INTEG·inc)·(SLEEP:100)·1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc)

i guess the script is to long and therefore it will create this error?
Do you have an idea on how i can get it shorter and more reliable?

I don’t think that this script will work terribly well. All those “sleep” commands will amount to several seconds, and it is doubtful that the result would be what you expect.

AAO 2.07 will have a “repeat” feature for “(>K:” things (= events and scripts that are called this way).

For example

1·(>K:0·-·CRJ·INT·LGT·SIGNS-PED·INTEG·inc|20)

will repeat the script 20 times.

If you want, send me your proof of purchase by email or PM, and you can try it.

Edit: Can’t you just set the base LVar to a specific value instead of calling this so many times?