Advertisement
inventrkits

panel

Jul 31st, 2023
4,334
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Arduino 47.74 KB | None | 0 0
  1. //
  2. //Program written by Bruce Bohnert
  3. //07-10-2023
  4. //
  5. //
  6. #include <Arduino.h>
  7. #include <SPI.h>
  8. #include <U8g2lib.h>
  9. #include <TM1637Display.h>
  10.  
  11. #define CLK 6  //pin assignment for TM1637
  12. #define DIO 5  //pin assignment for TM1637
  13.  
  14. U8G2_SH1106_128X64_NONAME_F_HW_I2C  u8g2Panel(U8G2_R0); // I2C / TWI
  15. //U8G2_SH1106_128X64  u8g2Panel(U8G_I2C_OPT_NONE); // I2C / TWI
  16. // PRE-SAVED BITMAP CONSTANTS
  17. TM1637Display LEDDisplay = TM1637Display(CLK, DIO);
  18.  
  19.  
  20. static const unsigned char LiquidO2Status [] U8X8_PROGMEM = {
  21.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  22.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  23.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x33, 0x00, 0x0C, 0xE0,
  24.   0x0F, 0x60, 0x00, 0x86, 0xC1, 0xFF, 0x00, 0x00, 0xF8, 0x03, 0xF0, 0xC3,
  25.   0x33, 0x00, 0x0C, 0xF8, 0x3F, 0x60, 0x00, 0x86, 0xC1, 0xFF, 0x03, 0x00,
  26.   0xFE, 0x0F, 0xF8, 0xC7, 0x33, 0x00, 0x0C, 0x3C, 0x78, 0x60, 0x00, 0x86,
  27.   0xC1, 0x00, 0x07, 0x00, 0x0F, 0x1E, 0x1C, 0xCE, 0x33, 0x00, 0x0C, 0x0C,
  28.   0x60, 0x60, 0x00, 0x86, 0xC1, 0x00, 0x0E, 0x00, 0x03, 0x18, 0x06, 0xDC,
  29.   0x33, 0x00, 0x0C, 0x06, 0xC0, 0x60, 0x00, 0x86, 0xC1, 0x00, 0x0C, 0x80,
  30.   0x01, 0x30, 0x06, 0xD8, 0x33, 0x00, 0x0C, 0x06, 0xC0, 0x60, 0x00, 0x86,
  31.   0xC1, 0x00, 0x18, 0x80, 0x01, 0x30, 0x00, 0xD8, 0x33, 0x00, 0x0C, 0x03,
  32.   0x80, 0x61, 0x00, 0x86, 0xC1, 0x00, 0x18, 0xC0, 0x00, 0x60, 0x00, 0xD8,
  33.   0x33, 0x00, 0x0C, 0x03, 0x80, 0x61, 0x00, 0x86, 0xC1, 0x00, 0x18, 0xC0,
  34.   0x00, 0x60, 0x00, 0xCC, 0x33, 0x00, 0x0C, 0x03, 0x80, 0x61, 0x00, 0x86,
  35.   0xC1, 0x00, 0x18, 0xC0, 0x00, 0x60, 0x00, 0xCC, 0x33, 0x00, 0x0C, 0x03,
  36.   0x80, 0x61, 0x00, 0x86, 0xC1, 0x00, 0x18, 0xC0, 0x00, 0x60, 0x00, 0xC6,
  37.   0x33, 0x00, 0x0C, 0x03, 0x80, 0x61, 0x00, 0x86, 0xC1, 0x00, 0x18, 0xC0,
  38.   0x00, 0x60, 0x00, 0xC3, 0x33, 0x00, 0x0C, 0x03, 0x80, 0x61, 0x00, 0x86,
  39.   0xC1, 0x00, 0x18, 0xC0, 0x00, 0x60, 0x80, 0xC1, 0x33, 0x00, 0x0C, 0x06,
  40.   0xC0, 0x61, 0x00, 0x86, 0xC1, 0x00, 0x1C, 0x80, 0x01, 0x30, 0xE0, 0xC0,
  41.   0x33, 0x00, 0x0C, 0x06, 0xC6, 0x60, 0x00, 0x86, 0xC1, 0x00, 0x0C, 0x80,
  42.   0x01, 0x30, 0x70, 0xC0, 0x33, 0x00, 0x0C, 0x0C, 0xFE, 0xC0, 0x00, 0x83,
  43.   0xC1, 0x00, 0x0E, 0x00, 0x03, 0x18, 0x18, 0xC0, 0x33, 0x00, 0x0C, 0x3C,
  44.   0x78, 0xC0, 0x81, 0x83, 0xC1, 0x00, 0x07, 0x00, 0x0F, 0x1E, 0x0C, 0xC0,
  45.   0xF3, 0x7F, 0x0C, 0xF0, 0xFF, 0x80, 0xFF, 0x81, 0xC1, 0xFF, 0x03, 0x00,
  46.   0xFC, 0x0F, 0xFE, 0xDF, 0xF3, 0x7F, 0x0C, 0xC0, 0xEF, 0x01, 0x7E, 0x80,
  47.   0xC1, 0xFF, 0x00, 0x00, 0xF8, 0x03, 0xFE, 0xDF, 0x03, 0x00, 0x00, 0x00,
  48.   0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  49.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  51.   0x00, 0x00, 0xFE, 0x3F, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  52.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xC0,
  53.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0xC0,
  54.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  55.   0x00, 0xC0, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  56.   0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x00, 0xC0,
  57.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF,
  58.   0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  59.   0x00, 0xE0, 0xFF, 0xFF, 0x03, 0xFC, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  60.   0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x73, 0x63, 0x03, 0xFE, 0x01, 0xC0,
  61.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xB9, 0x31,
  62.   0x03, 0x6E, 0x03, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  63.   0x00, 0xE0, 0xDC, 0x98, 0x03, 0x6F, 0x03, 0xC0, 0x03, 0x00, 0x00, 0x00,
  64.   0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x6E, 0xCC, 0x03, 0x6F, 0x06, 0xC0,
  65.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x37, 0x66,
  66.   0x03, 0x6F, 0x06, 0xC0, 0x0B, 0x04, 0x24, 0x00, 0x80, 0x07, 0x0F, 0x83,
  67.   0x00, 0xE0, 0x3B, 0x33, 0x03, 0x57, 0x03, 0xC0, 0x0B, 0x04, 0x24, 0x00,
  68.   0x40, 0x88, 0x90, 0x44, 0x00, 0xE0, 0x9D, 0x19, 0x03, 0x06, 0x03, 0xC0,
  69.   0x0B, 0x08, 0x22, 0x00, 0x40, 0x88, 0x90, 0x44, 0x00, 0xE0, 0xCE, 0x8C,
  70.   0x03, 0xFE, 0x01, 0xC0, 0x0B, 0x08, 0x22, 0x20, 0x40, 0x88, 0x90, 0x24,
  71.   0x00, 0x60, 0x67, 0xC6, 0x03, 0xF8, 0x00, 0xC0, 0x0B, 0x10, 0x21, 0x00,
  72.   0x40, 0x88, 0x90, 0x24, 0x00, 0xE0, 0x33, 0x63, 0x03, 0x30, 0x00, 0xC0,
  73.   0x0B, 0x10, 0x21, 0x00, 0x40, 0x0C, 0x0F, 0x93, 0x01, 0xE0, 0x99, 0x31,
  74.   0x03, 0x30, 0x00, 0xC0, 0x0B, 0x10, 0x21, 0x00, 0x80, 0x8B, 0x10, 0x48,
  75.   0x02, 0xE0, 0xCC, 0x18, 0x83, 0x31, 0x0C, 0xC0, 0x0B, 0xA0, 0x20, 0x00,
  76.   0x00, 0x88, 0x10, 0x48, 0x02, 0x60, 0x66, 0x8C, 0x83, 0x37, 0x0F, 0xC0,
  77.   0x0B, 0xA0, 0x20, 0x00, 0x40, 0x88, 0x10, 0x44, 0x02, 0x60, 0x33, 0xC6,
  78.   0x83, 0xBF, 0x0F, 0xC0, 0x0B, 0x40, 0x20, 0x00, 0x40, 0x88, 0x10, 0x44,
  79.   0x02, 0xE0, 0x19, 0x63, 0xFF, 0xF9, 0x0D, 0xC0, 0xFB, 0x43, 0xE0, 0x2F,
  80.   0x80, 0x07, 0x0F, 0x82, 0x01, 0xE0, 0x8C, 0x31, 0xFF, 0xF9, 0xFC, 0xC7,
  81.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xC6, 0x18,
  82.   0x83, 0xDF, 0xFF, 0xC7, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  83.   0x00, 0x60, 0x63, 0x8C, 0x83, 0x0F, 0x0F, 0xC0, 0x03, 0x00, 0x00, 0x00,
  84.   0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x31, 0xC6, 0x83, 0x03, 0x0C, 0xC0,
  85.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x18, 0x63,
  86.   0x83, 0x00, 0x08, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  87.   0x00, 0x60, 0x8C, 0x31, 0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  88.   0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xC6, 0x18, 0x03, 0x00, 0x00, 0xC0,
  89.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x63, 0x8C,
  90.   0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  91.   0x00, 0xE0, 0x31, 0xC6, 0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  92.   0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x18, 0x63, 0x03, 0x00, 0x00, 0xC0,
  93.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x8C, 0x31,
  94.   0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  95.   0x00, 0x60, 0xC6, 0x18, 0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  96.   0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x63, 0x8C, 0x03, 0x00, 0x00, 0xC0,
  97.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x31, 0xC6,
  98.   0x01, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  99.   0x00, 0xC0, 0x18, 0xE3, 0x01, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  100.   0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8F, 0xF1, 0x00, 0x00, 0x00, 0xC0,
  101.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x7F,
  102.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  103.   0x00, 0x00, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF,
  104.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  105.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  106.   0xFF, 0xFF, 0xFF, 0xFF, };
  107.  
  108.  
  109. static const unsigned char BatteryStatusScreen [] U8X8_PROGMEM = {
  110.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  111.   0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  112.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  113.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  114.   0x01, 0x80, 0x0B, 0x10, 0x5C, 0x5B, 0x05, 0x18, 0xDA, 0x41, 0x58, 0x2B,
  115.   0x20, 0x1C, 0x00, 0x80, 0x01, 0x80, 0x3F, 0x30, 0xFC, 0xFF, 0x07, 0x7E,
  116.   0xFE, 0x61, 0xF8, 0x6F, 0x30, 0x7E, 0x00, 0x80, 0x01, 0x80, 0x71, 0x38,
  117.   0xE0, 0xE0, 0x00, 0xC3, 0x38, 0xF0, 0xC0, 0x61, 0x30, 0x63, 0x00, 0x80,
  118.   0x01, 0xC0, 0x60, 0x78, 0x60, 0xC0, 0x00, 0xC3, 0x30, 0xF0, 0x80, 0x60,
  119.   0x30, 0xC1, 0x00, 0x80, 0x01, 0x80, 0x60, 0x6C, 0x60, 0xC0, 0x00, 0x43,
  120.   0x30, 0x90, 0x81, 0x61, 0x30, 0x03, 0x00, 0x80, 0x01, 0x80, 0x3F, 0xCC,
  121.   0x60, 0x40, 0x00, 0x1E, 0x30, 0x98, 0xC1, 0x60, 0x30, 0x1F, 0x00, 0x80,
  122.   0x01, 0xC0, 0x3F, 0xC4, 0x60, 0xC0, 0x00, 0x7C, 0x30, 0x18, 0x83, 0x61,
  123.   0x30, 0x7C, 0x00, 0x80, 0x01, 0x80, 0x60, 0xFE, 0x61, 0xC0, 0x00, 0xE0,
  124.   0x30, 0xFC, 0x83, 0x60, 0x30, 0x60, 0x00, 0x80, 0x01, 0xC0, 0xE0, 0xFE,
  125.   0x61, 0xC0, 0x80, 0x81, 0x30, 0xFC, 0x83, 0x61, 0xB0, 0xC1, 0x00, 0x80,
  126.   0x01, 0xC0, 0x61, 0x03, 0x61, 0xC0, 0x00, 0xC3, 0x30, 0x0C, 0x86, 0x60,
  127.   0xB0, 0xC1, 0x00, 0x80, 0x01, 0x80, 0x79, 0x03, 0x63, 0xC0, 0x00, 0xE7,
  128.   0x30, 0x06, 0xC6, 0xC1, 0x18, 0xE7, 0x00, 0x80, 0x01, 0x80, 0xBF, 0x01,
  129.   0x63, 0xC0, 0x00, 0x7E, 0x30, 0x06, 0x8C, 0xC0, 0x0F, 0x7E, 0x00, 0x80,
  130.   0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
  131.   0x02, 0x08, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  132.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  133.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x80,
  134.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  135.   0xFF, 0xFF, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  136.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x41, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  137.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x80,
  138.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  139.   0xFF, 0xFF, 0x41, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  140.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  141.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x41, 0x80,
  142.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  143.   0xFF, 0xFF, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  144.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x41, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  145.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x80,
  146.   0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  147.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  148.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0,
  149.   0x70, 0x0C, 0x1B, 0x02, 0x00, 0x78, 0x1C, 0x47, 0x00, 0x00, 0x00, 0x80,
  150.   0x01, 0x00, 0x00, 0xC0, 0x30, 0x0C, 0x19, 0x03, 0x06, 0x6C, 0xB2, 0x25,
  151.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0, 0x38, 0x1E, 0x3B, 0x02,
  152.   0x06, 0xC4, 0xB3, 0x34, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0,
  153.   0x39, 0x1A, 0x79, 0x02, 0x06, 0xC6, 0xBE, 0x17, 0x00, 0x00, 0x00, 0x80,
  154.   0x01, 0x00, 0x00, 0xE0, 0x39, 0x13, 0x49, 0xC3, 0x3F, 0xEC, 0x9E, 0xDB,
  155.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x40, 0x2D, 0xBF, 0xD9, 0x02,
  156.   0x06, 0xF8, 0x33, 0xE8, 0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x40,
  157.   0xAF, 0x3B, 0x8B, 0x03, 0x06, 0xC4, 0x23, 0xAC, 0x01, 0x00, 0x00, 0x80,
  158.   0x01, 0x00, 0x00, 0x40, 0xA6, 0x61, 0x19, 0x03, 0x06, 0x6C, 0x32, 0xA4,
  159.   0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0, 0xE6, 0xC0, 0x09, 0x03,
  160.   0x00, 0x38, 0x1E, 0xE6, 0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  161.   0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x80,
  162.   0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  163.   0x00, 0x00, 0x00, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  164.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  165.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x40, 0x80,
  166.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F,
  167.   0x00, 0x00, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  168.   0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  169.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x40, 0x80,
  170.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F,
  171.   0x00, 0x00, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  172.   0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF,
  173.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x40, 0x80,
  174.   0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F,
  175.   0x00, 0x00, 0x40, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  176.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x80, 0x01, 0x00, 0x00, 0x00,
  177.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  178.   0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  179.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x7E, 0x38, 0x0C, 0x00,
  180.   0xE0, 0x38, 0x8E, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  181.   0xEE, 0x28, 0x0C, 0x00, 0xB0, 0xD9, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x80,
  182.   0x01, 0x00, 0x00, 0x00, 0xC6, 0x3C, 0x0C, 0x62, 0x90, 0xCD, 0xD3, 0x00,
  183.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0xC6, 0x24, 0x0C, 0x7F,
  184.   0xB0, 0x8D, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  185.   0x7E, 0x34, 0x0C, 0x00, 0xF0, 0xC5, 0xAC, 0x03, 0x00, 0x00, 0x00, 0x80,
  186.   0x01, 0x00, 0x00, 0x00, 0xD6, 0x26, 0x0C, 0x6B, 0x18, 0xC5, 0xB0, 0x03,
  187.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x86, 0x32, 0x0C, 0x7F,
  188.   0x18, 0xC7, 0xD0, 0x02, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  189.   0xC6, 0x63, 0x04, 0x00, 0x98, 0x4D, 0xD8, 0x06, 0x00, 0x00, 0x00, 0x80,
  190.   0x01, 0x00, 0x00, 0x00, 0x7E, 0xC3, 0x07, 0x00, 0xF0, 0x79, 0x88, 0x03,
  191.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00,
  192.   0x00, 0x20, 0x08, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  193.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  194.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  195.   0xFF, 0xFF, 0xFF, 0xFF, };
  196.  
  197.  
  198. // PRE-SAVED BITMAP CONSTANTS
  199. static const unsigned char CryoTanksScreen [] U8X8_PROGMEM = {
  200.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  201.   0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  202.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  203.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  204.   0x01, 0x00, 0x1C, 0xBC, 0x08, 0x08, 0x0F, 0x70, 0x1D, 0x02, 0x82, 0x19,
  205.   0x94, 0x07, 0x00, 0x80, 0x01, 0x00, 0x7F, 0xFE, 0x19, 0x8C, 0x3F, 0xF0,
  206.   0x1F, 0x06, 0x83, 0x19, 0xCE, 0x0F, 0x00, 0x80, 0x01, 0x80, 0xE3, 0x8C,
  207.   0x3B, 0xCE, 0x71, 0x80, 0x03, 0x0F, 0x87, 0x19, 0xE7, 0x1C, 0x00, 0x80,
  208.   0x01, 0x80, 0xC1, 0x04, 0x33, 0x66, 0x60, 0x00, 0x01, 0x0F, 0x8F, 0x99,
  209.   0x63, 0x18, 0x00, 0x80, 0x01, 0xC0, 0x80, 0x0E, 0x67, 0x63, 0x60, 0x80,
  210.   0x83, 0x0D, 0x8F, 0xD9, 0x60, 0x00, 0x00, 0x80, 0x01, 0xC0, 0x00, 0xDC,
  211.   0xC3, 0x63, 0xC0, 0x00, 0x81, 0x19, 0x9B, 0xF9, 0xC0, 0x07, 0x00, 0x80,
  212.   0x01, 0xC0, 0x00, 0xFE, 0xC1, 0x61, 0xC0, 0x00, 0xC3, 0x19, 0xBB, 0xF9,
  213.   0x81, 0x1F, 0x00, 0x80, 0x01, 0xC0, 0x80, 0xEC, 0xC0, 0x60, 0xC0, 0x80,
  214.   0xC3, 0x3F, 0xB3, 0x99, 0x01, 0x1C, 0x00, 0x80, 0x01, 0xC0, 0x80, 0x8E,
  215.   0x81, 0x61, 0xE0, 0x00, 0xC3, 0x3F, 0xE3, 0x19, 0x63, 0x10, 0x00, 0x80,
  216.   0x01, 0x80, 0xC1, 0x06, 0xC3, 0xE0, 0x60, 0x00, 0x61, 0x70, 0xC3, 0x19,
  217.   0x66, 0x18, 0x00, 0x80, 0x01, 0x00, 0xE7, 0x0C, 0x87, 0xC1, 0x39, 0x80,
  218.   0x63, 0x60, 0xC3, 0x19, 0xEE, 0x1D, 0x00, 0x80, 0x01, 0x00, 0x3F, 0x0C,
  219.   0x86, 0x80, 0x1F, 0x00, 0x33, 0xE0, 0x83, 0x19, 0xDC, 0x0F, 0x00, 0x80,
  220.   0x01, 0x00, 0x14, 0x00, 0x82, 0x00, 0x02, 0x00, 0x20, 0x00, 0x00, 0x01,
  221.   0x00, 0x02, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  222.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x7C, 0xC2,
  223.   0xC2, 0x40, 0x00, 0x00, 0xA0, 0x17, 0x16, 0x84, 0x0D, 0x00, 0x00, 0x80,
  224.   0x01, 0x00, 0xFC, 0xC7, 0x62, 0xC0, 0x00, 0x00, 0xE0, 0x37, 0x36, 0x83,
  225.   0x1F, 0x00, 0x00, 0x80, 0x01, 0x00, 0x30, 0xC6, 0x36, 0xC0, 0x01, 0x00,
  226.   0x80, 0x39, 0x96, 0x83, 0x31, 0x00, 0x00, 0x80, 0x01, 0x00, 0x30, 0xCE,
  227.   0x1E, 0x60, 0x01, 0x00, 0x80, 0x71, 0xF6, 0x80, 0x11, 0x00, 0x00, 0x80,
  228.   0x01, 0x00, 0x30, 0xDB, 0x1E, 0x60, 0x03, 0x00, 0x80, 0xD1, 0xF6, 0x80,
  229.   0x1F, 0x00, 0x00, 0x80, 0x01, 0x00, 0x30, 0xDA, 0x36, 0xEF, 0x03, 0x00,
  230.   0x80, 0x91, 0xB7, 0xF9, 0x3F, 0x00, 0x00, 0x80, 0x01, 0x00, 0x30, 0xF3,
  231.   0x72, 0xF7, 0x07, 0x00, 0x80, 0xB1, 0x37, 0xF9, 0x31, 0x00, 0x00, 0x80,
  232.   0x01, 0x00, 0x30, 0xE2, 0x66, 0x30, 0x06, 0x00, 0x80, 0x11, 0x37, 0x83,
  233.   0x31, 0x00, 0x00, 0x80, 0x01, 0x00, 0x30, 0xE2, 0xC2, 0x18, 0x04, 0x00,
  234.   0x80, 0x19, 0x16, 0x86, 0x1F, 0x00, 0x00, 0x80, 0x01, 0x00, 0x20, 0x83,
  235.   0x02, 0x08, 0x04, 0x00, 0x80, 0x10, 0x26, 0x84, 0x05, 0x00, 0x00, 0x80,
  236.   0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  237.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  238.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  239.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  240.   0x01, 0x00, 0x00, 0xF0, 0xFF, 0x03, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x0F,
  241.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x00,
  242.   0x00, 0x30, 0x00, 0x18, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x06,
  243.   0x00, 0x18, 0x00, 0x00, 0x00, 0x08, 0x00, 0x20, 0x00, 0x00, 0x00, 0x80,
  244.   0x01, 0x00, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x60,
  245.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x00, 0x00,
  246.   0x00, 0x04, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF,
  247.   0xFF, 0x3F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80,
  248.   0x01, 0x00, 0x00, 0xFF, 0xDF, 0x3E, 0x00, 0x12, 0x00, 0x04, 0x00, 0x00,
  249.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xDF, 0xFF, 0x3F, 0x00, 0x12,
  250.   0x00, 0x06, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x7F,
  251.   0xFB, 0x3F, 0x00, 0x12, 0x00, 0xFE, 0xDF, 0x7F, 0x00, 0x00, 0x00, 0x80,
  252.   0x01, 0x00, 0x00, 0xFF, 0x7F, 0x3F, 0x00, 0x12, 0x00, 0xFC, 0xFF, 0xFF,
  253.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF, 0x7F, 0x3F, 0x00, 0x12,
  254.   0x00, 0xFE, 0x7F, 0xF7, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xE7,
  255.   0xFD, 0x36, 0x00, 0x12, 0x00, 0xDE, 0xF6, 0xFF, 0x00, 0x00, 0x00, 0x80,
  256.   0x01, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x00, 0x12, 0x00, 0x7E, 0xFF, 0xFE,
  257.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xBF, 0xEF, 0x3F, 0x00, 0x16,
  258.   0x00, 0xFC, 0xEF, 0xFF, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF,
  259.   0xBF, 0x3E, 0xE0, 0xFF, 0x03, 0xFE, 0xFE, 0xEF, 0x00, 0x00, 0x00, 0x80,
  260.   0x01, 0x00, 0x00, 0xDF, 0xFE, 0x3F, 0x20, 0x00, 0x02, 0x7C, 0xFF, 0xFB,
  261.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x30, 0x00,
  262.   0x02, 0xDE, 0xBF, 0xFF, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF,
  263.   0xB7, 0x3F, 0x10, 0x00, 0x02, 0xFE, 0xFB, 0xFB, 0x00, 0x00, 0x00, 0x80,
  264.   0x01, 0x00, 0x00, 0x7F, 0xFF, 0x3E, 0x00, 0x00, 0x02, 0xFE, 0xF7, 0xFF,
  265.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF, 0x7B, 0x3F, 0x30, 0x00,
  266.   0x02, 0xFC, 0xBF, 0xF7, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFF,
  267.   0xFE, 0x3F, 0x20, 0x00, 0x02, 0xBC, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x80,
  268.   0x01, 0x00, 0x00, 0xDF, 0xEF, 0x3F, 0xF0, 0xFF, 0x03, 0xFE, 0xFF, 0xFF,
  269.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFE, 0xFF, 0x1F, 0x80, 0x56,
  270.   0x00, 0xFC, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xFE,
  271.   0xFF, 0x1F, 0x80, 0x52, 0x00, 0xF8, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x80,
  272.   0x01, 0x00, 0x00, 0xFC, 0xFF, 0x0F, 0x80, 0x52, 0x00, 0xF0, 0xFF, 0x1F,
  273.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xF0, 0xFF, 0x03, 0x80, 0x52,
  274.   0x00, 0xE0, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  275.   0x09, 0x00, 0x80, 0x52, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x80,
  276.   0x01, 0x00, 0x00, 0x00, 0x09, 0x00, 0x80, 0x52, 0x00, 0x00, 0x90, 0x00,
  277.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0xF9, 0xFF, 0xFF, 0xD2,
  278.   0xFF, 0xFF, 0x9F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  279.   0x01, 0x00, 0x00, 0x16, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80,
  280.   0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFF, 0x00,
  281.   0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  282.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
  283.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  284.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  285.   0xFF, 0xFF, 0xFF, 0xFF, };
  286.  
  287. // PRE-SAVED BITMAP CONSTANTS
  288. static const unsigned char LifeSupportScreen [] U8X8_PROGMEM = {
  289.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  290.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  291.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00,
  292.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  293.   0x03, 0x40, 0x80, 0xF8, 0xF9, 0x03, 0x3C, 0x04, 0xE2, 0x87, 0x1F, 0x38,
  294.   0xF0, 0xE3, 0x0F, 0xC0, 0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x42, 0x04,
  295.   0x22, 0x88, 0x20, 0xC6, 0x10, 0x04, 0x01, 0xC0, 0x03, 0x40, 0x80, 0x08,
  296.   0x08, 0x00, 0x42, 0x04, 0x22, 0x88, 0x20, 0x82, 0x10, 0x04, 0x01, 0xC0,
  297.   0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x02, 0x04, 0x22, 0x88, 0x20, 0x01,
  298.   0x11, 0x04, 0x01, 0xC0, 0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x0C, 0x04,
  299.   0x22, 0x88, 0x20, 0x01, 0x11, 0x04, 0x01, 0xC0, 0x03, 0x40, 0x80, 0xF8,
  300.   0xF8, 0x01, 0x30, 0x04, 0xE2, 0x87, 0x1F, 0x01, 0xF1, 0x03, 0x01, 0xC0,
  301.   0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x40, 0x04, 0x22, 0x80, 0x00, 0x01,
  302.   0x11, 0x01, 0x01, 0xC0, 0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x40, 0x04,
  303.   0x22, 0x80, 0x00, 0x01, 0x11, 0x02, 0x01, 0xC0, 0x03, 0x40, 0x80, 0x08,
  304.   0x08, 0x00, 0x42, 0x04, 0x22, 0x80, 0x00, 0x82, 0x10, 0x04, 0x01, 0xC0,
  305.   0x03, 0x40, 0x80, 0x08, 0x08, 0x00, 0x42, 0x08, 0x21, 0x80, 0x00, 0xC6,
  306.   0x10, 0x04, 0x01, 0xC0, 0x03, 0xC0, 0x8F, 0x08, 0xF8, 0x03, 0x3C, 0xF0,
  307.   0x20, 0x80, 0x00, 0x38, 0x10, 0x08, 0x01, 0xC0, 0x03, 0x00, 0x00, 0x00,
  308.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  309.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  310.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  311.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  312.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  313.   0xC3, 0x81, 0xC0, 0x47, 0x82, 0x00, 0x0F, 0x07, 0x00, 0x00, 0x00, 0x80,
  314.   0xFF, 0x07, 0x00, 0xC0, 0x23, 0x82, 0x40, 0x48, 0x86, 0x80, 0x90, 0x08,
  315.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0x13, 0x44, 0x41, 0x48,
  316.   0x8A, 0x40, 0xA0, 0x08, 0x00, 0x00, 0x00, 0x80, 0x81, 0x07, 0x00, 0xC0,
  317.   0x13, 0x40, 0x41, 0x48, 0x8A, 0x40, 0x20, 0x08, 0x00, 0x00, 0x00, 0x80,
  318.   0x81, 0x07, 0x00, 0xC0, 0x13, 0x20, 0xC2, 0x47, 0x92, 0x40, 0x20, 0x04,
  319.   0x00, 0x00, 0x00, 0x80, 0xC1, 0x06, 0x00, 0xC0, 0x13, 0xE0, 0x43, 0x48,
  320.   0xA2, 0x40, 0x20, 0x02, 0x00, 0x00, 0x00, 0x80, 0x67, 0x06, 0x00, 0xC0,
  321.   0x13, 0x24, 0x42, 0x48, 0xA2, 0x40, 0x20, 0x01, 0x00, 0x00, 0x00, 0x80,
  322.   0x37, 0x06, 0x00, 0xC0, 0x23, 0x12, 0x44, 0x48, 0xC2, 0x80, 0x90, 0x00,
  323.   0x00, 0x00, 0x00, 0x80, 0x3D, 0x06, 0x00, 0xC0, 0xC3, 0x11, 0xC4, 0x47,
  324.   0x82, 0x00, 0x8F, 0x0F, 0x00, 0x00, 0x00, 0x80, 0x19, 0x06, 0x00, 0xC0,
  325.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  326.   0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  327.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  328.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  329.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  330.   0xFF, 0x07, 0x00, 0xC0, 0x23, 0xC8, 0x0F, 0xE1, 0xEF, 0xE7, 0xC3, 0x03,
  331.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0x23, 0x48, 0x00, 0x01,
  332.   0x21, 0x20, 0x24, 0x04, 0x00, 0x00, 0x00, 0x80, 0x81, 0x07, 0x00, 0xC0,
  333.   0x23, 0x48, 0x80, 0x02, 0x21, 0x20, 0x24, 0x00, 0x00, 0x00, 0x00, 0x80,
  334.   0xC1, 0x07, 0x00, 0xC0, 0x23, 0x48, 0x80, 0x02, 0x21, 0x20, 0x24, 0x00,
  335.   0x00, 0x00, 0x00, 0x80, 0xC5, 0x06, 0x00, 0xC0, 0xE3, 0xCF, 0x47, 0x04,
  336.   0xE1, 0xE3, 0xC3, 0x03, 0x00, 0x00, 0x00, 0x80, 0x67, 0x06, 0x00, 0xC0,
  337.   0x23, 0x48, 0xC0, 0x07, 0x21, 0x20, 0x02, 0x04, 0x00, 0x00, 0x00, 0x80,
  338.   0x3F, 0x06, 0x00, 0xC0, 0x23, 0x48, 0x40, 0x04, 0x21, 0x20, 0x04, 0x04,
  339.   0x00, 0x00, 0x00, 0x80, 0x1D, 0x06, 0x00, 0xC0, 0x23, 0x48, 0x20, 0x08,
  340.   0x21, 0x20, 0x24, 0x04, 0x00, 0x00, 0x00, 0x80, 0x19, 0x06, 0x00, 0xC0,
  341.   0x23, 0xC8, 0x2F, 0x08, 0xE1, 0x27, 0xC8, 0x03, 0x00, 0x00, 0x00, 0x80,
  342.   0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  343.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  344.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  345.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  346.   0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  347.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  348.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x81, 0x07, 0x00, 0xC0,
  349.   0x13, 0x42, 0x08, 0x7F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  350.   0xC1, 0x07, 0x00, 0xC0, 0x13, 0x45, 0x08, 0x08, 0x01, 0x41, 0x00, 0x00,
  351.   0x00, 0x00, 0x00, 0x80, 0xC1, 0x06, 0x00, 0xC0, 0x13, 0x45, 0x14, 0x08,
  352.   0x01, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x67, 0x06, 0x00, 0xC0,
  353.   0x13, 0x45, 0x14, 0x08, 0x01, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  354.   0x37, 0x06, 0x00, 0xC0, 0x23, 0x25, 0x14, 0x08, 0x1F, 0x3F, 0x00, 0x00,
  355.   0x00, 0x00, 0x00, 0x80, 0x3D, 0x06, 0x00, 0xC0, 0xA3, 0x28, 0x22, 0x08,
  356.   0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1D, 0x06, 0x00, 0xC0,
  357.   0xA3, 0x28, 0x3E, 0x08, 0x01, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  358.   0xFF, 0x07, 0x00, 0xC0, 0xA3, 0x28, 0x22, 0x08, 0x01, 0x41, 0x00, 0x00,
  359.   0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0xC0, 0xA3, 0x28, 0x41, 0x08,
  360.   0x01, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  361.   0x43, 0x10, 0x41, 0x08, 0x3F, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  362.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  363.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  364.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  365.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  366.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  367.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  368.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  369.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  370.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  371.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF,
  372.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  373.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  374.   0xFF, 0xFF, 0xFF, 0xFF, };
  375.  
  376. static const unsigned char IMUStatusScreen [] U8X8_PROGMEM = {
  377.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  378.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  379.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x33, 0x38, 0x00, 0x0E,
  380.   0x03, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0,
  381.   0x33, 0x78, 0x00, 0x0F, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  382.   0xF1, 0x07, 0x00, 0xC0, 0x33, 0x78, 0x00, 0x0F, 0x03, 0x30, 0x00, 0x00,
  383.   0x00, 0x00, 0x00, 0xE0, 0xF3, 0x03, 0x00, 0xC0, 0x33, 0xD8, 0x80, 0x0D,
  384.   0x03, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0, 0x87, 0x01, 0x00, 0xC0,
  385.   0x33, 0xD8, 0x80, 0x0D, 0x03, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  386.   0xC1, 0x00, 0x00, 0xC0, 0x33, 0xD8, 0x80, 0x0D, 0x03, 0x30, 0x00, 0x80,
  387.   0x20, 0x00, 0x00, 0x80, 0x61, 0x00, 0x00, 0xC0, 0x33, 0x98, 0xC1, 0x0C,
  388.   0x03, 0x30, 0x00, 0x00, 0x11, 0x00, 0x00, 0x80, 0xF1, 0x03, 0x00, 0xC0,
  389.   0x33, 0x98, 0xC1, 0x0C, 0x03, 0x30, 0x00, 0x00, 0x11, 0x00, 0x00, 0xC0,
  390.   0xFB, 0x03, 0x00, 0xC0, 0x33, 0x98, 0xC1, 0x0C, 0x03, 0x30, 0x00, 0x00,
  391.   0x0A, 0x00, 0x00, 0xFF, 0x7F, 0x00, 0x00, 0xC0, 0x33, 0x18, 0x63, 0x0C,
  392.   0x03, 0x30, 0x00, 0x00, 0x04, 0x3E, 0xC0, 0xBF, 0xFF, 0x01, 0x00, 0xC0,
  393.   0x33, 0x18, 0x63, 0x0C, 0x03, 0x30, 0x00, 0x00, 0x0A, 0x3E, 0xF0, 0x87,
  394.   0xF1, 0x07, 0x00, 0xC0, 0x33, 0x18, 0x63, 0x0C, 0x03, 0x30, 0x00, 0x00,
  395.   0x11, 0x1E, 0xBC, 0x83, 0xC1, 0x1E, 0x00, 0xC0, 0x33, 0x18, 0x36, 0x0C,
  396.   0x03, 0x30, 0x00, 0x00, 0x11, 0x3E, 0xCE, 0x80, 0x81, 0x39, 0x00, 0xC0,
  397.   0x33, 0x18, 0x36, 0x0C, 0x03, 0x30, 0x00, 0x80, 0x20, 0x66, 0x67, 0x80,
  398.   0x01, 0xE3, 0x00, 0xC0, 0x33, 0x18, 0x36, 0x0C, 0x06, 0x18, 0x00, 0x00,
  399.   0x00, 0xC0, 0x71, 0x80, 0x01, 0xC6, 0x01, 0xC0, 0x33, 0x18, 0x1C, 0x0C,
  400.   0x0E, 0x1C, 0x00, 0x00, 0x00, 0xC0, 0x31, 0x80, 0x01, 0x8E, 0x03, 0xC0,
  401.   0x33, 0x18, 0x1C, 0x0C, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x60, 0x1B, 0x80,
  402.   0x01, 0x0C, 0x83, 0xC0, 0x33, 0x18, 0x1C, 0x0C, 0xF0, 0x03, 0x00, 0x00,
  403.   0x00, 0x30, 0x1E, 0x80, 0x01, 0x18, 0xC6, 0xC3, 0x03, 0x00, 0x00, 0x00,
  404.   0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x0C, 0x80, 0x01, 0x18, 0x8C, 0xCF,
  405.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1C, 0x80,
  406.   0x01, 0x38, 0x9C, 0xCF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  407.   0x00, 0x0C, 0x76, 0x80, 0x01, 0x30, 0xF8, 0xC7, 0x43, 0x20, 0x40, 0xF0,
  408.   0x41, 0x20, 0xFE, 0xF9, 0x03, 0x0C, 0xE6, 0x80, 0x01, 0x30, 0x7C, 0xC3,
  409.   0xA3, 0x20, 0x40, 0x08, 0xC2, 0x20, 0x02, 0x08, 0x04, 0x06, 0xC6, 0x81,
  410.   0x01, 0x70, 0x3F, 0xC2, 0xA3, 0x20, 0x40, 0x04, 0x44, 0x21, 0x02, 0x08,
  411.   0x08, 0x06, 0x87, 0x83, 0x01, 0xE0, 0x33, 0xC0, 0xA3, 0x20, 0x40, 0x04,
  412.   0x40, 0x21, 0x02, 0x08, 0x08, 0x06, 0x03, 0x87, 0x01, 0xF8, 0x60, 0xC0,
  413.   0x13, 0x21, 0x40, 0x04, 0x40, 0x22, 0x02, 0x08, 0x08, 0x03, 0x03, 0x8E,
  414.   0x01, 0x7E, 0x60, 0xC0, 0x13, 0x21, 0x40, 0x84, 0x47, 0x22, 0xFE, 0x09,
  415.   0x08, 0x03, 0x03, 0x9C, 0xC1, 0x67, 0x60, 0xC0, 0x0B, 0x22, 0x40, 0x04,
  416.   0x44, 0x24, 0x02, 0x08, 0x08, 0x03, 0x03, 0xB8, 0xF1, 0x61, 0x60, 0xC0,
  417.   0xFB, 0x23, 0x40, 0x04, 0x44, 0x28, 0x02, 0x08, 0x08, 0x03, 0x03, 0xE0,
  418.   0x3D, 0xE0, 0x60, 0xC0, 0x0B, 0x22, 0x40, 0x04, 0x44, 0x28, 0x02, 0x08,
  419.   0x08, 0x03, 0x03, 0xC0, 0x0F, 0xC0, 0xC0, 0xC0, 0x07, 0x24, 0x40, 0x08,
  420.   0x42, 0x30, 0x02, 0x08, 0x04, 0x03, 0x03, 0xE0, 0x03, 0xC0, 0xC0, 0xC0,
  421.   0x07, 0xE4, 0x4F, 0xF0, 0x41, 0x20, 0xFE, 0xF9, 0x03, 0x03, 0x03, 0xF8,
  422.   0x03, 0xC0, 0xC0, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  423.   0x00, 0x03, 0x03, 0x9F, 0x07, 0xC0, 0xC0, 0xC0, 0x03, 0x00, 0x00, 0x00,
  424.   0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC3, 0x87, 0x0D, 0xE0, 0x60, 0xC0,
  425.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF3, 0x80,
  426.   0x39, 0x60, 0x60, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  427.   0x00, 0x03, 0x3F, 0x80, 0x71, 0x60, 0x60, 0xC0, 0x03, 0x00, 0x00, 0x00,
  428.   0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x0F, 0x80, 0xE1, 0x60, 0x60, 0xC0,
  429.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE6, 0x03, 0x80,
  430.   0xC1, 0x61, 0x60, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  431.   0x60, 0x7E, 0x06, 0x80, 0x81, 0x63, 0x30, 0xC0, 0x03, 0x00, 0x00, 0x00,
  432.   0x00, 0x00, 0x00, 0x00, 0x30, 0x1F, 0x06, 0x80, 0x01, 0x37, 0x30, 0xC0,
  433.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x0F, 0x06, 0x80,
  434.   0x01, 0x3E, 0x18, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  435.   0xF8, 0x0C, 0x06, 0x80, 0x01, 0x3C, 0x18, 0xC0, 0x03, 0x00, 0x00, 0x00,
  436.   0x00, 0x00, 0x00, 0x00, 0xF8, 0x19, 0x0C, 0x80, 0x01, 0x38, 0x0C, 0xC0,
  437.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x38, 0x0C, 0x80,
  438.   0x01, 0x78, 0x0C, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  439.   0x04, 0x31, 0x18, 0x80, 0x01, 0xDC, 0x06, 0xC0, 0x03, 0x00, 0x00, 0x00,
  440.   0x00, 0x00, 0x00, 0x00, 0x88, 0x60, 0x18, 0x80, 0x01, 0x8C, 0x03, 0xC0,
  441.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xC0, 0x30, 0x80,
  442.   0x01, 0x86, 0x33, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  443.   0x50, 0x80, 0x71, 0x80, 0x01, 0xC6, 0x36, 0xC0, 0x03, 0x00, 0x00, 0x00,
  444.   0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x67, 0x80, 0x01, 0x73, 0x3C, 0xC0,
  445.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xCE, 0x80,
  446.   0x81, 0x39, 0x3E, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  447.   0x20, 0x00, 0xBC, 0x83, 0xC1, 0x1E, 0x3E, 0xC0, 0x03, 0x00, 0x00, 0x00,
  448.   0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xF0, 0x87, 0xF1, 0x07, 0x00, 0xC0,
  449.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xC0, 0xFF,
  450.   0xFF, 0x01, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  451.   0x00, 0x00, 0x00, 0xFE, 0x3F, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  452.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0xC0,
  453.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  454.   0x01, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  455.   0x00, 0x00, 0x00, 0xA0, 0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  456.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x07, 0x00, 0x00, 0xC0,
  457.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0,
  458.   0x03, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  459.   0x00, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF,
  460.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  461.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  462.   0xFF, 0xFF, 0xFF, 0xFF, };
  463.  
  464. static const unsigned char GYROStatusScreen [] U8X8_PROGMEM = {  
  465.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  466.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  467.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00,
  468.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  469.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  470.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x3E, 0x06, 0xF6, 0x07, 0x3F, 0x80,
  471.   0xCF, 0x7F, 0x18, 0xFE, 0x0F, 0x8C, 0x0F, 0xC0, 0x03, 0x00, 0xFF, 0x0C,
  472.   0xF3, 0x8F, 0x7F, 0xC0, 0xDF, 0x7F, 0x1C, 0xFE, 0x0F, 0xCC, 0x1F, 0xC0,
  473.   0x03, 0x80, 0xC1, 0x0C, 0x33, 0xCC, 0xE1, 0xC0, 0x38, 0x0C, 0x3C, 0x30,
  474.   0x0C, 0x6C, 0x18, 0xC0, 0x03, 0xC0, 0x81, 0x99, 0x31, 0xCC, 0xC0, 0xC0,
  475.   0x30, 0x0C, 0x3C, 0x30, 0x0C, 0x6C, 0x18, 0xC0, 0x03, 0xC0, 0x00, 0xF0,
  476.   0x30, 0xCC, 0xC0, 0xC0, 0x01, 0x0C, 0x66, 0x30, 0x0C, 0xEC, 0x01, 0xC0,
  477.   0x03, 0xC0, 0x00, 0xF0, 0xF0, 0x6F, 0xC0, 0x80, 0x0F, 0x0C, 0x66, 0x30,
  478.   0x0C, 0xCC, 0x0F, 0xC0, 0x03, 0xC0, 0xF8, 0x61, 0xF0, 0x63, 0xC0, 0x00,
  479.   0x1E, 0x0C, 0x63, 0x30, 0x0C, 0x0C, 0x1F, 0xC0, 0x03, 0xC0, 0x80, 0x61,
  480.   0x30, 0xE7, 0xC0, 0x00, 0x30, 0x0C, 0xFF, 0x30, 0x0C, 0x0C, 0x38, 0xC0,
  481.   0x03, 0xC0, 0x80, 0x61, 0x30, 0xC6, 0xC0, 0x60, 0x30, 0x0C, 0xC3, 0x30,
  482.   0x18, 0x6C, 0x30, 0xC0, 0x03, 0x80, 0x81, 0x61, 0x30, 0xCC, 0x61, 0xC0,
  483.   0x30, 0x8C, 0x81, 0x31, 0x18, 0x66, 0x38, 0xC0, 0x03, 0x00, 0xFF, 0x61,
  484.   0x30, 0x9C, 0x7F, 0xC0, 0x1F, 0x8C, 0x81, 0x31, 0xF8, 0xC7, 0x1F, 0xC0,
  485.   0x03, 0x00, 0x7E, 0x60, 0x30, 0x18, 0x1F, 0x80, 0x0F, 0xCC, 0x80, 0x33,
  486.   0xE0, 0x83, 0x0F, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  487.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  488.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  489.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  490.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  491.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  492.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xC0,
  493.   0x03, 0x63, 0x60, 0xF0, 0xF1, 0xF9, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  494.   0x04, 0x10, 0x00, 0xC0, 0x03, 0x36, 0xE0, 0x98, 0x1B, 0x1B, 0x0C, 0x00,
  495.   0x00, 0x00, 0x00, 0x00, 0x04, 0x14, 0x00, 0xC0, 0x03, 0x1E, 0xF0, 0x0C,
  496.   0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x12, 0x00, 0xC0,
  497.   0x03, 0x1C, 0xB0, 0x0C, 0x0C, 0xF8, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  498.   0x04, 0x11, 0x00, 0xC0, 0x03, 0x9C, 0x97, 0x0D, 0x0C, 0xF8, 0x0D, 0x00,
  499.   0x00, 0x00, 0x00, 0x00, 0x0C, 0x11, 0x00, 0xC0, 0x03, 0x9E, 0xFF, 0x0D,
  500.   0x0E, 0x1A, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x10, 0x00, 0xC0,
  501.   0x03, 0x36, 0x18, 0x1B, 0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00,
  502.   0x64, 0x10, 0x00, 0xC0, 0x03, 0x63, 0x0C, 0xFB, 0xF9, 0xF9, 0xFD, 0x00,
  503.   0x00, 0x00, 0x00, 0x00, 0x44, 0x10, 0x00, 0xC0, 0x83, 0x61, 0x0C, 0xF6,
  504.   0xE0, 0xF8, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x10, 0x00, 0xC0,
  505.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  506.   0xFC, 0x1F, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  507.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  508.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  509.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  510.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  511.   0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  512.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x10, 0x00, 0xC0,
  513.   0x83, 0x61, 0x60, 0xF0, 0xF1, 0xF9, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  514.   0x04, 0x14, 0x00, 0xC0, 0x03, 0x33, 0xE0, 0x98, 0xBB, 0x1B, 0x0C, 0x00,
  515.   0x00, 0x00, 0x00, 0x00, 0x04, 0x14, 0x00, 0xC0, 0x03, 0x36, 0xF0, 0x0C,
  516.   0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x12, 0x00, 0xC0,
  517.   0x03, 0x1E, 0xB0, 0x0C, 0x0C, 0xF8, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  518.   0x04, 0x11, 0x00, 0xC0, 0x03, 0x8C, 0x97, 0x0D, 0x0C, 0xF8, 0x0D, 0x00,
  519.   0x00, 0x00, 0x00, 0x00, 0x8C, 0x10, 0x00, 0xC0, 0x03, 0x8C, 0xFF, 0x0D,
  520.   0x0F, 0x1A, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x10, 0x00, 0xC0,
  521.   0x03, 0x0C, 0x18, 0x0B, 0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00,
  522.   0x64, 0x10, 0x00, 0xC0, 0x03, 0x0C, 0x0C, 0xFB, 0xF9, 0xF9, 0xFD, 0x00,
  523.   0x00, 0x00, 0x00, 0x00, 0x04, 0x10, 0x00, 0xC0, 0x03, 0x0C, 0x0C, 0xF2,
  524.   0xF0, 0xF8, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xC0,
  525.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  526.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  527.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  528.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
  529.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  530.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  531.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00,
  532.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xC0,
  533.   0x03, 0x7F, 0x60, 0xF0, 0xF1, 0xF9, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  534.   0x04, 0x14, 0x00, 0xC0, 0x03, 0x3F, 0xE0, 0xB8, 0xBB, 0xFB, 0x0D, 0x00,
  535.   0x00, 0x00, 0x00, 0x00, 0x04, 0x14, 0x00, 0xC0, 0x03, 0x30, 0xF0, 0x0C,
  536.   0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x12, 0x00, 0xC0,
  537.   0x03, 0x18, 0xB0, 0x0C, 0x0C, 0xF8, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00,
  538.   0x04, 0x11, 0x00, 0xC0, 0x03, 0x8C, 0x97, 0x0D, 0x0C, 0xF8, 0x0D, 0x00,
  539.   0x00, 0x00, 0x00, 0x00, 0x8C, 0x10, 0x00, 0xC0, 0x03, 0x86, 0xFF, 0x0D,
  540.   0x0E, 0x1A, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x10, 0x00, 0xC0,
  541.   0x03, 0x02, 0x18, 0x0B, 0x1B, 0x1B, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00,
  542.   0x64, 0x10, 0x00, 0xC0, 0x03, 0x7F, 0x0C, 0xFB, 0xB9, 0xF9, 0xFD, 0x00,
  543.   0x00, 0x00, 0x00, 0x00, 0x44, 0x10, 0x00, 0xC0, 0x03, 0x7F, 0x0C, 0xF6,
  544.   0xF0, 0xF9, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xC0,
  545.   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  546.   0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  547.   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF,
  548.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  549.   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  550.   0xFF, 0xFF, 0xFF, 0xFF, };
  551.  
  552. int draw_state = 0;
  553. const uint8_t all_on[] = {0xff, 0xff, 0xff, 0xff};
  554. const uint8_t blank[] = {0x00, 0x00, 0x00, 0x00};
  555. const byte SEG_DONE[] = {
  556.   SEG_B | SEG_C | SEG_D | SEG_E | SEG_G,           // d
  557.   SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F,   // O
  558.   SEG_C | SEG_E | SEG_G,                           // n
  559.   SEG_A | SEG_D | SEG_E | SEG_F | SEG_G            // E
  560. };
  561. const byte seg_A[] ={
  562.   SEG_A,SEG_A,SEG_A,SEG_A};
  563.  
  564. const byte seg_B[] ={
  565.   SEG_B,SEG_B,SEG_B,SEG_B};
  566.  
  567.   const byte seg_C[] ={
  568.   SEG_C,SEG_C,SEG_C,SEG_C};
  569.  
  570.   const byte seg_D[] ={
  571.   SEG_D,SEG_D,SEG_D,SEG_D};
  572.  
  573.   const byte seg_E[] ={
  574.   SEG_E,SEG_E,SEG_E,SEG_E};
  575.  
  576.   const byte seg_F[] ={
  577.   SEG_F,SEG_F,SEG_F,SEG_F};
  578.  
  579.   const byte seg_G[] ={
  580.   SEG_G,SEG_G,SEG_G,SEG_G};
  581.  
  582.   int redLED = 4;
  583.   int yelLED = A3;
  584.   int bluLED = A2;
  585.   int grnLED = A1;
  586.   int whtLED = 10;
  587.   int swADV = 3;  //additional pushbutton switch for undefined function
  588.   int swENT = 2;  //additional pushbutton switch for undefined function
  589.   int sw = 7;  //rotary encoder switch
  590.   int outputA = 8; //Rotary encoder dt
  591.   int outputB = 9; //Rotary encoder clk
  592.   int altitude = 90;  //Rotary encoder var to count steps (simulated altitude)
  593.   int currentStateA;
  594.   int lastStateA;
  595.   byte abortFlag = 0;
  596.   long randNumb;
  597.   const int beep = 11;  //pin for tone output
  598.  
  599. void setup(void) {
  600.   Serial.begin(9600);
  601.  
  602.   // Just to know which program is running on my Arduino. Useful if you have several micros or just forgot the file name
  603.   Serial.println(F("START " __FILE__ " from " __DATE__ " at "__TIME__ ));
  604.  
  605.   u8g2Panel.begin();
  606.   u8g2Panel.setColorIndex(1); // pixel on
  607.   LEDDisplay.clear();
  608.   pinMode(redLED, OUTPUT);
  609.   pinMode(yelLED, OUTPUT);
  610.   pinMode(bluLED, OUTPUT);
  611.   pinMode(grnLED, OUTPUT);
  612.   pinMode(whtLED, OUTPUT);  
  613.   pinMode(swADV, INPUT_PULLUP);
  614.   pinMode(swENT, INPUT_PULLUP);
  615.   pinMode(outputA,INPUT);
  616.   pinMode(outputB,INPUT);
  617.   pinMode(sw, INPUT_PULLUP);
  618.  
  619.   randomSeed(analogRead(0));  //set a random seed number for the random number generator; reads noise on the A0 pin
  620. }
  621.  
  622. void loop(void) {
  623.  
  624.     // Set the brightness:
  625.   LEDDisplay.setBrightness(7);
  626.   // All segments on to test the TM1637 LED display
  627.   LEDDisplay.setSegments(all_on);
  628.   delay(2000);
  629.   LEDDisplay.clear();
  630.   delay(1000);  
  631.   tone(beep,1500,50);
  632.   delay(50);
  633.   tone(beep,1000,50);
  634.  
  635.   dwnldFSW(); //draws screen to show Flight Software loading
  636.  
  637. // picture loop
  638.   for(int i = 0; i <=7; ++i) { //var i cycles through the different system status pages and major flight modes automatically - no othere logic control
  639.     u8g2Panel.clearBuffer();
  640.     draw();
  641.     u8g2Panel.sendBuffer();
  642.     delay(2000);
  643.     // increase the state
  644.     draw_state++;
  645.     int x;
  646.     for (x = 0; x <= 9; x++) {  //throw some numbers up on the LED display. Use
  647.       randNumb = random(0, 9000);
  648.       LEDDisplay.showNumberDec(randNumb,1,4,0);  // default is 4 digits with leading zero disabled
  649.       delay(100);
  650.     }
  651.   }
  652.   if (draw_state >= 5) draw_state = 0;
  653.  
  654. }  //End loop()
  655.  
  656. void draw(void) {
  657.   switch(draw_state){
  658.     case 0: break;
  659.     case 1: clrDiscLEDS();
  660.             digitalWrite(redLED , HIGH);
  661.             u8g2Panel.drawXBMP( 0, 0, 128, 64, BatteryStatusScreen);
  662.             break;
  663.     case 2: clrDiscLEDS();
  664.             digitalWrite(yelLED,1);            
  665.             u8g2Panel.drawXBMP( 0, 0, 128, 64, LiquidO2Status);
  666.             break;
  667.     case 3: clrDiscLEDS();
  668.             digitalWrite(yelLED , HIGH);
  669.             u8g2Panel.drawXBMP( 0, 0, 128, 64, LifeSupportScreen);
  670.             break;
  671.     case 4: clrDiscLEDS();
  672.             digitalWrite(bluLED , HIGH);
  673.             u8g2Panel.drawXBMP( 0, 0, 128, 64, GYROStatusScreen);
  674.             break;
  675.     case 5: clrDiscLEDS();
  676.             digitalWrite(bluLED , HIGH);
  677.             u8g2Panel.drawXBMP( 0, 0, 128, 64, IMUStatusScreen);
  678.             break;
  679.     case 6: clrDiscLEDS();
  680.             digitalWrite(grnLED , HIGH);
  681.             u8g2Panel.drawXBMP( 0, 0, 128, 64, CryoTanksScreen);
  682.             break;
  683.     case 7: clrDiscLEDS();
  684.             for(byte loopcnt = 0; loopcnt <= 3; loopcnt++){
  685.               for(byte ledvalue = 0; ledvalue <= 250; ledvalue +=10){
  686.                 analogWrite(whtLED, ledvalue);
  687.                 delay(10);
  688.               }    
  689.             }
  690.             analogWrite(whtLED,125);   //leave whtLED on medium brightness
  691.             movKnobMsg();
  692.             doRotary();
  693.             if (abortFlag == 0){
  694.               tchdownMsg();
  695.               setDiscLEDS();
  696.               delay(1000);
  697.               clrDiscLEDS;
  698.             } else{
  699.               abortMsg();
  700.             }
  701.             clrDiscLEDS();  //clear all discrete LEDs and wait here forever
  702.             while (1);  //loop here endlessly  
  703.             break;
  704.  
  705.   }
  706.  
  707. }
  708.  
  709.  
  710. void dwnldFSW (void){
  711.   int progress = 0;
  712.   byte segnum = 0;
  713.   do {
  714.     u8g2Panel.firstPage();
  715.     do {
  716.       u8g2Panel.setFont(u8g2_font_saikyosansbold8_8u);
  717.       u8g2Panel.drawStr(20,10,"DOWNLOADING");
  718.       u8g2Panel.drawStr(7,20,"FLIGHT SOFTWARE");
  719.       u8g2Panel.drawStr(17,60,"VER. 4.10.2A");
  720.       u8g2Panel.drawFrame(14,24,100,24);
  721.       u8g2Panel.drawBox(15,25,progress,23);
  722.     } while ( u8g2Panel.nextPage() );
  723.     segDisplay(segnum);
  724.     segnum++;
  725.     if(segnum >= 6) segnum = 0;
  726.     progress += 2;
  727.  
  728.   }while (progress < 100);
  729.  
  730.   LEDDisplay.setSegments(SEG_DONE);
  731.   delay(2000);
  732. }
  733.  
  734. void liftoff (void){
  735.   do{
  736.     u8g2Panel.firstPage();
  737.     u8g2Panel.setFont(u8g2_font_luBS18_tr);
  738.     u8g2Panel.drawStr(10,25, "LIFTOFF");
  739.     u8g2Panel.drawStr(10,50, "SUCCESS");
  740.   } while ( u8g2Panel.nextPage() );    
  741.  
  742. }
  743.  
  744. void tchdownMsg (void){
  745.   do{
  746.     u8g2Panel.firstPage();
  747.     u8g2Panel.setFont(u8g2_font_luBS18_tr);
  748.     u8g2Panel.drawStr(10,25,"TOUCH-");
  749.     u8g2Panel.drawStr(5,50," DOWN!");
  750.   } while ( u8g2Panel.nextPage() );    
  751.  
  752. }
  753.  
  754. void movKnobMsg (void){
  755.   do{
  756.     u8g2Panel.firstPage();
  757.     //u8g2Panel.setFont(u8g2_font_luBS18_tr);
  758.     u8g2Panel.setFont(u8g2_font_helvB12_tr);
  759.     u8g2Panel.drawStr(5,20,"ROTATE KNOB");
  760.     u8g2Panel.drawStr(12,40," TO REDUCE");
  761.     u8g2Panel.drawStr(22,60,"ALTITUDE");
  762.   } while ( u8g2Panel.nextPage() );    
  763.  
  764. }
  765.  
  766. void abortMsg (void){
  767.   do{
  768.     u8g2Panel.firstPage();
  769.     //u8g2Panel.setFont(u8g2_font_luBS18_tr);
  770.     u8g2Panel.setFont(u8g2_font_helvB12_tr);
  771.     u8g2Panel.drawStr(20,20,"LANDING");
  772.     u8g2Panel.drawStr(20,40,"ABORTED");
  773.     u8g2Panel.drawStr(13,60,"TRY AGAIN!");
  774.   } while ( u8g2Panel.nextPage() );      
  775. }
  776.  
  777. void doRotary (void){
  778.   LEDDisplay.clear();
  779.   LEDDisplay.showNumberDec(altitude,1,3,1);
  780.   altitude = 90;  //set initial value of altitude (altitude of craft in this case)
  781.   do{  //Main rotary encoder processing starts here. Values from 0 - 180 are allowed. limits are set by S/W
  782.   // Read the current state of outputA
  783.     currentStateA = digitalRead(outputA);
  784.  
  785.   // If last and current state of outputA are different, then pulse occurred
  786.   // React to only 1 state change to avoid double count
  787.     if (currentStateA != lastStateA  && currentStateA == 1){
  788.  
  789.      // Encoder is rotating CW so increment
  790.       if (digitalRead(outputB) != currentStateA) {
  791.         altitude ++;
  792.         if(altitude > 180) altitude = 180;  //limit upper count to '9'
  793.        
  794.       } else {
  795.  
  796.     // If the outputB state is different than the outputA state then
  797.     // the encoder is rotating CCW so decrement
  798.         altitude --;
  799.         if(altitude < 0) altitude = 0;  //limit lower count to '0' (no negative)
  800.      
  801.       }
  802.     LEDDisplay.showNumberDec(altitude,1,3,1);  //showNumberDec(int var to display, bool leading zero - 1=true, byte # of digits (0-3), byte starting position of var (0-3)  )
  803.  
  804.   }
  805.  
  806.   lastStateA = currentStateA;
  807.   //slight debounce delay
  808.   delay(1);
  809.   //check if Rotary Encoder switch was pressed simulating an ABORT landing procedure
  810.   if(digitalRead(sw) == 0){  //rotary encoder switch pressed!
  811.     abortFlag = 1;
  812.   };
  813.  
  814.   } while (altitude > 0 && abortFlag == 0);
  815.  
  816. }  //End function doRotary()
  817.  
  818. void segDisplay(byte segid){
  819.   switch (segid) {
  820.     case 0:
  821.       LEDDisplay.setSegments(seg_A);
  822.       break;
  823.     case 1:
  824.       LEDDisplay.setSegments(seg_B);
  825.       break;
  826.     case 2:
  827.       LEDDisplay.setSegments(seg_C);
  828.       break;      
  829.     case 3:
  830.       LEDDisplay.setSegments(seg_D);
  831.       break;
  832.     case 4:
  833.       LEDDisplay.setSegments(seg_E);
  834.       break;
  835.     case 5:
  836.       LEDDisplay.setSegments(seg_F);
  837.       break;
  838.     default:
  839.       break;
  840.  
  841.   }
  842. }
  843.  
  844. void setDiscLEDS(void){
  845.   digitalWrite(redLED,HIGH);
  846.   digitalWrite(yelLED,HIGH);
  847.   digitalWrite(bluLED,HIGH);
  848.   digitalWrite(grnLED,HIGH);
  849.   digitalWrite(whtLED,HIGH);  
  850. }
  851.  
  852. void clrDiscLEDS(void){
  853.   digitalWrite(redLED,LOW);
  854.   digitalWrite(yelLED,LOW);
  855.   digitalWrite(bluLED,LOW);
  856.   digitalWrite(grnLED,LOW);
  857.   digitalWrite(whtLED,LOW);
  858. }
  859.  
Advertisement
Comments
  • diyakabir0257
    1 year
    # text 0.12 KB | 0 0
    1. Thanks for sharing this useful code with us.
    2.  
    3. Best Regards,
    4. Diya Kabir-Marketing Specialist
    5. https://psdigitise.com/
Add Comment
Please, Sign In to add comment
Advertisement