kopia lustrzana https://github.com/meshtastic/firmware
				
				
				
			Merge branch 'master' into raspi-portduino
						commit
						7d0bea267a
					
				| 
						 | 
				
			
			@ -73,6 +73,7 @@ jobs:
 | 
			
		|||
          - board: m5stack-coreink
 | 
			
		||||
          - board: tbeam-s3-core
 | 
			
		||||
          - board: tlora-t3s3-v1
 | 
			
		||||
          - board: nano-g1-explorer
 | 
			
		||||
    uses: ./.github/workflows/build_esp32.yml
 | 
			
		||||
    with:
 | 
			
		||||
      board: ${{ matrix.board }}
 | 
			
		||||
| 
						 | 
				
			
			@ -92,16 +93,16 @@ jobs:
 | 
			
		|||
    with:
 | 
			
		||||
      board: ${{ matrix.board }}
 | 
			
		||||
 | 
			
		||||
  build-rpi2040:
 | 
			
		||||
    strategy:
 | 
			
		||||
      fail-fast: false
 | 
			
		||||
      max-parallel: 2
 | 
			
		||||
      matrix:
 | 
			
		||||
        include:
 | 
			
		||||
          - board: pico
 | 
			
		||||
    uses: ./.github/workflows/build_rpi2040.yml
 | 
			
		||||
    with:
 | 
			
		||||
      board: ${{ matrix.board }}
 | 
			
		||||
  # build-rpi2040:
 | 
			
		||||
  #   strategy:
 | 
			
		||||
  #     fail-fast: false
 | 
			
		||||
  #     max-parallel: 2
 | 
			
		||||
  #     matrix:
 | 
			
		||||
  #       include:
 | 
			
		||||
  #         - board: pico
 | 
			
		||||
  #   uses: ./.github/workflows/build_rpi2040.yml
 | 
			
		||||
  #   with:
 | 
			
		||||
  #     board: ${{ matrix.board }}
 | 
			
		||||
 | 
			
		||||
  build-native:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
| 
						 | 
				
			
			@ -175,7 +176,7 @@ jobs:
 | 
			
		|||
 | 
			
		||||
  gather-artifacts:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [build-esp32, build-nrf52, build-native, build-rpi2040]
 | 
			
		||||
    needs: [build-esp32, build-nrf52, build-native] #, build-rpi2040]
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout code
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1 +1 @@
 | 
			
		|||
Subproject commit cb01d7472fc22321652a5471155dfc6c04a612ab
 | 
			
		||||
Subproject commit 05f49816cd8d7d405e052753f0aee8275cf33d36
 | 
			
		||||
| 
						 | 
				
			
			@ -2,6 +2,6 @@
 | 
			
		|||
#ifdef USE_RF95
 | 
			
		||||
#define RF95_RESET LORA_RESET
 | 
			
		||||
#define RF95_IRQ LORA_DIO0  // on SX1262 version this is a no connect DIO0
 | 
			
		||||
#define RF95_DIO1 LORA_DIO1 // Note: not really used for RF95
 | 
			
		||||
#define RF95_DIO1 LORA_DIO1 // Note: not really used for RF95, but used for pure SX127x
 | 
			
		||||
#define RF95_DIO2 LORA_DIO2 // Note: not really used for RF95
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -50,6 +50,10 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#include "fonts/OLEDDisplayFontsRU.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_UA
 | 
			
		||||
#include "fonts/OLEDDisplayFontsUA.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
using namespace meshtastic; /** @todo remove */
 | 
			
		||||
 | 
			
		||||
namespace graphics
 | 
			
		||||
| 
						 | 
				
			
			@ -106,8 +110,12 @@ static uint16_t displayWidth, displayHeight;
 | 
			
		|||
#ifdef OLED_RU
 | 
			
		||||
#define FONT_SMALL ArialMT_Plain_10_RU
 | 
			
		||||
#else
 | 
			
		||||
#ifdef OLED_UA
 | 
			
		||||
#define FONT_SMALL ArialMT_Plain_10_UA
 | 
			
		||||
#else
 | 
			
		||||
#define FONT_SMALL ArialMT_Plain_10 // Height: 13
 | 
			
		||||
#endif
 | 
			
		||||
#endif
 | 
			
		||||
#define FONT_MEDIUM ArialMT_Plain_16 // Height: 19
 | 
			
		||||
#define FONT_LARGE ArialMT_Plain_24  // Height: 28
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -240,6 +240,12 @@ class Screen : public concurrency::OSThread
 | 
			
		|||
        // library have empty chars for non-latin ASCII symbols
 | 
			
		||||
        case 0xD0: {
 | 
			
		||||
            SKIPREST = false;
 | 
			
		||||
            if (ch == 132)
 | 
			
		||||
                return (uint8_t)(170); // Є
 | 
			
		||||
            if (ch == 134)
 | 
			
		||||
                return (uint8_t)(178); // І
 | 
			
		||||
            if (ch == 135)
 | 
			
		||||
                return (uint8_t)(175); // Ї
 | 
			
		||||
            if (ch == 129)
 | 
			
		||||
                return (uint8_t)(168); // Ё
 | 
			
		||||
            if (ch > 143 && ch < 192)
 | 
			
		||||
| 
						 | 
				
			
			@ -248,12 +254,26 @@ class Screen : public concurrency::OSThread
 | 
			
		|||
        }
 | 
			
		||||
        case 0xD1: {
 | 
			
		||||
            SKIPREST = false;
 | 
			
		||||
            if (ch == 148)
 | 
			
		||||
                return (uint8_t)(186); // є
 | 
			
		||||
            if (ch == 150)
 | 
			
		||||
                return (uint8_t)(179); // і
 | 
			
		||||
            if (ch == 151)
 | 
			
		||||
                return (uint8_t)(191); // ї
 | 
			
		||||
            if (ch == 145)
 | 
			
		||||
                return (uint8_t)(184); // ё
 | 
			
		||||
            if (ch > 127 && ch < 144)
 | 
			
		||||
                return (uint8_t)(ch + 112);
 | 
			
		||||
            break;
 | 
			
		||||
        }
 | 
			
		||||
        case 0xD2: {
 | 
			
		||||
            SKIPREST = false;
 | 
			
		||||
            if (ch == 144)
 | 
			
		||||
                return (uint8_t)(165); // Ґ
 | 
			
		||||
            if (ch == 145)
 | 
			
		||||
                return (uint8_t)(180); // ґ
 | 
			
		||||
            break;
 | 
			
		||||
        }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // We want to strip out prefix chars for two-byte char formats
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,424 @@
 | 
			
		|||
#include "OLEDDisplayFontsUA.h"
 | 
			
		||||
 | 
			
		||||
// Font generated or edited with the glyphEditor
 | 
			
		||||
const uint8_t ArialMT_Plain_10_UA[] PROGMEM = {
 | 
			
		||||
    0x0A, // Width: 10
 | 
			
		||||
    0x0D, // Height: 13
 | 
			
		||||
    0x20, // First char: 32
 | 
			
		||||
    0xE0, // Number of chars: 224
 | 
			
		||||
    // Jump Table:
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 32
 | 
			
		||||
    0x00, 0x00, 0x04, 0x03, // 33
 | 
			
		||||
    0x00, 0x04, 0x05, 0x04, // 34
 | 
			
		||||
    0x00, 0x09, 0x09, 0x06, // 35
 | 
			
		||||
    0x00, 0x12, 0x0A, 0x06, // 36
 | 
			
		||||
    0x00, 0x1C, 0x10, 0x09, // 37
 | 
			
		||||
    0x00, 0x2C, 0x0E, 0x08, // 38
 | 
			
		||||
    0x00, 0x3A, 0x01, 0x02, // 39
 | 
			
		||||
    0x00, 0x3B, 0x06, 0x04, // 40
 | 
			
		||||
    0x00, 0x41, 0x06, 0x04, // 41
 | 
			
		||||
    0x00, 0x47, 0x05, 0x04, // 42
 | 
			
		||||
    0x00, 0x4C, 0x09, 0x06, // 43
 | 
			
		||||
    0x00, 0x55, 0x04, 0x03, // 44
 | 
			
		||||
    0x00, 0x59, 0x03, 0x03, // 45
 | 
			
		||||
    0x00, 0x5C, 0x04, 0x03, // 46
 | 
			
		||||
    0x00, 0x60, 0x05, 0x04, // 47
 | 
			
		||||
    0x00, 0x65, 0x0A, 0x06, // 48
 | 
			
		||||
    0x00, 0x6F, 0x08, 0x05, // 49
 | 
			
		||||
    0x00, 0x77, 0x0A, 0x06, // 50
 | 
			
		||||
    0x00, 0x81, 0x0A, 0x06, // 51
 | 
			
		||||
    0x00, 0x8B, 0x0B, 0x07, // 52
 | 
			
		||||
    0x00, 0x96, 0x0A, 0x06, // 53
 | 
			
		||||
    0x00, 0xA0, 0x0A, 0x06, // 54
 | 
			
		||||
    0x00, 0xAA, 0x09, 0x06, // 55
 | 
			
		||||
    0x00, 0xB3, 0x0A, 0x06, // 56
 | 
			
		||||
    0x00, 0xBD, 0x0A, 0x06, // 57
 | 
			
		||||
    0x00, 0xC7, 0x04, 0x03, // 58
 | 
			
		||||
    0x00, 0xCB, 0x04, 0x03, // 59
 | 
			
		||||
    0x00, 0xCF, 0x0A, 0x06, // 60
 | 
			
		||||
    0x00, 0xD9, 0x09, 0x06, // 61
 | 
			
		||||
    0x00, 0xE2, 0x09, 0x06, // 62
 | 
			
		||||
    0x00, 0xEB, 0x0B, 0x07, // 63
 | 
			
		||||
    0x00, 0xF6, 0x14, 0x0B, // 64
 | 
			
		||||
    0x01, 0x0A, 0x0E, 0x08, // 65
 | 
			
		||||
    0x01, 0x18, 0x0C, 0x07, // 66
 | 
			
		||||
    0x01, 0x24, 0x0C, 0x07, // 67
 | 
			
		||||
    0x01, 0x30, 0x0B, 0x07, // 68
 | 
			
		||||
    0x01, 0x3B, 0x0C, 0x07, // 69
 | 
			
		||||
    0x01, 0x47, 0x09, 0x06, // 70
 | 
			
		||||
    0x01, 0x50, 0x0D, 0x08, // 71
 | 
			
		||||
    0x01, 0x5D, 0x0C, 0x07, // 72
 | 
			
		||||
    0x01, 0x69, 0x04, 0x03, // 73
 | 
			
		||||
    0x01, 0x6D, 0x08, 0x05, // 74
 | 
			
		||||
    0x01, 0x75, 0x0E, 0x08, // 75
 | 
			
		||||
    0x01, 0x83, 0x0C, 0x07, // 76
 | 
			
		||||
    0x01, 0x8F, 0x10, 0x09, // 77
 | 
			
		||||
    0x01, 0x9F, 0x0C, 0x07, // 78
 | 
			
		||||
    0x01, 0xAB, 0x0E, 0x08, // 79
 | 
			
		||||
    0x01, 0xB9, 0x0B, 0x07, // 80
 | 
			
		||||
    0x01, 0xC4, 0x0E, 0x08, // 81
 | 
			
		||||
    0x01, 0xD2, 0x0C, 0x07, // 82
 | 
			
		||||
    0x01, 0xDE, 0x0C, 0x07, // 83
 | 
			
		||||
    0x01, 0xEA, 0x0B, 0x07, // 84
 | 
			
		||||
    0x01, 0xF5, 0x0C, 0x07, // 85
 | 
			
		||||
    0x02, 0x01, 0x0D, 0x08, // 86
 | 
			
		||||
    0x02, 0x0E, 0x11, 0x0A, // 87
 | 
			
		||||
    0x02, 0x1F, 0x0E, 0x08, // 88
 | 
			
		||||
    0x02, 0x2D, 0x0D, 0x08, // 89
 | 
			
		||||
    0x02, 0x3A, 0x0C, 0x07, // 90
 | 
			
		||||
    0x02, 0x46, 0x06, 0x04, // 91
 | 
			
		||||
    0x02, 0x4C, 0x06, 0x04, // 92
 | 
			
		||||
    0x02, 0x52, 0x04, 0x03, // 93
 | 
			
		||||
    0x02, 0x56, 0x09, 0x06, // 94
 | 
			
		||||
    0x02, 0x5F, 0x0C, 0x07, // 95
 | 
			
		||||
    0x02, 0x6B, 0x03, 0x03, // 96
 | 
			
		||||
    0x02, 0x6E, 0x0A, 0x06, // 97
 | 
			
		||||
    0x02, 0x78, 0x0A, 0x06, // 98
 | 
			
		||||
    0x02, 0x82, 0x0A, 0x06, // 99
 | 
			
		||||
    0x02, 0x8C, 0x0A, 0x06, // 100
 | 
			
		||||
    0x02, 0x96, 0x0A, 0x06, // 101
 | 
			
		||||
    0x02, 0xA0, 0x05, 0x04, // 102
 | 
			
		||||
    0x02, 0xA5, 0x0A, 0x06, // 103
 | 
			
		||||
    0x02, 0xAF, 0x0A, 0x06, // 104
 | 
			
		||||
    0x02, 0xB9, 0x04, 0x03, // 105
 | 
			
		||||
    0x02, 0xBD, 0x04, 0x03, // 106
 | 
			
		||||
    0x02, 0xC1, 0x08, 0x05, // 107
 | 
			
		||||
    0x02, 0xC9, 0x04, 0x03, // 108
 | 
			
		||||
    0x02, 0xCD, 0x10, 0x09, // 109
 | 
			
		||||
    0x02, 0xDD, 0x0A, 0x06, // 110
 | 
			
		||||
    0x02, 0xE7, 0x0A, 0x06, // 111
 | 
			
		||||
    0x02, 0xF1, 0x0A, 0x06, // 112
 | 
			
		||||
    0x02, 0xFB, 0x0A, 0x06, // 113
 | 
			
		||||
    0x03, 0x05, 0x05, 0x04, // 114
 | 
			
		||||
    0x03, 0x0A, 0x08, 0x05, // 115
 | 
			
		||||
    0x03, 0x12, 0x06, 0x04, // 116
 | 
			
		||||
    0x03, 0x18, 0x0A, 0x06, // 117
 | 
			
		||||
    0x03, 0x22, 0x09, 0x06, // 118
 | 
			
		||||
    0x03, 0x2B, 0x0E, 0x08, // 119
 | 
			
		||||
    0x03, 0x39, 0x0A, 0x06, // 120
 | 
			
		||||
    0x03, 0x43, 0x09, 0x06, // 121
 | 
			
		||||
    0x03, 0x4C, 0x0A, 0x06, // 122
 | 
			
		||||
    0x03, 0x56, 0x06, 0x04, // 123
 | 
			
		||||
    0x03, 0x5C, 0x04, 0x03, // 124
 | 
			
		||||
    0x03, 0x60, 0x05, 0x04, // 125
 | 
			
		||||
    0x03, 0x65, 0x09, 0x06, // 126
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 127
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 128
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 129
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 130
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 131
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 132
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 133
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 134
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 135
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 136
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 137
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 138
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 139
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 140
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 141
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 142
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 143
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 144
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 145
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 146
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 147
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 148
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 149
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 150
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 151
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 152
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 153
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 154
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 155
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 156
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 157
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 158
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 159
 | 
			
		||||
    0xFF, 0xFF, 0x00, 0x0A, // 160
 | 
			
		||||
    0x03, 0x6E, 0x04, 0x03, // 161
 | 
			
		||||
    0x03, 0x72, 0x0A, 0x06, // 162
 | 
			
		||||
    0x03, 0x7C, 0x0C, 0x07, // 163
 | 
			
		||||
    0x03, 0x88, 0x0A, 0x06, // 164
 | 
			
		||||
    0x03, 0x92, 0x09, 0x06, // 165
 | 
			
		||||
    0x03, 0x9B, 0x04, 0x03, // 166
 | 
			
		||||
    0x03, 0x9F, 0x0A, 0x06, // 167
 | 
			
		||||
    0x03, 0xA9, 0x0C, 0x07, // 168
 | 
			
		||||
    0x03, 0xB5, 0x0D, 0x08, // 169
 | 
			
		||||
    0x03, 0xC2, 0x0C, 0x07, // 170
 | 
			
		||||
    0x03, 0xCE, 0x0A, 0x06, // 171
 | 
			
		||||
    0x03, 0xD8, 0x09, 0x06, // 172
 | 
			
		||||
    0x03, 0xE1, 0x03, 0x03, // 173
 | 
			
		||||
    0x03, 0xE4, 0x0D, 0x08, // 174
 | 
			
		||||
    0x03, 0xF1, 0x0C, 0x07, // 175
 | 
			
		||||
    0x03, 0xFD, 0x07, 0x05, // 176
 | 
			
		||||
    0x04, 0x04, 0x0A, 0x06, // 177
 | 
			
		||||
    0x04, 0x0E, 0x0C, 0x07, // 178
 | 
			
		||||
    0x04, 0x1A, 0x0C, 0x07, // 179
 | 
			
		||||
    0x04, 0x26, 0x07, 0x05, // 180
 | 
			
		||||
    0x04, 0x2D, 0x0A, 0x06, // 181
 | 
			
		||||
    0x04, 0x37, 0x09, 0x06, // 182
 | 
			
		||||
    0x04, 0x40, 0x03, 0x03, // 183
 | 
			
		||||
    0x04, 0x43, 0x0B, 0x07, // 184
 | 
			
		||||
    0x04, 0x4E, 0x0B, 0x07, // 185
 | 
			
		||||
    0x04, 0x59, 0x0C, 0x07, // 186
 | 
			
		||||
    0x04, 0x65, 0x0A, 0x06, // 187
 | 
			
		||||
    0x04, 0x6F, 0x10, 0x09, // 188
 | 
			
		||||
    0x04, 0x7F, 0x10, 0x09, // 189
 | 
			
		||||
    0x04, 0x8F, 0x10, 0x09, // 190
 | 
			
		||||
    0x04, 0x9F, 0x0A, 0x06, // 191
 | 
			
		||||
    0x04, 0xA9, 0x0C, 0x07, // 192
 | 
			
		||||
    0x04, 0xB5, 0x0C, 0x07, // 193
 | 
			
		||||
    0x04, 0xC1, 0x0C, 0x07, // 194
 | 
			
		||||
    0x04, 0xCD, 0x0B, 0x07, // 195
 | 
			
		||||
    0x04, 0xD8, 0x0C, 0x07, // 196
 | 
			
		||||
    0x04, 0xE4, 0x0C, 0x07, // 197
 | 
			
		||||
    0x04, 0xF0, 0x0C, 0x07, // 198
 | 
			
		||||
    0x04, 0xFC, 0x0C, 0x07, // 199
 | 
			
		||||
    0x05, 0x08, 0x0C, 0x07, // 200
 | 
			
		||||
    0x05, 0x14, 0x0C, 0x07, // 201
 | 
			
		||||
    0x05, 0x20, 0x0C, 0x07, // 202
 | 
			
		||||
    0x05, 0x2C, 0x0C, 0x07, // 203
 | 
			
		||||
    0x05, 0x38, 0x0C, 0x07, // 204
 | 
			
		||||
    0x05, 0x44, 0x0C, 0x07, // 205
 | 
			
		||||
    0x05, 0x50, 0x0C, 0x07, // 206
 | 
			
		||||
    0x05, 0x5C, 0x0C, 0x07, // 207
 | 
			
		||||
    0x05, 0x68, 0x0B, 0x07, // 208
 | 
			
		||||
    0x05, 0x73, 0x0C, 0x07, // 209
 | 
			
		||||
    0x05, 0x7F, 0x0B, 0x07, // 210
 | 
			
		||||
    0x05, 0x8A, 0x0C, 0x07, // 211
 | 
			
		||||
    0x05, 0x96, 0x0B, 0x07, // 212
 | 
			
		||||
    0x05, 0xA1, 0x0C, 0x07, // 213
 | 
			
		||||
    0x05, 0xAD, 0x0C, 0x07, // 214
 | 
			
		||||
    0x05, 0xB9, 0x0C, 0x07, // 215
 | 
			
		||||
    0x05, 0xC5, 0x0C, 0x07, // 216
 | 
			
		||||
    0x05, 0xD1, 0x0E, 0x08, // 217
 | 
			
		||||
    0x05, 0xDF, 0x0C, 0x07, // 218
 | 
			
		||||
    0x05, 0xEB, 0x0C, 0x07, // 219
 | 
			
		||||
    0x05, 0xF7, 0x0C, 0x07, // 220
 | 
			
		||||
    0x06, 0x03, 0x0C, 0x07, // 221
 | 
			
		||||
    0x06, 0x0F, 0x0C, 0x07, // 222
 | 
			
		||||
    0x06, 0x1B, 0x0C, 0x07, // 223
 | 
			
		||||
    0x06, 0x27, 0x0C, 0x07, // 224
 | 
			
		||||
    0x06, 0x33, 0x0C, 0x07, // 225
 | 
			
		||||
    0x06, 0x3F, 0x0C, 0x07, // 226
 | 
			
		||||
    0x06, 0x4B, 0x0B, 0x07, // 227
 | 
			
		||||
    0x06, 0x56, 0x0C, 0x07, // 228
 | 
			
		||||
    0x06, 0x62, 0x0B, 0x07, // 229
 | 
			
		||||
    0x06, 0x6D, 0x0C, 0x07, // 230
 | 
			
		||||
    0x06, 0x79, 0x0C, 0x07, // 231
 | 
			
		||||
    0x06, 0x85, 0x0C, 0x07, // 232
 | 
			
		||||
    0x06, 0x91, 0x0C, 0x07, // 233
 | 
			
		||||
    0x06, 0x9D, 0x0C, 0x07, // 234
 | 
			
		||||
    0x06, 0xA9, 0x0C, 0x07, // 235
 | 
			
		||||
    0x06, 0xB5, 0x0C, 0x07, // 236
 | 
			
		||||
    0x06, 0xC1, 0x0C, 0x07, // 237
 | 
			
		||||
    0x06, 0xCD, 0x0C, 0x07, // 238
 | 
			
		||||
    0x06, 0xD9, 0x0C, 0x07, // 239
 | 
			
		||||
    0x06, 0xE5, 0x0B, 0x07, // 240
 | 
			
		||||
    0x06, 0xF0, 0x0C, 0x07, // 241
 | 
			
		||||
    0x06, 0xFC, 0x0B, 0x07, // 242
 | 
			
		||||
    0x07, 0x07, 0x0C, 0x07, // 243
 | 
			
		||||
    0x07, 0x13, 0x0B, 0x07, // 244
 | 
			
		||||
    0x07, 0x1E, 0x0C, 0x07, // 245
 | 
			
		||||
    0x07, 0x2A, 0x0C, 0x07, // 246
 | 
			
		||||
    0x07, 0x36, 0x0C, 0x07, // 247
 | 
			
		||||
    0x07, 0x42, 0x0C, 0x07, // 248
 | 
			
		||||
    0x07, 0x4E, 0x0E, 0x08, // 249
 | 
			
		||||
    0x07, 0x5C, 0x0C, 0x07, // 250
 | 
			
		||||
    0x07, 0x68, 0x0C, 0x07, // 251
 | 
			
		||||
    0x07, 0x74, 0x0C, 0x07, // 252
 | 
			
		||||
    0x07, 0x80, 0x0C, 0x07, // 253
 | 
			
		||||
    0x07, 0x8C, 0x0C, 0x07, // 254
 | 
			
		||||
    0x07, 0x98, 0x0C, 0x07, // 255
 | 
			
		||||
    // Font Data:
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x02,                                                                                                 // 33
 | 
			
		||||
    0x38, 0x00, 0x00, 0x00, 0x38,                                                                                           // 34
 | 
			
		||||
    0xA0, 0x03, 0xE0, 0x00, 0xB8, 0x03, 0xE0, 0x00, 0xB8,                                                                   // 35
 | 
			
		||||
    0x30, 0x01, 0x28, 0x02, 0xF8, 0x07, 0x48, 0x02, 0x90, 0x01,                                                             // 36
 | 
			
		||||
    0x00, 0x00, 0x30, 0x00, 0x48, 0x00, 0x30, 0x03, 0xC0, 0x00, 0xB0, 0x01, 0x48, 0x02, 0x80, 0x01,                         // 37
 | 
			
		||||
    0x80, 0x01, 0x50, 0x02, 0x68, 0x02, 0xA8, 0x02, 0x18, 0x01, 0x80, 0x03, 0x80, 0x02,                                     // 38
 | 
			
		||||
    0x38,                                                                                                                   // 39
 | 
			
		||||
    0xE0, 0x03, 0x10, 0x04, 0x08, 0x08,                                                                                     // 40
 | 
			
		||||
    0x08, 0x08, 0x10, 0x04, 0xE0, 0x03,                                                                                     // 41
 | 
			
		||||
    0x28, 0x00, 0x18, 0x00, 0x28,                                                                                           // 42
 | 
			
		||||
    0x40, 0x00, 0x40, 0x00, 0xF0, 0x01, 0x40, 0x00, 0x40,                                                                   // 43
 | 
			
		||||
    0x00, 0x00, 0x00, 0x06,                                                                                                 // 44
 | 
			
		||||
    0x80, 0x00, 0x80,                                                                                                       // 45
 | 
			
		||||
    0x00, 0x00, 0x00, 0x02,                                                                                                 // 46
 | 
			
		||||
    0x00, 0x03, 0xE0, 0x00, 0x18,                                                                                           // 47
 | 
			
		||||
    0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0xF0, 0x01,                                                             // 48
 | 
			
		||||
    0x00, 0x00, 0x20, 0x00, 0x10, 0x00, 0xF8, 0x03,                                                                         // 49
 | 
			
		||||
    0x10, 0x02, 0x08, 0x03, 0x88, 0x02, 0x48, 0x02, 0x30, 0x02,                                                             // 50
 | 
			
		||||
    0x10, 0x01, 0x08, 0x02, 0x48, 0x02, 0x48, 0x02, 0xB0, 0x01,                                                             // 51
 | 
			
		||||
    0xC0, 0x00, 0xA0, 0x00, 0x90, 0x00, 0x88, 0x00, 0xF8, 0x03, 0x80,                                                       // 52
 | 
			
		||||
    0x60, 0x01, 0x38, 0x02, 0x28, 0x02, 0x28, 0x02, 0xC8, 0x01,                                                             // 53
 | 
			
		||||
    0xF0, 0x01, 0x28, 0x02, 0x28, 0x02, 0x28, 0x02, 0xD0, 0x01,                                                             // 54
 | 
			
		||||
    0x08, 0x00, 0x08, 0x03, 0xC8, 0x00, 0x38, 0x00, 0x08,                                                                   // 55
 | 
			
		||||
    0xB0, 0x01, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0xB0, 0x01,                                                             // 56
 | 
			
		||||
    0x70, 0x01, 0x88, 0x02, 0x88, 0x02, 0x88, 0x02, 0xF0, 0x01,                                                             // 57
 | 
			
		||||
    0x00, 0x00, 0x20, 0x02,                                                                                                 // 58
 | 
			
		||||
    0x00, 0x00, 0x20, 0x06,                                                                                                 // 59
 | 
			
		||||
    0x00, 0x00, 0x40, 0x00, 0xA0, 0x00, 0xA0, 0x00, 0x10, 0x01,                                                             // 60
 | 
			
		||||
    0xA0, 0x00, 0xA0, 0x00, 0xA0, 0x00, 0xA0, 0x00, 0xA0,                                                                   // 61
 | 
			
		||||
    0x00, 0x00, 0x10, 0x01, 0xA0, 0x00, 0xA0, 0x00, 0x40,                                                                   // 62
 | 
			
		||||
    0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0xC8, 0x02, 0x48, 0x00, 0x30,                                                       // 63
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x03, 0x30, 0x04, 0xD0, 0x09, 0x28, 0x0A, 0x28, 0x0A, 0xC8, 0x0B, 0x68, 0x0A, 0x10, 0x05, 0xE0, 0x04, // 64
 | 
			
		||||
    0x00, 0x02, 0xC0, 0x01, 0xB0, 0x00, 0x88, 0x00, 0xB0, 0x00, 0xC0, 0x01, 0x00, 0x02,                                     // 65
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0xF0, 0x01,                                                 // 66
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0x10, 0x01,                                                 // 67
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x08, 0x02, 0x08, 0x02, 0x10, 0x01, 0xE0,                                                       // 68
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02,                                                 // 69
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x00, 0x48, 0x00, 0x08,                                                                   // 70
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x00, 0x10, 0x01, 0x08, 0x02, 0x48, 0x02, 0x50, 0x01, 0xC0,                                           // 71
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0xF8, 0x03,                                                 // 72
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03,                                                                                                 // 73
 | 
			
		||||
    0x00, 0x03, 0x00, 0x02, 0x00, 0x02, 0xF8, 0x01,                                                                         // 74
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x80, 0x00, 0x60, 0x00, 0x90, 0x00, 0x08, 0x01, 0x00, 0x02,                                     // 75
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02,                                                 // 76
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x30, 0x00, 0xC0, 0x01, 0x00, 0x02, 0xC0, 0x01, 0x30, 0x00, 0xF8, 0x03,                         // 77
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x30, 0x00, 0x40, 0x00, 0x80, 0x01, 0xF8, 0x03,                                                 // 78
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0xF0, 0x01,                                     // 79
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x00, 0x48, 0x00, 0x48, 0x00, 0x30,                                                       // 80
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x03, 0x08, 0x03, 0xF0, 0x02,                                     // 81
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x00, 0x48, 0x00, 0xC8, 0x00, 0x30, 0x03,                                                 // 82
 | 
			
		||||
    0x00, 0x00, 0x30, 0x01, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0x90, 0x01,                                                 // 83
 | 
			
		||||
    0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0xF8, 0x03, 0x08, 0x00, 0x08,                                                       // 84
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0xF8, 0x01,                                                 // 85
 | 
			
		||||
    0x08, 0x00, 0x70, 0x00, 0x80, 0x01, 0x00, 0x02, 0x80, 0x01, 0x70, 0x00, 0x08,                                           // 86
 | 
			
		||||
    0x18, 0x00, 0xE0, 0x01, 0x00, 0x02, 0xF0, 0x01, 0x08, 0x00, 0xF0, 0x01, 0x00, 0x02, 0xE0, 0x01, 0x18,                   // 87
 | 
			
		||||
    0x00, 0x02, 0x08, 0x01, 0x90, 0x00, 0x60, 0x00, 0x90, 0x00, 0x08, 0x01, 0x00, 0x02,                                     // 88
 | 
			
		||||
    0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x20, 0x00, 0x10, 0x00, 0x08,                                           // 89
 | 
			
		||||
    0x08, 0x03, 0x88, 0x02, 0xC8, 0x02, 0x68, 0x02, 0x38, 0x02, 0x18, 0x02,                                                 // 90
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x0F, 0x08, 0x08,                                                                                     // 91
 | 
			
		||||
    0x18, 0x00, 0xE0, 0x00, 0x00, 0x03,                                                                                     // 92
 | 
			
		||||
    0x08, 0x08, 0xF8, 0x0F,                                                                                                 // 93
 | 
			
		||||
    0x40, 0x00, 0x30, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40,                                                                   // 94
 | 
			
		||||
    0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08,                                                 // 95
 | 
			
		||||
    0x08, 0x00, 0x10,                                                                                                       // 96
 | 
			
		||||
    0x00, 0x00, 0x00, 0x03, 0xA0, 0x02, 0xA0, 0x02, 0xE0, 0x03,                                                             // 97
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x20, 0x02, 0x20, 0x02, 0xC0, 0x01,                                                             // 98
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0x40, 0x01,                                                             // 99
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0xF8, 0x03,                                                             // 100
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0xA0, 0x02, 0xA0, 0x02, 0xC0, 0x02,                                                             // 101
 | 
			
		||||
    0x20, 0x00, 0xF0, 0x03, 0x28,                                                                                           // 102
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x05, 0x20, 0x0A, 0x20, 0x0A, 0xE0, 0x07,                                                             // 103
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x20, 0x00, 0x20, 0x00, 0xC0, 0x03,                                                             // 104
 | 
			
		||||
    0x00, 0x00, 0xE8, 0x03,                                                                                                 // 105
 | 
			
		||||
    0x00, 0x08, 0xE8, 0x07,                                                                                                 // 106
 | 
			
		||||
    0xF8, 0x03, 0x80, 0x00, 0xC0, 0x01, 0x20, 0x02,                                                                         // 107
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03,                                                                                                 // 108
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20, 0x00, 0xC0, 0x03,                         // 109
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20, 0x00, 0xC0, 0x03,                                                             // 110
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0xC0, 0x01,                                                             // 111
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x0F, 0x20, 0x02, 0x20, 0x02, 0xC0, 0x01,                                                             // 112
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0xE0, 0x0F,                                                             // 113
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20,                                                                                           // 114
 | 
			
		||||
    0x40, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0x20, 0x01,                                                                         // 115
 | 
			
		||||
    0x20, 0x00, 0xF8, 0x03, 0x20, 0x02,                                                                                     // 116
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x01, 0x00, 0x02, 0x00, 0x02, 0xE0, 0x03,                                                             // 117
 | 
			
		||||
    0x20, 0x00, 0xC0, 0x01, 0x00, 0x02, 0xC0, 0x01, 0x20,                                                                   // 118
 | 
			
		||||
    0xE0, 0x01, 0x00, 0x02, 0xC0, 0x01, 0x20, 0x00, 0xC0, 0x01, 0x00, 0x02, 0xE0, 0x01,                                     // 119
 | 
			
		||||
    0x20, 0x02, 0x40, 0x01, 0x80, 0x00, 0x40, 0x01, 0x20, 0x02,                                                             // 120
 | 
			
		||||
    0x20, 0x00, 0xC0, 0x09, 0x00, 0x06, 0xC0, 0x01, 0x20,                                                                   // 121
 | 
			
		||||
    0x20, 0x02, 0x20, 0x03, 0xA0, 0x02, 0x60, 0x02, 0x20, 0x02,                                                             // 122
 | 
			
		||||
    0x80, 0x00, 0x78, 0x0F, 0x08, 0x08,                                                                                     // 123
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x0F,                                                                                                 // 124
 | 
			
		||||
    0x08, 0x08, 0x78, 0x0F, 0x80,                                                                                           // 125
 | 
			
		||||
    0xC0, 0x00, 0x40, 0x00, 0xC0, 0x00, 0x80, 0x00, 0xC0,                                                                   // 126
 | 
			
		||||
    0x00, 0x00, 0xA0, 0x0F,                                                                                                 // 161
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0xA0, 0x0F, 0x78, 0x02, 0x40, 0x01,                                                             // 162
 | 
			
		||||
    0x40, 0x02, 0x70, 0x03, 0xC8, 0x02, 0x48, 0x02, 0x08, 0x02, 0x10, 0x02,                                                 // 163
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x01, 0x20, 0x01, 0x20, 0x01, 0xE0, 0x01,                                                             // 164
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x08, 0x00, 0x08, 0x00, 0x0C,                                                                   // 165
 | 
			
		||||
    0x00, 0x00, 0x38, 0x0F,                                                                                                 // 166
 | 
			
		||||
    0xD0, 0x04, 0x28, 0x09, 0x48, 0x09, 0x48, 0x0A, 0x90, 0x05,                                                             // 167
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0xA8, 0x02, 0xA0, 0x02, 0xA8, 0x02, 0x20, 0x02,                                                 // 168
 | 
			
		||||
    0xE0, 0x00, 0x10, 0x01, 0x48, 0x02, 0xA8, 0x02, 0xA8, 0x02, 0x10, 0x01, 0xE0,                                           // 169
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x58, 0x03, 0x48, 0x02, 0x08, 0x02, 0x10, 0x01,                                                 // 170
 | 
			
		||||
    0x00, 0x00, 0x80, 0x01, 0x40, 0x02, 0x80, 0x01, 0x40, 0x02,                                                             // 171
 | 
			
		||||
    0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0xE0,                                                                   // 172
 | 
			
		||||
    0x80, 0x00, 0x80,                                                                                                       // 173
 | 
			
		||||
    0xE0, 0x00, 0x10, 0x01, 0xE8, 0x02, 0x68, 0x02, 0xC8, 0x02, 0x10, 0x01, 0xE0,                                           // 174
 | 
			
		||||
    0x00, 0x00, 0x08, 0x02, 0x0A, 0x02, 0xF8, 0x03, 0x0A, 0x02, 0x08, 0x02,                                                 // 175
 | 
			
		||||
    0x00, 0x00, 0x38, 0x00, 0x28, 0x00, 0x38,                                                                               // 176
 | 
			
		||||
    0x40, 0x02, 0x40, 0x02, 0xF0, 0x03, 0x40, 0x02, 0x40, 0x02,                                                             // 177
 | 
			
		||||
    0x00, 0x00, 0x08, 0x02, 0x08, 0x02, 0xF8, 0x03, 0x08, 0x02, 0x08, 0x02,                                                 // 178
 | 
			
		||||
    0x00, 0x00, 0x20, 0x02, 0x20, 0x02, 0xE8, 0x03, 0x20, 0x02, 0x20, 0x02,                                                 // 179
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x30,                                                                               // 180
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x0F, 0x00, 0x02, 0x00, 0x02, 0xE0, 0x03,                                                             // 181
 | 
			
		||||
    0x70, 0x00, 0xF8, 0x0F, 0x08, 0x00, 0xF8, 0x0F, 0x08,                                                                   // 182
 | 
			
		||||
    0x00, 0x00, 0x40,                                                                                                       // 183
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0xA8, 0x02, 0xA0, 0x02, 0xA8, 0x02, 0xC0,                                                       // 184
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x03, 0x40, 0x00, 0x80, 0x00, 0xF8, 0x03, 0x08,                                                       // 185
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x01, 0x50, 0x02, 0x50, 0x02, 0x10, 0x02, 0x20, 0x01,                                                 // 186
 | 
			
		||||
    0x00, 0x00, 0x40, 0x02, 0x80, 0x01, 0x40, 0x02, 0x80, 0x01,                                                             // 187
 | 
			
		||||
    0x00, 0x00, 0x10, 0x02, 0x78, 0x01, 0xC0, 0x00, 0x20, 0x01, 0x90, 0x01, 0xC8, 0x03, 0x00, 0x01,                         // 188
 | 
			
		||||
    0x00, 0x00, 0x10, 0x02, 0x78, 0x01, 0x80, 0x00, 0x60, 0x00, 0x50, 0x02, 0x48, 0x03, 0xC0, 0x02,                         // 189
 | 
			
		||||
    0x48, 0x00, 0x58, 0x00, 0x68, 0x03, 0x80, 0x00, 0x60, 0x01, 0x90, 0x01, 0xC8, 0x03, 0x00, 0x01,                         // 190
 | 
			
		||||
    0x00, 0x00, 0x00, 0x00, 0x28, 0x02, 0xE0, 0x03, 0x28, 0x02,                                                             // 191
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x03, 0x88, 0x00, 0x88, 0x00, 0x88, 0x00, 0xF0, 0x03,                                                 // 192
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0x88, 0x01,                                                 // 193
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0xB0, 0x01,                                                 // 194
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x18,                                                       // 195
 | 
			
		||||
    0x00, 0x00, 0x00, 0x02, 0xFC, 0x03, 0x04, 0x02, 0xFC, 0x03, 0x00, 0x02,                                                 // 196
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0x08, 0x02,                                                 // 197
 | 
			
		||||
    0x00, 0x00, 0xB8, 0x03, 0x40, 0x00, 0xF8, 0x03, 0x40, 0x00, 0xB8, 0x03,                                                 // 198
 | 
			
		||||
    0x00, 0x00, 0x08, 0x02, 0x48, 0x02, 0x48, 0x02, 0x48, 0x02, 0xB0, 0x01,                                                 // 199
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0xF8, 0x03,                                                 // 200
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x08, 0x01, 0x90, 0x00, 0x48, 0x00, 0xE0, 0x03,                                                 // 201
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x00, 0xA0, 0x00, 0x10, 0x01, 0x08, 0x02,                                                 // 202
 | 
			
		||||
    0x00, 0x00, 0x00, 0x02, 0xF0, 0x01, 0x08, 0x00, 0x08, 0x00, 0xF8, 0x03,                                                 // 203
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x10, 0x00, 0x60, 0x00, 0x10, 0x00, 0xF8, 0x03,                                                 // 204
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0xF8, 0x03,                                                 // 205
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0xF0, 0x01,                                                 // 206
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0xF8, 0x03,                                                 // 207
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x48, 0x00, 0x48, 0x00, 0x48, 0x00, 0x30,                                                       // 208
 | 
			
		||||
    0x00, 0x00, 0xF0, 0x01, 0x08, 0x02, 0x08, 0x02, 0x08, 0x02, 0x10, 0x01,                                                 // 209
 | 
			
		||||
    0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0xF8, 0x03, 0x08, 0x00, 0x08,                                                       // 210
 | 
			
		||||
    0x00, 0x00, 0x38, 0x00, 0x40, 0x02, 0x40, 0x02, 0x40, 0x02, 0xF8, 0x01,                                                 // 211
 | 
			
		||||
    0x00, 0x00, 0x70, 0x00, 0x88, 0x00, 0xF8, 0x03, 0x88, 0x00, 0x70,                                                       // 212
 | 
			
		||||
    0x00, 0x00, 0x18, 0x03, 0xA0, 0x00, 0x40, 0x00, 0xA0, 0x00, 0x18, 0x03,                                                 // 213
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x00, 0x02, 0x00, 0x02, 0xF8, 0x03, 0x00, 0x02,                                                 // 214
 | 
			
		||||
    0x00, 0x00, 0x38, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0xF8, 0x03,                                                 // 215
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x00, 0x02, 0xF8, 0x03, 0x00, 0x02, 0xF8, 0x03,                                                 // 216
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x00, 0x02, 0xF8, 0x03, 0x00, 0x02, 0xF8, 0x03, 0x00, 0x06,                                     // 217
 | 
			
		||||
    0x00, 0x00, 0x08, 0x00, 0xF8, 0x03, 0x40, 0x02, 0x40, 0x02, 0x80, 0x01,                                                 // 218
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x02, 0x40, 0x02, 0x80, 0x01, 0xF8, 0x03,                                                 // 219
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x02, 0x40, 0x02, 0x40, 0x02, 0x80, 0x01,                                                 // 220
 | 
			
		||||
    0x00, 0x00, 0x10, 0x01, 0x08, 0x02, 0x48, 0x02, 0x48, 0x02, 0xF0, 0x01,                                                 // 221
 | 
			
		||||
    0x00, 0x00, 0xF8, 0x03, 0x40, 0x00, 0xF0, 0x01, 0x08, 0x02, 0xF0, 0x01,                                                 // 222
 | 
			
		||||
    0x00, 0x00, 0x30, 0x02, 0x48, 0x01, 0xC8, 0x00, 0x48, 0x00, 0xF8, 0x03,                                                 // 223
 | 
			
		||||
    0x00, 0x00, 0x00, 0x01, 0xA0, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0xC0, 0x03,                                                 // 224
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x01, 0x50, 0x02, 0x50, 0x02, 0x48, 0x02, 0x88, 0x01,                                                 // 225
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0xA0, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0x40, 0x01,                                                 // 226
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x60,                                                       // 227
 | 
			
		||||
    0x00, 0x00, 0x00, 0x02, 0xC0, 0x03, 0x20, 0x02, 0xE0, 0x03, 0x00, 0x02,                                                 // 228
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0xA0, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0xC0,                                                       // 229
 | 
			
		||||
    0x00, 0x00, 0x60, 0x03, 0x80, 0x00, 0xE0, 0x03, 0x80, 0x00, 0x60, 0x03,                                                 // 230
 | 
			
		||||
    0x00, 0x00, 0x20, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0x40, 0x01,                                                 // 231
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x00, 0x01, 0x80, 0x00, 0x40, 0x00, 0xE0, 0x03,                                                 // 232
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x00, 0x01, 0x98, 0x00, 0x40, 0x00, 0xE0, 0x03,                                                 // 233
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x80, 0x00, 0x80, 0x00, 0x40, 0x01, 0x20, 0x02,                                                 // 234
 | 
			
		||||
    0x00, 0x00, 0x00, 0x02, 0xC0, 0x01, 0x20, 0x00, 0x20, 0x00, 0xE0, 0x03,                                                 // 235
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x40, 0x00, 0x80, 0x00, 0x40, 0x00, 0xE0, 0x03,                                                 // 236
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0xE0, 0x03,                                                 // 237
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0x20, 0x02, 0xC0, 0x01,                                                 // 238
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0xE0, 0x03,                                                 // 239
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0xA0, 0x00, 0xA0, 0x00, 0xA0, 0x00, 0x40,                                                       // 240
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x01, 0x20, 0x02, 0x20, 0x02, 0x20, 0x02, 0x40, 0x02,                                                 // 241
 | 
			
		||||
    0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0xE0, 0x03, 0x20, 0x00, 0x20,                                                       // 242
 | 
			
		||||
    0x00, 0x00, 0x60, 0x00, 0x80, 0x02, 0x80, 0x02, 0x80, 0x02, 0xE0, 0x01,                                                 // 243
 | 
			
		||||
    0x00, 0x00, 0xC0, 0x00, 0x20, 0x01, 0xE0, 0x03, 0x20, 0x01, 0xC0,                                                       // 244
 | 
			
		||||
    0x00, 0x00, 0x20, 0x02, 0x40, 0x01, 0x80, 0x00, 0x40, 0x01, 0x20, 0x02,                                                 // 245
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x00, 0x02, 0x00, 0x02, 0xE0, 0x03, 0x00, 0x02,                                                 // 246
 | 
			
		||||
    0x00, 0x00, 0x60, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0xE0, 0x03,                                                 // 247
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x00, 0x02, 0xE0, 0x03, 0x00, 0x02, 0xE0, 0x03,                                                 // 248
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x00, 0x02, 0xE0, 0x03, 0x00, 0x02, 0xE0, 0x03, 0x00, 0x06,                                     // 249
 | 
			
		||||
    0x00, 0x00, 0x20, 0x00, 0xE0, 0x03, 0x80, 0x02, 0x80, 0x02, 0x00, 0x01,                                                 // 250
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x80, 0x02, 0x80, 0x02, 0x00, 0x01, 0xE0, 0x03,                                                 // 251
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x80, 0x02, 0x80, 0x02, 0x80, 0x02, 0x00, 0x01,                                                 // 252
 | 
			
		||||
    0x00, 0x00, 0x40, 0x01, 0x20, 0x02, 0xA0, 0x02, 0xA0, 0x02, 0xC0, 0x01,                                                 // 253
 | 
			
		||||
    0x00, 0x00, 0xE0, 0x03, 0x80, 0x00, 0xC0, 0x01, 0x20, 0x02, 0xC0, 0x01,                                                 // 254
 | 
			
		||||
    0x00, 0x00, 0x40, 0x02, 0xA0, 0x01, 0xA0, 0x00, 0xA0, 0x00, 0xE0, 0x03,                                                 // 255
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
#ifndef OLEDDISPLAYFONTSUA_h
 | 
			
		||||
#define OLEDDISPLAYFONTSUA_h
 | 
			
		||||
 | 
			
		||||
#ifdef ARDUINO
 | 
			
		||||
#include <Arduino.h>
 | 
			
		||||
#elif __MBED__
 | 
			
		||||
#define PROGMEM
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
extern const uint8_t ArialMT_Plain_10_UA[] PROGMEM;
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -409,7 +409,7 @@ void setup()
 | 
			
		|||
 | 
			
		||||
#if defined(RF95_IRQ)
 | 
			
		||||
    if (!rIf) {
 | 
			
		||||
        rIf = new RF95Interface(RF95_NSS, RF95_IRQ, RF95_RESET, SPI);
 | 
			
		||||
        rIf = new RF95Interface(RF95_NSS, RF95_IRQ, RF95_RESET, RF95_DIO1, SPI);
 | 
			
		||||
        if (!rIf->init()) {
 | 
			
		||||
            LOG_WARN("Failed to find RF95 radio\n");
 | 
			
		||||
            delete rIf;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -235,11 +235,6 @@ void NodeDB::installRoleDefaults(meshtastic_Config_DeviceConfig_Role role)
 | 
			
		|||
        initModuleConfigIntervals();
 | 
			
		||||
    } else if (role == meshtastic_Config_DeviceConfig_Role_REPEATER) {
 | 
			
		||||
        config.display.screen_on_secs = 1;
 | 
			
		||||
        meshtastic_Channel &ch = channels.getByIndex(channels.getPrimaryIndex());
 | 
			
		||||
        meshtastic_ChannelSettings &channelSettings = ch.settings;
 | 
			
		||||
        uint8_t defaultpskIndex = 1;
 | 
			
		||||
        channelSettings.psk.bytes[0] = defaultpskIndex;
 | 
			
		||||
        channelSettings.psk.size = 1;
 | 
			
		||||
    } else if (role == meshtastic_Config_DeviceConfig_Role_TRACKER) {
 | 
			
		||||
        config.position.position_broadcast_smart_enabled = false;
 | 
			
		||||
        config.position.position_broadcast_secs = 120;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,8 +11,9 @@
 | 
			
		|||
 | 
			
		||||
#define POWER_DEFAULT 17 // How much power to use if the user hasn't set a power level
 | 
			
		||||
 | 
			
		||||
RF95Interface::RF95Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, SPIClass &spi)
 | 
			
		||||
    : RadioLibInterface(cs, irq, rst, RADIOLIB_NC, spi)
 | 
			
		||||
RF95Interface::RF95Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, RADIOLIB_PIN_TYPE busy,
 | 
			
		||||
                             SPIClass &spi)
 | 
			
		||||
    : RadioLibInterface(cs, irq, rst, busy, spi)
 | 
			
		||||
{
 | 
			
		||||
    LOG_WARN("RF95Interface(cs=%d, irq=%d, rst=%d)\n", cs, irq, rst);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,7 +12,7 @@ class RF95Interface : public RadioLibInterface
 | 
			
		|||
    RadioLibRF95 *lora = NULL; // Either a RFM95 or RFM96 depending on what was stuffed on this board
 | 
			
		||||
 | 
			
		||||
  public:
 | 
			
		||||
    RF95Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, SPIClass &spi);
 | 
			
		||||
    RF95Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, RADIOLIB_PIN_TYPE busy, SPIClass &spi);
 | 
			
		||||
 | 
			
		||||
    // TODO: Verify that this irq flag works with RFM95 / SX1276 radios the way it used to
 | 
			
		||||
    bool isIRQPending() override { return lora->getIRQFlags() & RADIOLIB_SX127X_MASK_IRQ_FLAG_VALID_HEADER; }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -218,8 +218,9 @@ void RadioLibInterface::onNotify(uint32_t notification)
 | 
			
		|||
                setTransmitDelay(); // currently Rx/Tx-ing: reset random delay
 | 
			
		||||
            } else {
 | 
			
		||||
                if (isChannelActive()) { // check if there is currently a LoRa packet on the channel
 | 
			
		||||
                    // LOG_DEBUG("Channel is active: set random delay\n");
 | 
			
		||||
                    setTransmitDelay(); // reset random delay
 | 
			
		||||
                    // LOG_DEBUG("Channel is active, try receiving first.\n");
 | 
			
		||||
                    startReceive(); // try receiving this packet, afterwards we'll be trying to transmit again
 | 
			
		||||
                    setTransmitDelay();
 | 
			
		||||
                } else {
 | 
			
		||||
                    // Send any outgoing packets we have ready
 | 
			
		||||
                    meshtastic_MeshPacket *txp = txQueue.dequeue();
 | 
			
		||||
| 
						 | 
				
			
			@ -388,8 +389,6 @@ void RadioLibInterface::startSend(meshtastic_MeshPacket *txp)
 | 
			
		|||
        LOG_WARN("startSend is dropping tx packet because we are disabled\n");
 | 
			
		||||
        packetPool.release(txp);
 | 
			
		||||
    } else {
 | 
			
		||||
        setStandby(); // Cancel any already in process receives
 | 
			
		||||
 | 
			
		||||
        configHardwareForSend(); // must be after setStandby
 | 
			
		||||
 | 
			
		||||
        size_t numbytes = beginSending(txp);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -148,7 +148,11 @@ bool ReliableRouter::stopRetransmission(GlobalPacketId key)
 | 
			
		|||
    if (old) {
 | 
			
		||||
        auto numErased = pending.erase(key);
 | 
			
		||||
        assert(numErased == 1);
 | 
			
		||||
        // remove the 'original' (identified by originator and packet->id) from the txqueue and free it
 | 
			
		||||
        cancelSending(getFrom(old->packet), old->packet->id);
 | 
			
		||||
        // now free the pooled copy for retransmission too. tryfix for #2228
 | 
			
		||||
        if (old->packet)
 | 
			
		||||
            packetPool.release(old->packet);
 | 
			
		||||
        return true;
 | 
			
		||||
    } else
 | 
			
		||||
        return false;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -232,7 +232,7 @@ template <typename T> bool SX126xInterface<T>::isChannelActive()
 | 
			
		|||
 | 
			
		||||
    setStandby();
 | 
			
		||||
    result = lora.scanChannel();
 | 
			
		||||
    if (result == RADIOLIB_PREAMBLE_DETECTED)
 | 
			
		||||
    if (result == RADIOLIB_LORA_DETECTED)
 | 
			
		||||
        return true;
 | 
			
		||||
 | 
			
		||||
    assert(result != RADIOLIB_ERR_WRONG_MODEM);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -222,7 +222,7 @@ template <typename T> bool SX128xInterface<T>::isChannelActive()
 | 
			
		|||
 | 
			
		||||
    setStandby();
 | 
			
		||||
    result = lora.scanChannel();
 | 
			
		||||
    if (result == RADIOLIB_PREAMBLE_DETECTED)
 | 
			
		||||
    if (result == RADIOLIB_LORA_DETECTED)
 | 
			
		||||
        return true;
 | 
			
		||||
 | 
			
		||||
    assert(result != RADIOLIB_ERR_WRONG_MODEM);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -57,9 +57,13 @@ typedef enum _meshtastic_HardwareModel {
 | 
			
		|||
    meshtastic_HardwareModel_TLORA_V2_1_1P8 = 15,
 | 
			
		||||
    /* TODO: REPLACE */
 | 
			
		||||
    meshtastic_HardwareModel_TLORA_T3_S3 = 16,
 | 
			
		||||
    /* B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer */
 | 
			
		||||
    meshtastic_HardwareModel_NANO_G1_EXPLORER = 17,
 | 
			
		||||
    /* B&Q Consulting Station Edition G1: https://uniteng.com/wiki/doku.php?id=meshtastic:station */
 | 
			
		||||
    meshtastic_HardwareModel_STATION_G1 = 25,
 | 
			
		||||
    /* Less common/prototype boards listed here (needs one more byte over the air) */
 | 
			
		||||
    /* ---------------------------------------------------------------------------
 | 
			
		||||
 Less common/prototype boards listed here (needs one more byte over the air)
 | 
			
		||||
 --------------------------------------------------------------------------- */
 | 
			
		||||
    meshtastic_HardwareModel_LORA_RELAY_V1 = 32,
 | 
			
		||||
    /* TODO: REPLACE */
 | 
			
		||||
    meshtastic_HardwareModel_NRF52840DK = 33,
 | 
			
		||||
| 
						 | 
				
			
			@ -89,9 +93,9 @@ typedef enum _meshtastic_HardwareModel {
 | 
			
		|||
    meshtastic_HardwareModel_BETAFPV_2400_TX = 45,
 | 
			
		||||
    /* BetaFPV ExpressLRS "Nano" TX Module 900MHz with ESP32 CPU */
 | 
			
		||||
    meshtastic_HardwareModel_BETAFPV_900_NANO_TX = 46,
 | 
			
		||||
    /* B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer */
 | 
			
		||||
    meshtastic_HardwareModel_NANO_G1_EXPLORER = 47,
 | 
			
		||||
    /* Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits. */
 | 
			
		||||
    /* ------------------------------------------------------------------------------------------------------------------------------------------
 | 
			
		||||
 Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits.
 | 
			
		||||
 ------------------------------------------------------------------------------------------------------------------------------------------ */
 | 
			
		||||
    meshtastic_HardwareModel_PRIVATE_HW = 255
 | 
			
		||||
} meshtastic_HardwareModel;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -95,6 +95,8 @@
 | 
			
		|||
#define HW_VENDOR meshtastic_HardwareModel_TLORA_T3_S3
 | 
			
		||||
#elif defined(BETAFPV_2400_TX)
 | 
			
		||||
#define HW_VENDOR meshtastic_HardwareModel_BETAFPV_2400_TX
 | 
			
		||||
#elif defined(NANO_G1_EXPLORER)
 | 
			
		||||
#define HW_VENDOR meshtastic_HardwareModel_NANO_G1_EXPLORER
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
//
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,8 +20,8 @@
 | 
			
		|||
#ifndef USE_JTAG
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#endif
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
#define LORA_DIO1 RADIOLIB_NC
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
 | 
			
		||||
// ratio of voltage divider = 3.20 (R1=100k, R2=220k)
 | 
			
		||||
#define ADC_MULTIPLIER 3.2
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,7 +24,7 @@
 | 
			
		|||
#ifndef USE_JTAG
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#endif
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO1 35 // https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
 | 
			
		||||
#define ADC_MULTIPLIER 3.8
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,7 +21,7 @@
 | 
			
		|||
#ifndef USE_JTAG
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#endif
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO1 35 // https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
 | 
			
		||||
// ratio of voltage divider = 3.20 (R12=100k, R10=220k)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,8 @@
 | 
			
		|||
; The 1.0 release of the nano-g1-explorer board 
 | 
			
		||||
[env:nano-g1-explorer]
 | 
			
		||||
extends = esp32_base
 | 
			
		||||
board = ttgo-t-beam
 | 
			
		||||
lib_deps =
 | 
			
		||||
  ${esp32_base.lib_deps}
 | 
			
		||||
build_flags = 
 | 
			
		||||
  ${esp32_base.build_flags} -D NANO_G1_EXPLORER  -I variants/nano-g1-explorer
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,37 @@
 | 
			
		|||
// #define BUTTON_NEED_PULLUP // if set we need to turn on the internal CPU pullup during sleep
 | 
			
		||||
 | 
			
		||||
#define I2C_SDA 21
 | 
			
		||||
#define I2C_SCL 22
 | 
			
		||||
 | 
			
		||||
#define BUTTON_PIN 36 // The user button (information button) GPIO on the Nano G1 explorer
 | 
			
		||||
//#define BUTTON_PIN_ALT 13 // Alternate GPIO for an external button if needed. Does anyone use this? It is not documented
 | 
			
		||||
// anywhere.
 | 
			
		||||
#define EXT_NOTIFY_OUT 13 // Default pin to use for Ext Notify Module.
 | 
			
		||||
 | 
			
		||||
// common pinout for their SX1262 vs RF95 modules - both can be enabled and we will probe at runtime for RF95 and if
 | 
			
		||||
// not found then probe for SX1262
 | 
			
		||||
#define USE_RF95
 | 
			
		||||
#define USE_SX1262
 | 
			
		||||
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 23
 | 
			
		||||
#define LORA_DIO1 33 // SX1262 IRQ
 | 
			
		||||
#define LORA_DIO2 32 // SX1262 BUSY
 | 
			
		||||
#define LORA_DIO3    // Not connected on PCB
 | 
			
		||||
 | 
			
		||||
#ifdef USE_SX1262
 | 
			
		||||
#define SX126X_CS RF95_NSS // FIXME - we really should define LORA_CS instead
 | 
			
		||||
#define SX126X_DIO1 LORA_DIO1
 | 
			
		||||
#define SX126X_BUSY LORA_DIO2
 | 
			
		||||
#define SX126X_RESET LORA_RESET
 | 
			
		||||
#define SX126X_E22 // Not really an E22
 | 
			
		||||
// Internally the module hooks the SX1262-DIO2 in to control the TX/RX switch (which is the default for the sx1262interface
 | 
			
		||||
// code)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define BATTERY_PIN 35           // A battery voltage measurement pin, voltage divider connected here to measure battery voltage
 | 
			
		||||
#define BATTERY_SENSE_SAMPLES 15 // Set the number of samples, It has an effect of increasing sensitivity.
 | 
			
		||||
#define ADC_MULTIPLIER 2
 | 
			
		||||
 | 
			
		||||
//#define USE_SH1107    // Finally we will use SH1107 128x64 resolution driver, because SH1106 will shift the screen by 2 lines.
 | 
			
		||||
#define USE_SH1106
 | 
			
		||||
| 
						 | 
				
			
			@ -10,7 +10,7 @@
 | 
			
		|||
#define USE_RF95
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 23
 | 
			
		||||
#define LORA_DIO1 33 // Not really used
 | 
			
		||||
#define LORA_DIO1 33
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
 | 
			
		||||
// This board has different GPS pins than all other boards
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,5 +15,5 @@
 | 
			
		|||
#define USE_RF95
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
#define LORA_DIO1 33 // Must be manually wired: https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,5 +18,5 @@
 | 
			
		|||
#define USE_RF95
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
#define LORA_DIO1 33 // Prob. must be manually wired: https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
| 
						 | 
				
			
			@ -18,5 +18,5 @@
 | 
			
		|||
#define USE_RF95
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 14
 | 
			
		||||
#define LORA_DIO1 35 // Not really used
 | 
			
		||||
#define LORA_DIO2 34 // Not really used
 | 
			
		||||
#define LORA_DIO1 33 // Must be manually wired: https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,3 +18,5 @@
 | 
			
		|||
#define USE_RF95
 | 
			
		||||
#define LORA_DIO0 26 // a No connect on the SX1262 module
 | 
			
		||||
#define LORA_RESET 23
 | 
			
		||||
#define LORA_DIO1 33 // https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436
 | 
			
		||||
#define LORA_DIO2 32 // Not really used
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
[VERSION]  
 | 
			
		||||
major = 2
 | 
			
		||||
minor = 0
 | 
			
		||||
build = 21
 | 
			
		||||
build = 22
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Ładowanie…
	
		Reference in New Issue