Jump to content

Recommended Posts

Posted (edited)
On 4/2/2024 at 5:51 PM, scorpyq said:

please help:

F-18C Cabin Pressure Gauge

C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:24:3: error: 'PCA_TFT_RESET' was not declared in this scope
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:24:18: error: 'PCA_TFT_CS' was not declared in this scope
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:24:30: error: 'PCA_TFT_SCK' was not declared in this scope
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:24:43: error: 'PCA_TFT_MOSI' was not declared in this scope
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:27:1: error: 'Arduino_ESP32RGBPanel' does not name a type
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:35:1: error: 'Arduino_RGB_Display' does not name a type
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino: In function 'void setup()':
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:58:8: error: 'gfx' was not declared in this scope
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino: In function 'void plotCabinPressGauge(int16_t)':
C:\Users\scorp\OneDrive\Počítač\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN\Adafruit Qualia ESP32S3\F_18_Cabin_Pressure_Gauge_Qualia_FP\F_18_Cabin_Pressure_Gauge_Qualia_FP.ino:95:3: error: 'gfx' was not declared in this scope

exit status 1

Compilation error: 'PCA_TFT_RESET' was not declared in this scope

 

 

 

@scorpyq

The above download compiles with GFX Library for Arduino and TFT_eSPI library for the 2.1 inch round ST7701S display.

If you have problems with ESP32 chips and DcsBios, try to add the following line below the DCSBIOS_DEFAULT_SERIAL entry:

#define DCSBIOS_DISABLE_SERVO

 

Follow Adafruit's setup guide for the Qualia ESP32-S3 setup in the Arduino IDE and the library installation:

https://learn.adafruit.com/adafruit-qualia-esp32-s3-for-rgb666-displays/arduino-ide-setup

https://learn.adafruit.com/adafruit-qualia-esp32-s3-for-rgb666-displays/arduino-library-installation

 

I put the following lines into my board manager and choose the Adafruit Qualia ESP32-S3 RGB-666 from the esp32 list.

https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
https://dl.espressif.com/dl/package_esp32_index.json
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

 

To launch the bootloader, you have to hold down Boot0 and press Reset of your board. Than get sure to use the actually shown COM port within the Arduino IDE.
 

 

Regards, Vinc

Edited by Vinc_Vega

Regards, Vinc

real life: Royal Bavarian Airforce

online: VJS-GermanKnights.de

[sIGPIC][/sIGPIC]

  • 3 weeks later...
Posted

A few things:

  • Finally got around to mounting the gauges in my F-18 Cockpit, four of the smaller displays and two of the larger ones.
  • I also noted that I missed a line of code out of the Qualia sketch. You won't notice it unless you don't call the BIT.  If you don't, there is nothing to initially draw the screen until DCS outputs something. Simple solution add "plotRadarAltGauge (angleRadarAlt, angleMinHeightPointer);" above the BIT call and it will work as intended.
  • An odd one, but you might note on the RALT display in the picture that the altitude needle is not showing zero on the ground, whereas the one in the DCS cockpit is. Once you gain some height they are in sync. It seems to be something DCS is outputting on start-up. I am not currently sure how to fit this. The needle moves over its entire range in the BIT and once flying.F-18 Cockpit.jpg
  • You will also note that the RALT now has an rotary encoder, with push switch installed that works fine, but the code is running on one of the ESP32's driving the smaller displays as I still can't seem to find out why DCS-BIOS does not seem to like the pins on the Qualia board (anyone have an answer please share).
  • Like 3
Posted (edited)

Hi, now after pulling the correct libraries I got this problem:
Did you change anything "DcsBios.h"?

F-18C Cabin Pressure Gauge

In file included from C:\Users\scorp\Desktop\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN_FINAL\07_CABIN_FINAL.ino:11:
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:42:20: error: expected constructor, destructor, or type conversion before '(' token
   42 |                 ISR(USART0_RX_vect) {
      |                    ^
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h: In function 'void DcsBios::setup()':
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:18:14: error: 'PRR' was not declared in this scope; did you mean 'PRR0'?
   18 | #define PRR0 PRR
      |              ^~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:48:25: note: in expansion of macro 'PRR0'
   48 |                         PRR0 &= ~(1<<PRUSART0);
      |                         ^~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:48:38: error: 'PRUSART0' was not declared in this scope
   48 |                         PRR0 &= ~(1<<PRUSART0);
      |                                      ^~~~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:49:25: error: 'UBRR0H' was not declared in this scope
   49 |                         UBRR0H = 0;
      |                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:50:25: error: 'UBRR0L' was not declared in this scope
   50 |                         UBRR0L = 3; // 250000 bps
      |                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:51:25: error: 'UCSR0A' was not declared in this scope
   51 |                         UCSR0A = 0;
      |                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:52:25: error: 'UCSR0C' was not declared in this scope
   52 |                         UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
      |                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:52:38: error: 'UCSZ00' was not declared in this scope
   52 |                         UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
      |                                      ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:52:52: error: 'UCSZ01' was not declared in this scope
   52 |                         UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
      |                                                    ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:54:25: error: 'UCSR0B' was not declared in this scope
   54 |                         UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
      |                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:54:38: error: 'RXEN0' was not declared in this scope
   54 |                         UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
      |                                      ^~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:54:51: error: 'TXEN0' was not declared in this scope
   54 |                         UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
      |                                                   ^~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:54:64: error: 'RXCIE0' was not declared in this scope
   54 |                         UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
      |                                                                ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h: In function 'void DcsBios::usart_tx(const char*)':
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:67:41: error: 'UCSR0A' was not declared in this scope
   67 |                                 while(!(UCSR0A & (1<<UDRE0))); // wait until TX buffer is empty
      |                                         ^~~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:67:54: error: 'UDRE0' was not declared in this scope
   67 |                                 while(!(UCSR0A & (1<<UDRE0))); // wait until TX buffer is empty
      |                                                      ^~~~~
c:\Users\scorp\OneDrive\Dokumenty\Arduino\libraries\DCS-BIOS\src/DcsBios.h:68:33: error: 'UDR0' was not declared in this scope
   68 |                                 UDR0 = *c++; // write byte to TX buffer
      |                                 ^~~~
C:\Users\scorp\Desktop\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN_FINAL\07_CABIN_FINAL.ino: In function 'void loop()':
C:\Users\scorp\Desktop\Arduino F18c_HORNET\__01_FINAL\BUDIKY Final\07_CABIN-ovy_tlakomer\07_CABIN_FINAL\07_CABIN_FINAL.ino:183:3: error: 'PORTB' was not declared in this scope
  183 |   PORTB |= (1<<5);
      |   ^~~~~

exit status 1

Compilation error: 'PORTB' was not declared in this scope

DcsBios.h

Edited by scorpyq
Posted (edited)

I certainly didn't alter DcsBios.h from the standard download, but a quick compare shows that the one you are using does not match mine. Which version of DCS-BIOS are you using and what release? I am assuming a Skunkworks release before 0.3.9 as this introduced Addresses.h and this is missing from your version. See below:

## v0.3.9
- Included Addresses.h as an alternative way of including DCS address/mask information.  [Documentation needed].  Thanks @maciekish for the contribution!!
- Example of PotentiometerEWMA added to OneOfEverything
- Add support for #define DCSBIOS_DISABLE_SERVO to disable inclusion of servo.h on platforms which don't support it (ESP32)
- Resolved confusing inclusion pattern for USE_MATRIX_SWITCHES, and supported more standardized version DCSBIOS_USE_MATRIX_SWITCHES.

Have you got things working with the attached code, if not I suggest that you address this first, before introducing DCS.

Qualia_TFT_Example_480x480.ino

Edited by Tanarg
Added example file
Posted
45 minutes ago, scorpyq said:

nulltoto si myslel?

inak nerozumiem, mám preinštalovať DCS-BIOS?

image.png

Pretty sure it won't work with Hub.  It's years out of date.
You'll need to switch to the DCS-Skunkworks Fork (formerly called the Flightpanels Fork).

  • 4 months later...
Posted

@Tanarg

Hi there, i feel confused and really don't know what to do else.
installed all the libraries, put the board into bootloader, choosed the right comport 
I think i followed all the instruction correctly but still facing a Compilation Error 
*******************************************

ATTENZIONE: la libreria Servo dichiara di funzionare sulle architetture avr, megaavr, sam, samd, nrf52, stm32f4, mbed, mbed_nano, mbed_portenta, mbed_rp2040, renesas, renesas_portenta, renesas_uno e potrebbe non essere compatibile con la tua scheda che utilizza l'architettura esp32
In file included from c:\Users\ME\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/internal/Servos.h:6,
                 from c:\Users\ME\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:129,
                 from C:\Users\ME\Documents\Arduino\F_18_RALT_Gauge_Qualia_FP\F_18_RALT_Gauge_Qualia_FP.ino:7:
C:\Users\ME\AppData\Local\Arduino15\libraries\Servo\src/Servo.h:79:2: error: #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
   79 | #error "This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."
      |  ^~~~~
exit status 1

Compilation error: exit status 1
*****************

I also added the #define DCSBIOS_DISABLE_SERVO
but still no joy 

 

 

 

Posted

#SOLVED - SOLVED - SOLVED#
the error was generated by the updated board manager of Arduino IDE.
GFX libraries seems still not upgraded so the way is to downgrade Arduino Ide Board Manager to v. 2.0.17 

Now it's working ! 
 

Posted (edited)
On 8/30/2024 at 11:11 AM, Strale said:

#SOLVED - SOLVED - SOLVED#
the error was generated by the updated board manager of Arduino IDE.
GFX libraries seems still not upgraded so the way is to downgrade Arduino Ide Board Manager to v. 2.0.17 

Now it's working ! 
 

IMG_0206[1].MOV

Yes, the TFT_eSPI library is still not full compatible with Esp32 board manager version 3 and above.

Regards, Vinc 

Edited by Vinc_Vega

Regards, Vinc

real life: Royal Bavarian Airforce

online: VJS-GermanKnights.de

[sIGPIC][/sIGPIC]

Posted (edited)
Il 01/09/2024 at 19:01, Vinc_Vega ha scritto:

Yes, the TFT_eSPI library is still not full compatible with Esp32 board manager version 3 and above.

Regards, Vinc 

 

Thanks Vinc, it made me running mad for a while but eventually find a post suggesting to downgrade the board manager to version 2.017 and all worked flawlessly.
now would be great to know if someone is writing the codes for the small std by gauges (ASI, ALT and VVI) seems a good way to replicate those instrument without 
having to deal with complex mechanisms.

 

@BaronVonVaderham
Don't have any clue though,
i just had a try at it and yes ... sometimes there are some delays 

but i would not know how to solve it.
Maybe @Tanarg or @Vinc_Vega could help out.

 

Edited by Strale
Posted
Am 8.9.2024 um 19:33 schrieb Hammer3246:

Has anyone successfully coded an OLED to display the F-16 Speed Brake indicator? 

 

#define DCSBIOS_IRQ_SERIAL



#include <Wire.h> // For OLED
#include <Adafruit_GFX.h> // For OLED
#include <Adafruit_SSD1306.h> // For OLED
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#include "DcsBios.h"


// 'F-16_SpeedBrake Indicator_Closed', 128x64px
const unsigned char myBitmap_Closed [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0x80, 0x0f, 0xc0, 0x3f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x80, 0x1f, 0xf0, 0x7f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0xf3, 0x80, 0x3c, 0x78, 0xf3, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x70, 0x3c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x3b, 0x80, 0x70, 0x1c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0xf8, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x7f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x3f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0x07, 0xcf, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x13, 0x80, 0x60, 0x1c, 0x01, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x3b, 0x80, 0x70, 0x1d, 0xc0, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x78, 0x3d, 0xe1, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xfe, 0x3f, 0xf8, 0xff, 0xcf, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0xff, 0x1f, 0xf0, 0x7f, 0x8f, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0xfe, 0x0f, 0xc0, 0x3f, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

// 'F-16_SpeedBrake Indicator_Open', 128x64px
const unsigned char myBitmap_Open [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x01, 0xc0, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x01, 0xc0, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};


// 'F-16_SpeedBrake Indicator_ELEC loss', 128x64px
const unsigned char myBitmap_Loss [] PROGMEM = {
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xe0, 0xff, 0xf0, 0x3f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x01, 0xff, 0x81, 0xff, 0xe0, 0xff, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc1, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x07, 0xff, 0x03, 0xff, 0x01, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x03, 0xff, 0x03, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xff, 0x07, 0xff, 0x83, 0xff, 0xc1, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x03, 0xff, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xf8, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x3f, 0xf0, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0x7f, 0xe0, 0x7f, 0xf8, 0x1f, 0xf8, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xe0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x80, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc1, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x1f, 0xf8, 0x1f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x1f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x07, 0xfe, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00
};


void setup() {
DcsBios::setup();

display.begin(SSD1306_SWITCHCAPVCC, 0x3c); // Address 0x3D or 0x3D for 128x64, need to try!
delay(4000);
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();

}


void loop() {
DcsBios::loop();
}




void onSpeedbrakeIndicatorChange(unsigned int newValue) {

if (newValue > 0) { // For Speed Brake deployed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Open, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
if (newValue == 0) { // For Speed Brake Closed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Closed, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
}
DcsBios::IntegerBuffer speedbrakeIndicatorBuffer(0x44c6, 0xffff, 0, onSpeedbrakeIndicatorChange);

Hi, this sketch is an older version for  DCS-Bios Hub .. 

It needs to be updated !

  • Like 2
Posted
On 9/12/2024 at 9:48 PM, JohnnyChicago said:
#define DCSBIOS_IRQ_SERIAL



#include <Wire.h> // For OLED
#include <Adafruit_GFX.h> // For OLED
#include <Adafruit_SSD1306.h> // For OLED
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#include "DcsBios.h"


// 'F-16_SpeedBrake Indicator_Closed', 128x64px
const unsigned char myBitmap_Closed [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0x80, 0x0f, 0xc0, 0x3f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x80, 0x1f, 0xf0, 0x7f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0xf3, 0x80, 0x3c, 0x78, 0xf3, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x70, 0x3c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x3b, 0x80, 0x70, 0x1c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0xf8, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x7f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x3f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0x07, 0xcf, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x13, 0x80, 0x60, 0x1c, 0x01, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x3b, 0x80, 0x70, 0x1d, 0xc0, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x78, 0x3d, 0xe1, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xfe, 0x3f, 0xf8, 0xff, 0xcf, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0xff, 0x1f, 0xf0, 0x7f, 0x8f, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0xfe, 0x0f, 0xc0, 0x3f, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

// 'F-16_SpeedBrake Indicator_Open', 128x64px
const unsigned char myBitmap_Open [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x01, 0xc0, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x01, 0xc0, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};


// 'F-16_SpeedBrake Indicator_ELEC loss', 128x64px
const unsigned char myBitmap_Loss [] PROGMEM = {
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xe0, 0xff, 0xf0, 0x3f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x01, 0xff, 0x81, 0xff, 0xe0, 0xff, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc1, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x07, 0xff, 0x03, 0xff, 0x01, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x03, 0xff, 0x03, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xff, 0x07, 0xff, 0x83, 0xff, 0xc1, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x03, 0xff, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xf8, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x3f, 0xf0, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0x7f, 0xe0, 0x7f, 0xf8, 0x1f, 0xf8, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xe0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x80, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc1, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x1f, 0xf8, 0x1f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x1f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x07, 0xfe, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00
};


void setup() {
DcsBios::setup();

display.begin(SSD1306_SWITCHCAPVCC, 0x3c); // Address 0x3D or 0x3D for 128x64, need to try!
delay(4000);
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();

}


void loop() {
DcsBios::loop();
}




void onSpeedbrakeIndicatorChange(unsigned int newValue) {

if (newValue > 0) { // For Speed Brake deployed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Open, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
if (newValue == 0) { // For Speed Brake Closed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Closed, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
}
DcsBios::IntegerBuffer speedbrakeIndicatorBuffer(0x44c6, 0xffff, 0, onSpeedbrakeIndicatorChange);

Hi, this sketch is an older version for  DCS-Bios Hub .. 

It needs to be updated !

Would the new code be in Bort?

Posted
On 9/12/2024 at 1:48 PM, JohnnyChicago said:
#define DCSBIOS_IRQ_SERIAL



#include <Wire.h> // For OLED
#include <Adafruit_GFX.h> // For OLED
#include <Adafruit_SSD1306.h> // For OLED
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#include "DcsBios.h"


// 'F-16_SpeedBrake Indicator_Closed', 128x64px
const unsigned char myBitmap_Closed [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0x80, 0x0f, 0xc0, 0x3f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x80, 0x1f, 0xf0, 0x7f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0xf3, 0x80, 0x3c, 0x78, 0xf3, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x70, 0x3c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x3b, 0x80, 0x70, 0x1c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0xf8, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x7f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x3f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0x07, 0xcf, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x13, 0x80, 0x60, 0x1c, 0x01, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x3b, 0x80, 0x70, 0x1d, 0xc0, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x78, 0x3d, 0xe1, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xfe, 0x3f, 0xf8, 0xff, 0xcf, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0xff, 0x1f, 0xf0, 0x7f, 0x8f, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0xfe, 0x0f, 0xc0, 0x3f, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

// 'F-16_SpeedBrake Indicator_Open', 128x64px
const unsigned char myBitmap_Open [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x01, 0xc0, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x01, 0xc0, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};


// 'F-16_SpeedBrake Indicator_ELEC loss', 128x64px
const unsigned char myBitmap_Loss [] PROGMEM = {
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xe0, 0xff, 0xf0, 0x3f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x01, 0xff, 0x81, 0xff, 0xe0, 0xff, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc1, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x07, 0xff, 0x03, 0xff, 0x01, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x03, 0xff, 0x03, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xff, 0x07, 0xff, 0x83, 0xff, 0xc1, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x03, 0xff, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xf8, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x3f, 0xf0, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0x7f, 0xe0, 0x7f, 0xf8, 0x1f, 0xf8, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xe0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x80, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc1, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x1f, 0xf8, 0x1f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x1f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x07, 0xfe, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00
};


void setup() {
DcsBios::setup();

display.begin(SSD1306_SWITCHCAPVCC, 0x3c); // Address 0x3D or 0x3D for 128x64, need to try!
delay(4000);
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();

}


void loop() {
DcsBios::loop();
}




void onSpeedbrakeIndicatorChange(unsigned int newValue) {

if (newValue > 0) { // For Speed Brake deployed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Open, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
if (newValue == 0) { // For Speed Brake Closed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Closed, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
}
DcsBios::IntegerBuffer speedbrakeIndicatorBuffer(0x44c6, 0xffff, 0, onSpeedbrakeIndicatorChange);

Hi, this sketch is an older version for  DCS-Bios Hub .. 

It needs to be updated !

Thank you for this, but what do you mean by updated?  I loaded it with the current Bios and it works as far as I can tell?

13900KF NVD4090 32RAM G2

Posted
On 9/12/2024 at 1:48 PM, JohnnyChicago said:
#define DCSBIOS_IRQ_SERIAL



#include <Wire.h> // For OLED
#include <Adafruit_GFX.h> // For OLED
#include <Adafruit_SSD1306.h> // For OLED
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#include "DcsBios.h"


// 'F-16_SpeedBrake Indicator_Closed', 128x64px
const unsigned char myBitmap_Closed [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0x80, 0x0f, 0xc0, 0x3f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x80, 0x1f, 0xf0, 0x7f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0xf3, 0x80, 0x3c, 0x78, 0xf3, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x70, 0x3c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x3b, 0x80, 0x70, 0x1c, 0xe1, 0xce, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0xf8, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x7f, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1e, 0x3f, 0x8f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x80, 0xe0, 0x1c, 0x07, 0xcf, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x13, 0x80, 0x60, 0x1c, 0x01, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x3b, 0x80, 0x70, 0x1d, 0xc0, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x70, 0x7b, 0x80, 0x78, 0x3d, 0xe1, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xfe, 0x3f, 0xf8, 0xff, 0xcf, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0xff, 0x1f, 0xf0, 0x7f, 0x8f, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xc1, 0xfe, 0x0f, 0xc0, 0x3f, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

// 'F-16_SpeedBrake Indicator_Open', 128x64px
const unsigned char myBitmap_Open [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x01, 0xc0, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x01, 0xc0, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0x80, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x1f, 0xfc, 0x00, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};


// 'F-16_SpeedBrake Indicator_ELEC loss', 128x64px
const unsigned char myBitmap_Loss [] PROGMEM = {
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xe0, 0xff, 0xf0, 0x3f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x01, 0xff, 0x81, 0xff, 0xe0, 0xff, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc1, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x07, 0xff, 0x03, 0xff, 0x01, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x03, 0xff, 0x03, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xff, 0x07, 0xff, 0x83, 0xff, 0xc1, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x03, 0xff, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xf8, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x3f, 0xf0, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0x7f, 0xe0, 0x7f, 0xf8, 0x1f, 0xf8, 0x0f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x3f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x7f, 0xe0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x06, 0x07, 0xff, 0x03, 0xff, 0x80, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc1, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x1f, 0xf8, 0x1f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x1f, 0xf8, 0x1f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf0, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x04, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x7f, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0xff, 0xe0, 0x7f, 0xf8, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x81, 0xff, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xff, 0x80, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf8, 0x1f, 0xfc, 0x0f, 0xfe, 0x07, 0xff, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x07, 0xfe, 0x03, 0xe0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x07, 0xe0, 0x7f, 0xf0, 0x3f, 0xf8, 0x1f, 0xfc, 0x0f, 0xe0, 0x00, 0x00, 0x00
};


void setup() {
DcsBios::setup();

display.begin(SSD1306_SWITCHCAPVCC, 0x3c); // Address 0x3D or 0x3D for 128x64, need to try!
delay(4000);
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();

}


void loop() {
DcsBios::loop();
}




void onSpeedbrakeIndicatorChange(unsigned int newValue) {

if (newValue > 0) { // For Speed Brake deployed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Open, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
if (newValue == 0) { // For Speed Brake Closed
display.clearDisplay(); //for Clearing the display
display.drawBitmap(0, 0, myBitmap_Loss, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
delay(500);
display.clearDisplay(); //for Clearing the display, clears the buffer
display.drawBitmap(0, 0, myBitmap_Closed, 128, 64, WHITE); // display.drawBitmap(x position, y position, bitmap data, bitmap width, bitmap height, color)
display.display();
}
}
DcsBios::IntegerBuffer speedbrakeIndicatorBuffer(0x44c6, 0xffff, 0, onSpeedbrakeIndicatorChange);

Hi, this sketch is an older version for  DCS-Bios Hub .. 

It needs to be updated !

Cany you help me to edit this in order to rotate the display?

13900KF NVD4090 32RAM G2

Posted

@Hammer3246

Just put the following line into the void_setup() section, below the display.begin(...) statement:

display.setRotation(0); //rotates display on OLED, values: 0=0, 1=90, 2=180, 3=270 degrees

Rotation values have to be adjusted to your needs.

Regards, Vinc

  • Like 2

Regards, Vinc

real life: Royal Bavarian Airforce

online: VJS-GermanKnights.de

[sIGPIC][/sIGPIC]

Posted
Il 21/09/2024 at 13:32, Strale ha scritto:

Any sketch available for the std by gauges as
ASI, ALT and VVI  for the F-18 to be used with Qualia ? 

 

Not at all ?  

  • 2 weeks later...
Posted (edited)

These are "waveshare" brand  and cost R800.00+ almost $50.00

found in South Africa

Qualia has to be imported directly and makes it helluva expensive in the end!

Good job so far with the sketches! Be well!

image.jpeg

Edited by protea1

AMD FX-8350

PALLIT GeForce GTX 1080 [ NVIDIA]

CRUCIAL MX500 1TB SDD

DELL P4317Q 43"

TRACK IR

Thrustmaster Hotas Warthog

Viacom VoiceAttack

[sIGPIC][/sIGPIC]

Posted (edited)

So, after full 3 days of fiddeling around with the ILS code and the Arduino Uno - 7segment constellation (in  pain and desperation, I even asked ChatGPT to write a code for me), I finally brought up some light to the LEDs.

The display, a 8-digit I2C/SPI 7segment array was finally showing the frequency. I hooked up a rotary encoder and the kHz - numbers just flew over the digits.

Proudly I grabbed a K-040 rotary encoder and plugged it into the UNO and ..... the display frooze. To be honest it also happened from time to time with one encoder before. I think, the frequency change with the encoders is too fast for the Arduino.  I can't hardly tune in the right freq on the first attempt because the turning knob gives out so many pulses. Tried on a MEGA 2560; same result.

I searched the thread and discovered something about a "FOUR_STEPS_ENCODER", but it didn't do anything.

Only outcome was, my code couldn't be compiled.


I will put up the code , a big "Thank you" shouted out to Warhog , who wrote the code and still has it for download on his website. All credits go to him.

He built the code, I just modified it for my special needs (digits being numbered backward a.s.o.). Maybe it is a starting - point for another codeing rookie lioke me.

But mostly I hope, someone will look over it and find some slips I made to have such an inconsistent Arduino/ ILS combination.

Spoiler

ILS Code for 7 segment

#define DCSBIOS_IRQ_SERIAL
#define A_10C_ILS_FREQUENCY_S 0x135A
#define A_10C_ILS_FREQUENCY_S_ADDR 0x135A
#define A_10C_ILS_KHZ 0x1172
#define A_10C_ILS_KHZ_ADDR 0x1172
/*
ILS on a 7seg display and MAX 7219 
*/
#include <DcsBios.h>
#include <LedControl.h> 
#include <Addresses.h>


LedControl lc=LedControl(10,8,9,1);

DcsBios::Potentiometer ilsVol("ILS_VOL", A0);
DcsBios::ActionButton ilsPwrToggle("ILS_PWR", "TOGGLE", 6);

DcsBios::RotaryEncoder ilsKhz("ILS_KHZ", "DEC", "INC", 3, 2);  // possible values: "10" "15" "30" "35" "50" "55" "70" "75" "90" "95"
DcsBios::RotaryEncoder ilsMhz("ILS_MHZ", "DEC", "INC", 4, 5);  //possible values: "108" "109" "110" "111"


void setup() {
  DcsBios::setup(); //nothing for us to do here
//This initializes the MAX7219 and gets it ready of use:
  lc.shutdown(0,false); //turn on the display
  lc.setIntensity(0,2);//set the brightness 
  lc.clearDisplay(0); //clear the display 
 
//The following series of "lc.setChar" commmands are used to display the number 8 in each digit.  This allows us to see each that LED segment is actually working.
  //lc.setChar(0,0,' ',false);// The first number...0,  means there are no other MAX7219's connected to the one we are using. 
  //lc.setChar(0,1,'8',false);// The second number...1, indicates the digit you are sending data too...digit numbering starts at 0. 
  lc.setChar(0,2,'5',false);//  The third number in single quaotes is the character thats displayed
  lc.setChar(0,3,'2',false);// The statement... true/false is to turn on or off the decimal point (dp) for that particular digit. 
  lc.setChar(0,4,'-',true);
  lc.setChar(0,5,'0',false);
  lc.setChar(0,6,'1',false);
  //lc.setChar(0,7,'1',false);
 }

//7 SEGMENT DISPLAY DATA:
void onIlsFrequencySChange(char* newValue) {

}
DcsBios::StringBuffer<6> ilsFrequencySBuffer(A_10C_ILS_FREQUENCY_S_A, onIlsFrequencySChange);



void onIlsMhzChange(char* newValue) {  //newValue = 108 109 110 111
    lc.setChar(0, 6, newValue[0], false);
    lc.setChar(0, 5, newValue[1], false);
    lc.setChar(0, 4, newValue[2], true);
}
DcsBios::StringBuffer<3> ilsMhzStrBuffer(A_10C_ILS_MHZ_A, onIlsMhzChange);

void onIlsKhzChange(char* newValue) { //newValue =  10 15 30 35 50 55 70 75 90 95
    lc.setChar(0, 3, newValue[0], false);
    lc.setChar(0, 2, newValue[1], false);
}
DcsBios::StringBuffer<2> ilsKhzStrBuffer(A_10C_ILS_KHZ_A, onIlsKhzChange); 
  

void loop() {
  DcsBios::loop();
}

 

 

 

ils3.jpg

Edited by sharkfin61

Loads do it on the fly!    Loads.jpg     Royal Bavarian Airforce all the way

RIG: RYZEN 7  5800X3D~ ZOTAC 4080 Super ~ AORUS X570S Elite AX ~64 GB Corsair Venegance DDR-4 3600 ~ BeQuiet AIO Silent loop 2 360  watercooled ~ Samsung 890 Pro M.2 (2TB) + 870 EVO (1TB) SSD ~ WIN 10 64-bit ~ AOC 31.5" Gaming 144Hz Display ~ DelanClip@TrackIR 5 ~ TM Warthog no.2 ~Saitek rudder pedals~ 2 TM MFDs on 2nd 27"display ~ Buddyfox A-10 UFC ~ CDU/AAP panel via DCSBios ~ ARC-210 (soldering WIP) ~
QUEST 3 

 

Posted
6 hours ago, sharkfin61 said:

So, after full 3 days of fiddeling around with the ILS code and the Arduino Uno - 7segment constellation (in  pain and desperation, I even asked ChatGPT to write a code for me), I finally brought up some light to the LEDs.

The display, a 8-digit I2C/SPI 7segment array was finally showing the frequency. I hooked up a rotary encoder and the kHz - numbers just flew over the digits.

Proudly I grabbed a K-040 rotary encoder and plugged it into the UNO and ..... the display frooze. To be honest it also happened from time to time with one encoder before. I think, the frequency change with the encoders is too fast for the Arduino.  I can't hardly tune in the right freq on the first attempt because the turning knob gives out so many pulses. Tried on a MEGA 2560; same result.

I searched the thread and discovered something about a "FOUR_STEPS_ENCODER", but it didn't do anything.

Only outcome was, my code couldn't be compiled.

 

The four steps encoder thing DOES work.  You must have been doing it wrong.

As for the other problem:  Sometimes rotary encoders need capacitors on them to kill switch bounce.
e.g.
image.jpeg

Posted (edited)
vor 23 Stunden schrieb No1sonuk:

The four steps encoder thing DOES work.  You must have been doing it wrong.

As for the other problem:  Sometimes rotary encoders need capacitors on them to kill switch bounce.
e.g.
image.jpeg

That's 100 nano farad for the capacitor?

Can you tell me at which part of the code I have to put in the FOUR_STEPS_ENCODER parts? When I tried it, I put it in just right after the "#define" lines and changed the" DcsBios::RotaryEncoder ilsKhz" accordingly.

 
Edited by sharkfin61

Loads do it on the fly!    Loads.jpg     Royal Bavarian Airforce all the way

RIG: RYZEN 7  5800X3D~ ZOTAC 4080 Super ~ AORUS X570S Elite AX ~64 GB Corsair Venegance DDR-4 3600 ~ BeQuiet AIO Silent loop 2 360  watercooled ~ Samsung 890 Pro M.2 (2TB) + 870 EVO (1TB) SSD ~ WIN 10 64-bit ~ AOC 31.5" Gaming 144Hz Display ~ DelanClip@TrackIR 5 ~ TM Warthog no.2 ~Saitek rudder pedals~ 2 TM MFDs on 2nd 27"display ~ Buddyfox A-10 UFC ~ CDU/AAP panel via DCSBios ~ ARC-210 (soldering WIP) ~
QUEST 3 

 

Posted
38 minutes ago, sharkfin61 said:

That's 100 nano farad for the capacitor?

Can you tell me at which part of the code I have to put in the FOUR_STEPS_ENCODER parts? When I tried it, I put it in just right after the "#define" lines and changed the" DcsBios::RotaryEncoder ilsKhz" accordingly.

 

 

Yes. 100 nanoFarad.

Your code part was blank.
This part goes at the top, after the defines:

typedef DcsBios::RotaryEncoderT<POLL_EVERY_TIME, DcsBios::FOUR_STEPS_PER_DETENT> FourStepRotaryEncoder; // A custom rotary encoder with four quadrature steps per physical detent.

This is then how you'd use it:

FourStepRotaryEncoder ilsKhz("ILS_KHZ", "DEC", "INC", PIN_A, PIN_B);  //  Replace PIN_A, PIN_B as appropriate for your wiring
FourStepRotaryEncoder ilsMhz("ILS_MHZ", "DEC", "INC", PIN_A, PIN_B);  //  Replace PIN_A, PIN_B as appropriate for your wiring

Basically, "FourStepRotaryEncoder" replaces "DcsBios::RotaryEncoder" in the code lines.

Posted (edited)

I know guys, I'm very late for the party....

but maybe there are still some weirdos out there, building  a A-10C pit as well.

My first own (working) Arduino sketch: The Lighting Control Panel:

/* 
== The A-10C II lighting control panel for the use with an Arduino MEGA 2560 ==
My first approach to coding.
All GND and 5V cables are attached to a Breadboard with screw terminals and interconnected so I
had only to use a single 5V and Gnd connector on the Mega 2560. (So, in comparison to daisy-chaining the Grounds, I think it will be easier to change components
in case of failure)

If you have any proposals for improvement, you 'll find me in the DCS forums -->"sharkfin61".

Big shoutout to all creators of DcsBios, Bort, etc., Romeo Kilo ("The warthog project") and Scott ("THe Hornets Nest") for the years of inspiration and 
to all numerous helpers on my long way to sit in a cockpit.

2024/10/25  
Bavarian Airforce - all the way!
======================================================================================================
*/


int AccelTg = 2;
int SigLtTgBrt = 3;
int SigLtTgDim = 4;
int NoseLtTg = 5;
int PosSteady = 6;
int PosFlash = 7;
int AntiCollTg = 8;

int FloodLt = A1;
int ConsLt = A2;
int FltInsLt = A3;
int EngInsLt = A4;
int AuxInsLt = A5;
int FormLt = A6;


#define DCSBIOS_IRQ_SERIAL

#include "DcsBios.h"

// toggles

DcsBios::Switch2Pos lcpAccelComp("LCP_ACCEL_COMP", AccelTg);
DcsBios::Switch3Pos lcpSignalLights("LCP_SIGNAL_LIGHTS", SigLtTgBrt, SigLtTgDim);
DcsBios::Switch2Pos lcpNoseIllum("LCP_NOSE_ILLUM", NoseLtTg);
DcsBios::Switch3Pos lcpPosition("LCP_POSITION", PosSteady, PosFlash);
DcsBios::Switch2Pos lcpAnticollision("LCP_ANTICOLLISION", AntiCollTg);

// potentiometers

DcsBios::Potentiometer lcpFlood("LCP_FLOOD", FloodLt);
DcsBios::Potentiometer lcpConsole("LCP_CONSOLE", ConsLt);
DcsBios::Potentiometer lcpEngInst("LCP_ENG_INST", EngInsLt);
DcsBios::Potentiometer lcpFlightInst("LCP_FLIGHT_INST", FltInsLt);
DcsBios::Potentiometer lcpAuxInst("LCP_AUX_INST", AuxInsLt);
DcsBios::Potentiometer lcpFormation("LCP_FORMATION", FormLt);

void setup() {
  DcsBios::setup();

}

void loop() {
  DcsBios::loop();

}

 

 

LightingControlPanel.ino

Edited by sharkfin61

Loads do it on the fly!    Loads.jpg     Royal Bavarian Airforce all the way

RIG: RYZEN 7  5800X3D~ ZOTAC 4080 Super ~ AORUS X570S Elite AX ~64 GB Corsair Venegance DDR-4 3600 ~ BeQuiet AIO Silent loop 2 360  watercooled ~ Samsung 890 Pro M.2 (2TB) + 870 EVO (1TB) SSD ~ WIN 10 64-bit ~ AOC 31.5" Gaming 144Hz Display ~ DelanClip@TrackIR 5 ~ TM Warthog no.2 ~Saitek rudder pedals~ 2 TM MFDs on 2nd 27"display ~ Buddyfox A-10 UFC ~ CDU/AAP panel via DCSBios ~ ARC-210 (soldering WIP) ~
QUEST 3 

 

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...