Statuses
The connector now displays the connection state to the game and your boards more clearly.
Boards
- Green, all boards are connected
- Yellow, 1 board or more refused a connection (but not all)
- Red, all boards can’t be accessed (in the future, it will indicate which ones)
Game
- Green connected to the game
- Yellow attempting to connect to the game (will keep trying until you stop the connector)
- Red connection is closed (AKA you pressed stop)
WASM
If you’ve installed the game in the default windows store location or the default steam location, you’re able to install the WASM module from within the connector. For this, I’ve added an extra WASM menu item in the top bar.
From this same menu, you’ll also find an option to update the event file. This only works if you’ve got either the dual-mode or the input mode running. This enables you to make changes to the events file (which is located in the community folder) without restarting the game. It sends the command 9999(this can also be triggered from your Arduino) to reload all the events you’ve added on the fly. I’m working on a GUI to make your life (and probably mine) more straightforward.
But how are these commands formatted?
First things first, I’d recommend only adding inputs at this point. You can find custom inputs in the documentation of most third-party developers (I.e.: https://github.com/flybywiresim/a32nx/blob/master/docs/a320-events.md) or on the Mobiflights events tool website (https://hubhop.mobiflight.com/#/list).
In the events file, it needs to be added like this:
(>H:AS3000_PFD_BottomKnob_Large_DEC)^0# 883$0// G3000 PFD button dec
It seems daunting, but it comes down to this.
Command^mode#prefix$UpdateEvery//End of line place a nice comment here
- The command can differ depending on the type of variable. Most developers will tell you (or the hubhop site) how the command has to look). IMPORTANT: If they add spaces, they are there for a reason. i.e., this won’t work
100+(>K:AP_ALT_VAR_SET_ENGLISH)
while this will
100 + (>K:AP_ALT_VAR_SET_ENGLISH)
Some commands can take a value directly in front of the command i.e.:
0 (>L:A320_Neo_MFD_NAV_MODE_1)^0#2035$0// nav mode 0-5
…
5 (>L:A320_Neo_MFD_NAV_MODE_1)^0#2039$0//
These commands set the MFD nav mode to mode 0 – 5
Commands can also be chained like this:
(A:AUTOPILOT ALTITUDE LOCK VAR, feet) 100 + (>K:AP_ALT_VAR_SET_ENGLISH) (>H:AP_KNOB_Up)^0#2000$0// altitude ap + 100//
This command takes the current AP Altitude lock var, adds 100, and sets that to the AP alt var set command (plus the animation to move it up which I haven’t tested if that works 100% of the time).
You could even apply some complex logic operations on them (yes this is one command):
(L:MF_VS_TOG,Bool) if{ (>H:A320_Neo_FCU_VS_ZERO) } els{ (>H:A320_Neo_FCU_VS_HOLD) } (L:MF_VS_TOG,Bool) ! (>L:MF_VS_TOG,Bool)^0#2024$0// FCU vs push pull toggle - The mode determines what kind of data comes in. Mode 0 is an input command. In this mode, it just executes whatever command is on that line.
Mode 1 lets you add a custom value. i.e.
(>K:AP_ALT_VAR_SET_ENGLISH)^1#2000$0
Is able to receive 2000 100 as a command. This will set the value of the AP alt variable to 100.
Another way to receive the same result is by changing the command to:
100 (>K:AP_ALT_VAR_SET_ENGLISH)^0#2000$0
And trigger it with the 2000 command. The 1 mode gives you the flexibility to change values on the fly.
Mode 3 is output (I’m still working on a way to implement custom outputs, but it works in theory with a bit of puzzling). - The prefix is the number the connector listens for to trigger the corresponding action. I’m still working out how to add the commands to the library without blowing its size up. Currently, you’re able to do connector.send(2000); or Serial.println(2000); to send your (or mine) custom commands
- Update every X determines how big the value needs to change before receiving an update from the game (it is still being worked on for the outputs).
- // The line stops here. From here on out, you can add a comment or anything you need to recognize the commands.
IMPORTANT!
Some important rules:
- Respect the spaces
- Don’t press enter in the middle of a line to format the line
- Always pass integers (whole numbers) when you set a value
- SPACES!!!
- To be future proof, use the 7000-8000 range for adding custom commands. This way, it won’t collide with future default commands being added.
Commands
I’ve added the first set of commands to play around with. They can be triggered by adding the command connector.send(prefix) in your Arduino code I.e., connector.send(2000).
General AP alt lock
- 2000 – AP Alt lock + 100
- 2001 – AP Alt lock + 1000
- 2002 – AP alt lock – 100
- 2003 – AP alt lock – 1000
G3000 / CJ4 Longitude
- 2004 – PFD Baro inc
- 2005 – PFD Baro dec
FlyByWire A320 Neo
- 2006 – Managed speed CDU
- 2007 – Managed speed FCU
- 2008 – Selected speed CDU
- 2009 – Expedite mode button
- 2010 – FCU heading push
- 2011 – FCU heading pull
- 2012 – Heading push-pull toggle
- 2013 – FCU heading inc
- 2014 – FCU heading dec
- 2015 – FCU speed inc
- 2016 – FCU speed dec
- 2017 – FCU speed pull
- 2018 – FCU speed push
- 2019- FCU speed push pull toggle
- 2020 – FCU VS inc
- 2021 – FCU VS dec
- 2022 – FCU VS pull
- 2023 – FCU VS push
- 2024 – FCU VS push pull toggle
- 2025 – Selected alt pull
- 2026 – Selected alt push
- 2027 – Selected alt push pull toggle
- 2028 – AP alt inc
- 2029 – AP alt dec
- 2030 – AP alt inc 100
- 2031 – AP alt dec 100
- 2032 – AP alt inc 1000
- 2033 – AP alt dec 1000
- 2034 – Toggle mach speed
- 2035 – MFD Nav mode 0
- 2036 – MFD Nav mode 1
- 2037 – MFD Nav mode 2
- 2038 – MFD Nav mode 3
- 2039 – MFD Nav mode 4
- 2040 – MFD range 0 (10)
- 2041 – MFD range 1 (20)
- 2042 – MFD range 2 (40)
- 2043 – MFD range 3 (80)
- 2044 – MFD range 4 (160)
- 2045 – MFD range 5 (320)
- 2046 – WPT button off
- 2047 – WPT button on
- 2048 – CSTR button off
- 2049 – CSTR button on
- 2050 – VORD button off
- 2051 – VORD button on
- 2052 – NDB button off
- 2053 – NDB button on
- 2054 – ARPT button off
- 2055 – AROT button on
- 2056 – LS button off
- 2057 – LS button on
- 2058 – AP 1 pushed
- 2059 – AP 2 pushed
- 2060 – LOC pushed
- 2061 – APPR pushed
- 2062 – EXPED pushed
- 2063 – DIR TO pushed
- 2064 – A/THR pushed
- 2065 – FPA mode