├── logo.png ├── firmware ├── logo.png └── firmware.ino ├── software ├── splash.png ├── Makefile ├── gensav.py ├── README.md ├── dkart.c ├── font.h └── splash.h ├── .gitignore ├── LICENSE ├── README.md └── hardware ├── Dkart.json └── PCB.json /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/konsumer/dkart/HEAD/logo.png -------------------------------------------------------------------------------- /firmware/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/konsumer/dkart/HEAD/firmware/logo.png -------------------------------------------------------------------------------- /software/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/konsumer/dkart/HEAD/software/splash.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Object files 2 | *.o 3 | *.lst 4 | *.map 5 | *.sym 6 | 7 | # Libraries 8 | *.lib 9 | *.a 10 | 11 | # Shared objects (inc. Windows DLLs) 12 | *.dll 13 | *.so 14 | *.so.* 15 | *.dylib 16 | 17 | # Executables 18 | *.exe 19 | *.out 20 | *.app 21 | *.gb 22 | *.gbc 23 | *.sav 24 | 25 | # project files 26 | *.sublime-* 27 | *.*#* 28 | *.pro 29 | *.epf 30 | 31 | # OS files 32 | .DS_Store 33 | 34 | # Generated data 35 | splash_tiles.png 36 | -------------------------------------------------------------------------------- /software/Makefile: -------------------------------------------------------------------------------- 1 | # -Wl-yt3 = "MBC1+RAM+BATTERY", -Wl-yo0="512K ROM", -Wl-ya4="128K RAM" 2 | CC = /opt/gbdk/bin/lcc -Wa-l -Wl-m -Wl-yt3 -Wl-yo4 -Wl-ya4 3 | 4 | all: splash.h dkart.gb 5 | 6 | %.o: %.c 7 | $(CC) -c -o $@ $< 8 | 9 | %.s: %.c 10 | $(CC) -S -o $@ $< 11 | 12 | %.o: %.s 13 | $(CC) -c -o $@ $< 14 | 15 | %.gb: %.o 16 | $(CC) -o $@ $< 17 | 18 | splash.h: 19 | ggbgfx tileset -o splash_tiles.png splash.png &&\ 20 | ggbgfx tilemap -n splash_map splash.png splash_tiles.png >> splash.h &&\ 21 | ggbgfx tiledata -n splash_tiles splash_tiles.png >> splash.h 22 | 23 | clean: 24 | rm -f *.o *.lst *.map *.gb *.gbc *~ *.rel *.cdb *.ihx *.lnk *.sym *.asm splash_tiles.png splash.h 25 | 26 | -------------------------------------------------------------------------------- /software/gensav.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | 3 | """ 4 | Generate a fake SAV file for a list of ROMs 5 | 6 | This is good for emulators, so you can pretend you're running in DKART 7 | 8 | Usage: ./gensav.py 9 | """ 10 | 11 | import glob 12 | import sys 13 | import ctypes 14 | 15 | sav=open('dkart.sav', 'wb') 16 | 17 | romCount=0 18 | for r in glob.glob("%s/*.gb" % (sys.argv[1])): 19 | if (r != "dkart.gb"): 20 | rom=open(r, 'rb') 21 | rom.seek(0x0134, 0) 22 | name=rom.read(0x0F) 23 | rom.close() 24 | sav.seek((romCount*(0x0F + 1)) + 4, 0) 25 | sav.write(name) 26 | sav.write(b'\x00') 27 | romCount=romCount+1 28 | 29 | # convert rom-count to GB ulong (4 bytes) 30 | sav.seek(0, 0) 31 | sav.write(ctypes.c_uint32(romCount)) 32 | 33 | # 0-fill to 32768 34 | romArea = romCount * (0x0F + 1) 35 | sav.seek(romArea + 4, 0) 36 | sav.write(b'\x00' * (32768 - romArea - 4)) 37 | 38 | sav.close() 39 | 40 | print("Created dkart.sav for %d ROMs." % (romCount)) -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 David Konsumer 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /software/README.md: -------------------------------------------------------------------------------- 1 | # software 2 | 3 | This defines the menu-ROM that dkart serves up. 4 | 5 | This is very much incomplete, as I need to work out some basic stuff. 6 | 7 | Eventually, I'd like to make a simple gbdk header file that users can import and use in their own ROMs to mess with hardware. 8 | 9 | Here are some resources: 10 | 11 | * Ideas for menu ROM programming from [gbdk_playground](https://github.com/mrombout/gbdk_playground) 12 | * Original examples from [gbdk-salvage](https://github.com/gbdk-salvage/grooves-game-boy-programming) 13 | * [GBSoundDemo](https://github.com/Zal0/GBSoundDemo) has a nice menu 14 | * [gbdk docs](http://gbdk.sourceforge.net/doc/gbdk-doc.pdf) 15 | * [hardware spec](http://www.emulatronia.com/doctec/consolas/gameboy/Gmb-spec.txt) 16 | * [cpu info](http://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf) 17 | 18 | In order to use Makefile, you will need docker (if you want to compile your own splash.h), gbdk & rgbds. 19 | 20 | When you have all this installed, check the file for correct paths and run `make`. 21 | 22 | ### splash 23 | 24 | I made the splash-image with [ggbgfx](https://www.gbdkjs.com/docs/ggbgfx/). If you just want to use mine, you don;t need to do any of this. 25 | 26 | ```sh 27 | npm i -g ggbgfx-cli 28 | rm splash.h 29 | make 30 | ``` 31 | 32 | ### dependencies 33 | 34 | Make sure you have [GBDK](https://github.com/gheja/gbdk), and edit Makefile to have the correct path to [GBDK](http://gbdk.sourceforge.net/). 35 | 36 | #### Arch Linux 37 | 38 | This is what I am using, primarily, so it's the best-tested. 39 | 40 | ```sh 41 | yay -S gbdk rgbds 42 | ``` 43 | 44 | #### Ubuntu Linux 45 | First you'll need these: 46 | 47 | ```sh 48 | sudo apt-get -y install make gcc g++ bison flex 49 | ``` 50 | 51 | Now, run "Make" steps, below. 52 | 53 | #### Other OS 54 | 55 | I'm sure you can install them on MacOS, Windows, etc, but I didn't have time to test. If you figure it out, send a PR! 56 | 57 | 58 | #### Make 59 | 60 | ```sh 61 | wget https://github.com/gheja/gbdk/archive/master.zip -O gbdk.zip 62 | unzip gbdk.zip 63 | cd gbdk-master 64 | make 65 | sudo make install 66 | 67 | cd .. 68 | 69 | wget https://github.com/rednex/rgbds/archive/master.zip -O rgbds.zip 70 | unzip rgbds.zip 71 | cd rgbds-master 72 | make 73 | sudo make install 74 | ``` -------------------------------------------------------------------------------- /firmware/firmware.ino: -------------------------------------------------------------------------------- 1 | /* 2 | HARDWARE: 3 | 4 | ESP32: https://www.banggood.com/Geekcreit-ESP32-WiFibluetooth-Development-Board-Ultra-Low-Power-Consumption-Dual-Cores-Unsoldered-p-1214159.html 5 | SDCard hooked to P5 (SS), P18 (SCK), P19 (MISO), P23 (MOSI) 6 | 7 | Currently this just builds a dkart.sav from the current file-list 8 | */ 9 | 10 | // use https://github.com/greiman/SdFat-beta 11 | #include "SdFat.h" 12 | 13 | // this defines the hardware 14 | 15 | // SD on HSPI - http://www.ayarafun.com/wp-content/uploads/2016/11/esp32-pinout.png 16 | // MISO - 12 17 | // MOSI - 13 18 | // SCK - 14 19 | // SS - 15 20 | 21 | // https://dhole.github.io/media/gameboy_stm32f4/gb_cartridge_pins.jpg 22 | 23 | // it's maxed-out, so no i2c or serial or wifi 24 | // probly should use a shift-in (like 74F676) to handle GB address 25 | // with i2s sort of like this: 26 | // https://github.com/Crypter/CryptoIO 27 | // https://github.com/lhartmann/esp8266_reprap 28 | // https://esp32.com/viewtopic.php?f=17&t=3188 29 | // i2s allows very fast low-cpu serial 30 | 31 | #define GB_A0 GPIO36 32 | #define GB_A1 GPIO39 33 | #define GB_A2 GPIO34 34 | #define GB_A3 GPIO35 35 | #define GB_A4 GPIO32 36 | #define GB_A5 GPIO33 37 | #define GB_A6 GPIO25 38 | #define GB_A7 GPIO26 39 | #define GB_A8 GPIO27 40 | #define GB_A9 GPIO09 41 | #define GB_A10 GPIO10 42 | #define GB_A11 GPIO11 43 | #define GB_A12 GPIO23 44 | #define GB_A13 GPIO22 45 | #define GB_A14 GPIO01 46 | #define GB_A15 GPIO03 47 | 48 | #define GB_D0 GPIO21 49 | #define GB_D1 GPIO19 50 | #define GB_D2 GPIO18 51 | #define GB_D3 GPIO05 52 | #define GB_D4 GPIO17 53 | #define GB_D5 GPIO16 54 | #define GB_D6 GPIO04 55 | #define GB_D7 GPIO00 56 | 57 | #define GB_WR GPIO02 58 | #define GB_RD GPIO08 59 | #define GB_CLK GPIO07 60 | #define GB_CS GPIO06 61 | 62 | // #define GB_RST 63 | #define GB_AUD ADC12 // GPIO02 64 | 65 | // this is maybe a bit specifc to my hardware, see SdFat examples to tune to yours, if needed 66 | #define SD_CONFIG SdSpiConfig(SS, DEDICATED_SPI, SD_SCK_MHZ(16)) 67 | 68 | #define error(s) { errState = true; sd.errorHalt(&Serial, F(s)); } 69 | #define interval 500 70 | 71 | // This figures out correct filesystem (EX/FAT16/32) 72 | SdFs sd; 73 | FsFile file; 74 | FsFile root; 75 | FsFile sav; 76 | 77 | char romName[15]; 78 | 79 | unsigned long romCount = 0; 80 | char currentRom[255] = "dkart.gb"; 81 | char currentSav[255] = "dkart.sav"; 82 | 83 | bool errState = false; 84 | 85 | // async LED blinker to show error-state 86 | int ledState = LOW; 87 | unsigned long previousMillis = 0; 88 | unsigned long currentMillis = 0; 89 | void ledBlink () { 90 | currentMillis = millis(); 91 | if (currentMillis - previousMillis >= interval) { 92 | previousMillis = currentMillis; 93 | ledState = ledState == LOW ? HIGH : LOW; 94 | digitalWrite(LED_BUILTIN, ledState); 95 | } 96 | } 97 | 98 | void setup() { 99 | pinMode(LED_BUILTIN, OUTPUT); 100 | 101 | Serial.begin(115200); 102 | 103 | if (!sd.begin(SD_CONFIG)) { 104 | errState = true; 105 | sd.initErrorHalt(&Serial); 106 | } 107 | 108 | // TODO: use GB-CLK interrupt to sleep/read 109 | // TODO: lookup currentRom from EEPROM/SDCard 110 | // TODO: derive currentSav filename from currentRom 111 | 112 | // read file-list into dkart.sav 113 | if (!root.open("/")) { 114 | error("open root"); 115 | } 116 | 117 | if (!sav.open(currentSav, O_CREAT|O_WRITE)) { 118 | error("creating SAV"); 119 | } 120 | 121 | romCount = 0; 122 | sav.seek(4); 123 | while (file.openNext(&root, O_RDONLY)) { 124 | char fname[255]; 125 | file.getName(fname, 255); 126 | Serial.println(fname); 127 | if (!file.isHidden() && !file.isSubDir() && strcmp(".gb", &fname[ strlen(fname) - 3 ]) == 0 && strcmp("dkart.gb", fname) != 0) { 128 | file.seek(0x0134); 129 | file.read(romName, 15); 130 | sav.write(fname, 15); 131 | romCount++; 132 | } 133 | file.close(); 134 | } 135 | 136 | // turn romCount into 4-bytes at beginning of file 137 | byte rc[4] = { 138 | romCount & 0xFF, 139 | (romCount >> 8) & 0xFF, 140 | (romCount >> 16) & 0xFF, 141 | (romCount >> 24) & 0xFF 142 | }; 143 | sav.seek(0); 144 | sav.write(rc, 4); 145 | 146 | // 0-fill to 32768 (the RAM size in dkart ROM-header) 147 | unsigned long zeroCount = 32768 - (romCount * 0x0F) - 4; 148 | sav.seek((romCount * 0x0F) + 4); 149 | while(zeroCount){ 150 | sav.write("\0", 1); 151 | zeroCount--; 152 | } 153 | 154 | sav.close(); 155 | 156 | Serial.write("ROMS Found: "); 157 | Serial.println(romCount); 158 | } 159 | 160 | void loop() { 161 | if (errState) { 162 | ledBlink(); 163 | } 164 | } 165 | -------------------------------------------------------------------------------- /software/dkart.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "./splash.h" 6 | #include "./font.h" 7 | 8 | #define LEN_ROM 15 9 | #define LEN_PAGE 17 10 | 11 | char arrowString[] = {26, 0}; 12 | 13 | // first 4 bytes of SRAM is total ROMs 14 | unsigned long* PTR_ROM_COUNT = (long*) 0xA000; 15 | 16 | // rest is list of ROMs 17 | char* PTR_ROMS = (char*) 0xA004; 18 | 19 | // this is where commands are sent to dkart 20 | char* PTR_CMD = (char*) 0xBFF0; 21 | 22 | unsigned long totalPages; 23 | unsigned long totalRoms; 24 | unsigned int p; 25 | char buff[LEN_ROM + 1]; 26 | unsigned int input; 27 | char status[20]; 28 | unsigned int currentPage; 29 | unsigned int currentRom; 30 | unsigned long lastRom; 31 | unsigned long RAMoffset; 32 | 33 | // clear the screen 34 | void cls (void) NONBANKED; 35 | 36 | // This makes debug messages work in no$gmb & bgb 37 | // TODO: this isn't working 38 | char* PTR_DEBUG = (char*) 0x6464; 39 | void DEBUG(char* message) { 40 | memcpy(PTR_DEBUG[0], message, sizeof(message)); 41 | } 42 | 43 | // print at a X,Y 44 | // TODO: look into full printf - https://stackoverflow.com/questions/1056411/how-to-pass-variable-number-of-arguments-to-printf-sprintf 45 | void pr (char x, char y, char *string) { 46 | UBYTE strLen = strlen(string); 47 | set_bkg_tiles(x,y,strLen,1,(unsigned char *)string); 48 | } 49 | 50 | // center text on line Y 51 | void center (char y, char *string){ 52 | UBYTE offset; 53 | offset = 10 - (strlen(string) / 2); 54 | pr(0, y, " "); 55 | pr(offset, y, string); 56 | } 57 | 58 | // show splash-screen 59 | void splash () { 60 | set_bkg_data(0, sizeof(splash_map) * 64, splash_tiles); 61 | set_bkg_tiles(0, 0, 20, 18, splash_map); 62 | SHOW_BKG; 63 | } 64 | 65 | // make a "bwoop" sound 66 | void soundChoose () { 67 | NR10_REG = 0x16; 68 | NR11_REG = 0x40; 69 | NR12_REG = 0x73; 70 | NR13_REG = 0x00; 71 | NR14_REG = 0xC3; 72 | } 73 | 74 | // make a move-sound 75 | void soundMove(){ 76 | NR10_REG = 0x79; 77 | NR11_REG = 0x8D; 78 | NR12_REG = 0x63; 79 | NR13_REG = 0xC8; 80 | NR14_REG = 0x80; 81 | } 82 | 83 | // show the current page of roms 84 | void drawMenu() { 85 | sprintf(status, "%d/%d", currentPage + 1, totalPages + 1); 86 | center(LEN_PAGE, status); 87 | currentRom = 0; 88 | if (currentPage == totalPages){ 89 | lastRom = ((unsigned int) totalRoms % LEN_PAGE); 90 | } else { 91 | lastRom = LEN_PAGE; 92 | } 93 | for (p=0; p!=LEN_PAGE; p++){ 94 | pr(1, p, " "); 95 | if (p < lastRom){ 96 | pr(1, p, PTR_ROMS + ((currentPage * LEN_PAGE + p) * (LEN_ROM+1))); 97 | } 98 | } 99 | } 100 | 101 | // show the current rom-selection with arrow 102 | void drawSelection() { 103 | for (p=0; p!=LEN_PAGE; p++){ 104 | pr(0, p, p == currentRom ? arrowString : " "); 105 | } 106 | } 107 | 108 | void init () { 109 | DISPLAY_ON; 110 | ENABLE_RAM_MBC1; 111 | NR52_REG = 0x80; 112 | NR51_REG = 0x11; 113 | NR50_REG = 0x77; 114 | // DEBUG("init complete"); 115 | } 116 | 117 | void main () { 118 | init(); 119 | cls(); 120 | splash(); 121 | waitpad(J_START | J_SELECT | J_B | J_A); 122 | soundChoose(); 123 | 124 | currentPage = 0; 125 | currentRom = 0; 126 | totalRoms = PTR_ROM_COUNT[0]; 127 | totalPages = totalRoms / LEN_PAGE; 128 | 129 | cls(); 130 | set_bkg_data( 0, 132, font_tiles ); 131 | SPRITES_8x8; 132 | SHOW_BKG; 133 | 134 | drawMenu(); 135 | drawSelection(); 136 | 137 | while(1){ 138 | input = joypad(); 139 | if (input & J_UP && currentRom != 0) { 140 | currentRom -= 1; 141 | } 142 | if (input & J_DOWN && currentRom != (lastRom-1)) { 143 | currentRom += 1; 144 | } 145 | if ((input & J_LEFT) && currentPage != 0) { 146 | currentPage -= 1; 147 | } 148 | if ((input & J_RIGHT) && currentPage < totalPages) { 149 | currentPage += 1; 150 | } 151 | if (input & J_LEFT || input & J_RIGHT){ 152 | drawMenu(); 153 | } 154 | if (input & J_LEFT || input & J_RIGHT || input & J_UP || input & J_DOWN){ 155 | drawSelection(); 156 | soundMove(); 157 | waitpadup(); 158 | } 159 | if (input & J_START || input & J_A){ 160 | waitpadup(); 161 | break; 162 | } 163 | } 164 | 165 | cls(); 166 | soundChoose(); 167 | 168 | RAMoffset = (currentPage * LEN_PAGE) + currentRom; 169 | 170 | sprintf(status, "ROM #%d", RAMoffset); 171 | center(LEN_PAGE/2, status); 172 | 173 | // send "load this ROM" message to dkart 174 | PTR_CMD[0] = 'L'; 175 | PTR_CMD[1] = RAMoffset; 176 | 177 | waitpad(J_START | J_SELECT | J_B | J_A); 178 | reset(); 179 | } 180 | 181 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dkart 2 | 3 | An open-hardware and software Gameboy flash-cart and hardware peripheral framework that uses off-the-shelf hardware. The goal is to be ultra-cheap and simple. 4 | 5 | ![logo](./logo.png) 6 | 7 | ## quickstart 8 | 9 | If you just want to get started, go to [releases](https://github.com/konsumer/dkart/releases) and grab `dkart.gb`, and put it on a FAT32-formatted SDCard. Solder together the hardware, plug it in, and startup your gameboy. 10 | 11 | 12 | ## Hardware 13 | 14 | It's meant to be very cheap & easy to put together. I made a PCB, and you can just solder in a [cheap ESP32 board](https://www.banggood.com/Geekcreit-ESP32-WiFibluetooth-Development-Board-Ultra-Low-Power-Consumption-Dual-Cores-Unsoldered-p-1214159.html) and the [SDCard shield](https://www.banggood.com/SD-Card-Module-Slot-Socket-Reader-Mp3-player-p-74105.html), and it should work. 15 | 16 | Originally, I designed this as a custom circuit with really low-resource chips, but realized it was much easier and cheaper to just use more modern ready-made stuff. 17 | 18 | Eventually I'd like to add an i2c bus that can be triggered/read from gameboy, so users can easily mess with hardware peripherals. 19 | 20 | I am still working on the PCB & schematic. You can open hardware/Dkart.json at [easyeda](https://easyeda.com/). 21 | 22 | ### under consideration 23 | 24 | Here are some other ideas I am looking at: 25 | 26 | * [STM32F401](https://www.banggood.com/STM32F401-Development-Board-STM32F401CCU6-STM32F4-Learning-Board-p-1568897.html) 27 | * [This board](https://www.banggood.com/LILYGO-TTGO-T2-ESP32-0_95-OLED-SD-Card-WiFi-bluetooth-Module-Development-Board-p-1270477.html) has a SDCard and OLED screen (and wifi/bluetooth) 28 | * [cheap atmega2560 board](https://robotdyn.com/mega-2560-pro-mini-atmega2560-16au.html), works with arduino & has more IO/RAM/CPU, but still not big enough to hold every ROM 29 | * [fast flash mem](https://www.sparkfun.com/products/15809) - I could load the rom & ram into flash temporarily on a lower-end microcontroller, then feed the data to the GB. 30 | * [something like this](https://www.banggood.com/GY-Openlog-Cleanflight-Naze32-F3-Blackbox-Flash-Recorder-Module-p-1309673.html) has a lot of storage (32GB) but might not be fast enough 31 | * [ready-made cart PCB](https://store.kitsch-bent.com/product/kk_gb_brkout) - with a little simple soldering and a big flash chip, I could probly get it all to fit inside a cartridge 32 | * [something like this](http://ww1.microchip.com/downloads/en/DeviceDoc/20005023B.pdf) could be hooked up directly to GB pins, with maybe a little simple mode-management from a micro 33 | * [sdfat](https://github.com/greiman/SdFat-beta) can do 3965.11 KB/Sec transfer in dedicated SPI with a slow cad, which should be fast enough 34 | * [better SDCards](https://www.cameramemoryspeed.com/sd-memory-card-faq/fastest-memory-card/) can go much faster, so make sure to check SD speed (SDFst has a `bench` sketch) 35 | * 3d print longer cart to hold more electronics if needed. [here](https://www.thingiverse.com/thing:2882206) are some nice variations. [Here](https://www.thingiverse.com/thing:3101147) is a nice modular design (opnscad - chnage logo, etc) 36 | * I have a [ATxmega128A1 breakout](https://www.sparkfun.com/products/retired/9546) laying around, but it's discontinued at sparkfun. It has 78 IO and 32 MIPS! It only has 128kB of flash memory & 8 kB SRAM, but could be used easily with other things, possibly SD alone is fast enough. 37 | * look at [this ESP32 cart](https://hackaday.io/project/20769-wifi-game-boy-cartridge). They have a lot of the same ideas. 38 | 39 | 40 | ## Firmware 41 | 42 | The firmware runs on the device to emulate ROM/RAM reading/writing data to a microSD card formatted FAT16/FAT32/ExFat. The firmware is meant to be compiled in Arduino IDE. If you open serial-monitor when it's running, you'll see some debugging output. On Arch Linux, I had to use `arduino-PR-beta1.9-BUILD-117` for serial-monitor to work, due to some java error. 43 | 44 | Files should all be in the root of the SDCard. The fRAM-size is 128K so you may hit limits if you have a ton of ROM files on the SD (limit should be around 8,737.) The file-list uses ROM-header-title, so if you have a bunch of the same ROM file-named differently, it will work, but in the ROM-list they will all have the same name. You can use this trick to have different copies of the same ROM with separate RAM files (like 1-per-song for nanoloop, for example.) 45 | 46 | ## Software 47 | 48 | A menu runs on the Gameboy to choose the current ROM/RAM. When a ROM is chosen, the gameboy reboots using that ROM/RAM. 49 | 50 | To compile, run 51 | 52 | ```sh 53 | make 54 | ``` 55 | 56 | in the software directory. 57 | 58 | You can read more about it in [software](./software/README.md). 59 | 60 | ## TODO 61 | 62 | * Actually Implement MBC1 63 | * Get SD-loading working (on boot load into RAM from SD while playing logo) 64 | * Get menu working (get list of ROMs from firmware, on menu selection, set mem, load on reboot & clear mem) 65 | * Implement MBC5 66 | * Replace Nintendo logo with mine 67 | * add extra IO-functionality, reading/writing to a specific memory location to turn on "I/O mode" and be able to interface with other peripherals 68 | * Add support for sub-directories 69 | * Create a modern cross-platform GBDK-focused full dev-env (use wine & docker to run stuff like GBTD.) Alternately, write some web-based tools around GBDK.js to allow sprite/map/sound editing. 70 | 71 | ## License 72 | 73 | * Hardware is licensed ![CC-BY-SA](http://i.creativecommons.org/l/by-sa/3.0/88x31.png) 74 | * Firmware & Software is licensed ![GPLv3](http://www.gnu.org/graphics/gplv3-88x31.png) 75 | 76 | 77 | ## Thanks 78 | 79 | * Lots of hardware/firmware ideas from [here](https://dhole.github.io/post/gameboy_cartridge_emu_1/) 80 | * Ideas for menu ROM programming from [gbdk_playground](https://github.com/mrombout/gbdk_playground), [gbdk-salvage](https://github.com/gbdk-salvage/grooves-game-boy-programming), & [GBSoundDemo](https://github.com/Zal0/GBSoundDemo) -------------------------------------------------------------------------------- /software/font.h: -------------------------------------------------------------------------------- 1 | unsigned char font_tiles[] = { 2 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 3 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 4 | 0x1C,0x1C,0x22,0x22,0x36,0x36,0x22,0x22, 5 | 0x2A,0x2A,0x22,0x22,0x1C,0x1C,0x00,0x00, 6 | 0x1C,0x1C,0x3E,0x3E,0x2A,0x2A,0x3E,0x3E, 7 | 0x22,0x22,0x3E,0x3E,0x1C,0x1C,0x00,0x00, 8 | 0x00,0x00,0x14,0x14,0x3E,0x3E,0x3E,0x3E, 9 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00, 10 | 0x00,0x00,0x08,0x08,0x1C,0x1C,0x3E,0x3E, 11 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00, 12 | 0x08,0x08,0x1C,0x1C,0x1C,0x1C,0x08,0x08, 13 | 0x3E,0x3E,0x3E,0x3E,0x08,0x08,0x00,0x00, 14 | 0x00,0x00,0x08,0x08,0x1C,0x1C,0x3E,0x3E, 15 | 0x3E,0x3E,0x08,0x08,0x1C,0x1C,0x00,0x00, 16 | 0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18, 17 | 0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00, 18 | 0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x66,0x66, 19 | 0x66,0x66,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E, 20 | 0x00,0x00,0x00,0x00,0x3C,0x3C,0x24,0x24, 21 | 0x24,0x24,0x3C,0x3C,0x00,0x00,0x00,0x00, 22 | 0x7E,0x7E,0x7E,0x7E,0x42,0x42,0x5A,0x5A, 23 | 0x5A,0x5A,0x42,0x42,0x7E,0x7E,0x7E,0x7E, 24 | 0x00,0x00,0x0E,0x0E,0x06,0x06,0x1A,0x1A, 25 | 0x24,0x24,0x24,0x24,0x18,0x18,0x00,0x00, 26 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x1C,0x1C, 27 | 0x08,0x08,0x1C,0x1C,0x08,0x08,0x00,0x00, 28 | 0x08,0x08,0x0C,0x0C,0x0A,0x0A,0x08,0x08, 29 | 0x18,0x18,0x38,0x38,0x30,0x30,0x00,0x00, 30 | 0x06,0x06,0x1A,0x1A,0x16,0x16,0x1A,0x1A, 31 | 0x16,0x16,0x36,0x36,0x30,0x30,0x00,0x00, 32 | 0x00,0x00,0x2A,0x2A,0x1C,0x1C,0x36,0x36, 33 | 0x1C,0x1C,0x2A,0x2A,0x00,0x00,0x00,0x00, 34 | 0x10,0x10,0x18,0x18,0x1C,0x1C,0x1E,0x1E, 35 | 0x1C,0x1C,0x18,0x18,0x10,0x10,0x00,0x00, 36 | 0x04,0x04,0x0C,0x0C,0x1C,0x1C,0x3C,0x3C, 37 | 0x1C,0x1C,0x0C,0x0C,0x04,0x04,0x00,0x00, 38 | 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x08,0x08, 39 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00, 40 | 0x14,0x14,0x14,0x14,0x14,0x14,0x14,0x14, 41 | 0x14,0x14,0x00,0x00,0x14,0x14,0x00,0x00, 42 | 0x1E,0x1E,0x2A,0x2A,0x2A,0x2A,0x1A,0x1A, 43 | 0x0A,0x0A,0x0A,0x0A,0x0A,0x0A,0x00,0x00, 44 | 0x1C,0x1C,0x22,0x22,0x18,0x18,0x14,0x14, 45 | 0x0C,0x0C,0x22,0x22,0x1C,0x1C,0x00,0x00, 46 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 47 | 0x00,0x00,0x3C,0x3C,0x3C,0x3C,0x00,0x00, 48 | 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x08,0x08, 49 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x1C,0x1C, 50 | 0x08,0x08,0x1C,0x1C,0x3E,0x3E,0x08,0x08, 51 | 0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00, 52 | 0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08, 53 | 0x3E,0x3E,0x1C,0x1C,0x08,0x08,0x00,0x00, 54 | 0x00,0x00,0x08,0x08,0x0C,0x0C,0x3E,0x3E, 55 | 0x0C,0x0C,0x08,0x08,0x00,0x00,0x00,0x00, 56 | 0x00,0x00,0x08,0x08,0x18,0x18,0x3E,0x3E, 57 | 0x18,0x18,0x08,0x08,0x00,0x00,0x00,0x00, 58 | 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20, 59 | 0x20,0x20,0x20,0x20,0x3E,0x3E,0x00,0x00, 60 | 0x00,0x00,0x14,0x14,0x14,0x14,0x3E,0x3E, 61 | 0x14,0x14,0x14,0x14,0x00,0x00,0x00,0x00, 62 | 0x08,0x08,0x08,0x08,0x1C,0x1C,0x1C,0x1C, 63 | 0x3E,0x3E,0x3E,0x3E,0x00,0x00,0x00,0x00, 64 | 0x3E,0x3E,0x3E,0x3E,0x1C,0x1C,0x1C,0x1C, 65 | 0x08,0x08,0x08,0x08,0x00,0x00,0x00,0x00, 66 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 67 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 68 | 0x08,0x08,0x1C,0x1C,0x1C,0x1C,0x08,0x08, 69 | 0x08,0x08,0x00,0x00,0x08,0x08,0x00,0x00, 70 | 0x36,0x36,0x36,0x36,0x24,0x24,0x00,0x00, 71 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 72 | 0x00,0x00,0x14,0x14,0x3E,0x3E,0x14,0x14, 73 | 0x14,0x14,0x3E,0x3E,0x14,0x14,0x00,0x00, 74 | 0x10,0x10,0x1C,0x1C,0x20,0x20,0x18,0x18, 75 | 0x04,0x04,0x38,0x38,0x08,0x08,0x00,0x00, 76 | 0x32,0x32,0x32,0x32,0x04,0x04,0x08,0x08, 77 | 0x10,0x10,0x26,0x26,0x26,0x26,0x00,0x00, 78 | 0x10,0x10,0x28,0x28,0x28,0x28,0x10,0x10, 79 | 0x2A,0x2A,0x24,0x24,0x1A,0x1A,0x00,0x00, 80 | 0x18,0x18,0x18,0x18,0x10,0x10,0x00,0x00, 81 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 82 | 0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10, 83 | 0x10,0x10,0x10,0x10,0x08,0x08,0x00,0x00, 84 | 0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08, 85 | 0x08,0x08,0x08,0x08,0x10,0x10,0x00,0x00, 86 | 0x00,0x00,0x14,0x14,0x1C,0x1C,0x3E,0x3E, 87 | 0x1C,0x1C,0x14,0x14,0x00,0x00,0x00,0x00, 88 | 0x00,0x00,0x08,0x08,0x08,0x08,0x3E,0x3E, 89 | 0x08,0x08,0x08,0x08,0x00,0x00,0x00,0x00, 90 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 91 | 0x00,0x00,0x18,0x18,0x18,0x18,0x10,0x10, 92 | 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x3E, 93 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 94 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 95 | 0x00,0x00,0x18,0x18,0x18,0x18,0x00,0x00, 96 | 0x00,0x00,0x02,0x02,0x04,0x04,0x08,0x08, 97 | 0x10,0x10,0x20,0x20,0x00,0x00,0x00,0x00, 98 | 0x1C,0x1C,0x22,0x22,0x26,0x26,0x2A,0x2A, 99 | 0x32,0x32,0x22,0x22,0x1C,0x1C,0x00,0x00, 100 | 0x08,0x08,0x18,0x18,0x08,0x08,0x08,0x08, 101 | 0x08,0x08,0x08,0x08,0x1C,0x1C,0x00,0x00, 102 | 0x1C,0x1C,0x22,0x22,0x02,0x02,0x0C,0x0C, 103 | 0x10,0x10,0x20,0x20,0x3E,0x3E,0x00,0x00, 104 | 0x1C,0x1C,0x22,0x22,0x02,0x02,0x1C,0x1C, 105 | 0x02,0x02,0x22,0x22,0x1C,0x1C,0x00,0x00, 106 | 0x04,0x04,0x0C,0x0C,0x14,0x14,0x24,0x24, 107 | 0x3E,0x3E,0x04,0x04,0x04,0x04,0x00,0x00, 108 | 0x3E,0x3E,0x20,0x20,0x20,0x20,0x3C,0x3C, 109 | 0x02,0x02,0x22,0x22,0x1C,0x1C,0x00,0x00, 110 | 0x0C,0x0C,0x10,0x10,0x20,0x20,0x3C,0x3C, 111 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 112 | 0x3E,0x3E,0x02,0x02,0x04,0x04,0x08,0x08, 113 | 0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00, 114 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x1C,0x1C, 115 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 116 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x1E,0x1E, 117 | 0x02,0x02,0x04,0x04,0x18,0x18,0x00,0x00, 118 | 0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18, 119 | 0x00,0x00,0x18,0x18,0x18,0x18,0x00,0x00, 120 | 0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18, 121 | 0x00,0x00,0x18,0x18,0x18,0x18,0x10,0x10, 122 | 0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20, 123 | 0x10,0x10,0x08,0x08,0x04,0x04,0x00,0x00, 124 | 0x00,0x00,0x00,0x00,0x3E,0x3E,0x00,0x00, 125 | 0x00,0x00,0x3E,0x3E,0x00,0x00,0x00,0x00, 126 | 0x10,0x10,0x08,0x08,0x04,0x04,0x02,0x02, 127 | 0x04,0x04,0x08,0x08,0x10,0x10,0x00,0x00, 128 | 0x1C,0x1C,0x22,0x22,0x02,0x02,0x0C,0x0C, 129 | 0x08,0x08,0x00,0x00,0x08,0x08,0x00,0x00, 130 | 0x1C,0x1C,0x22,0x22,0x2E,0x2E,0x2A,0x2A, 131 | 0x2E,0x2E,0x20,0x20,0x1C,0x1C,0x00,0x00, 132 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x22,0x22, 133 | 0x3E,0x3E,0x22,0x22,0x22,0x22,0x00,0x00, 134 | 0x3C,0x3C,0x22,0x22,0x22,0x22,0x3C,0x3C, 135 | 0x22,0x22,0x22,0x22,0x3C,0x3C,0x00,0x00, 136 | 0x1C,0x1C,0x22,0x22,0x20,0x20,0x20,0x20, 137 | 0x20,0x20,0x22,0x22,0x1C,0x1C,0x00,0x00, 138 | 0x3C,0x3C,0x22,0x22,0x22,0x22,0x22,0x22, 139 | 0x22,0x22,0x22,0x22,0x3C,0x3C,0x00,0x00, 140 | 0x3E,0x3E,0x20,0x20,0x20,0x20,0x3C,0x3C, 141 | 0x20,0x20,0x20,0x20,0x3E,0x3E,0x00,0x00, 142 | 0x3E,0x3E,0x20,0x20,0x20,0x20,0x3C,0x3C, 143 | 0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00, 144 | 0x1C,0x1C,0x22,0x22,0x20,0x20,0x2E,0x2E, 145 | 0x22,0x22,0x22,0x22,0x1E,0x1E,0x00,0x00, 146 | 0x22,0x22,0x22,0x22,0x22,0x22,0x3E,0x3E, 147 | 0x22,0x22,0x22,0x22,0x22,0x22,0x00,0x00, 148 | 0x1C,0x1C,0x08,0x08,0x08,0x08,0x08,0x08, 149 | 0x08,0x08,0x08,0x08,0x1C,0x1C,0x00,0x00, 150 | 0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02, 151 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 152 | 0x22,0x22,0x24,0x24,0x28,0x28,0x30,0x30, 153 | 0x28,0x28,0x24,0x24,0x22,0x22,0x00,0x00, 154 | 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, 155 | 0x20,0x20,0x20,0x20,0x3E,0x3E,0x00,0x00, 156 | 0x22,0x22,0x36,0x36,0x2A,0x2A,0x22,0x22, 157 | 0x22,0x22,0x22,0x22,0x22,0x22,0x00,0x00, 158 | 0x22,0x22,0x32,0x32,0x2A,0x2A,0x26,0x26, 159 | 0x22,0x22,0x22,0x22,0x22,0x22,0x00,0x00, 160 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x22,0x22, 161 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 162 | 0x3C,0x3C,0x22,0x22,0x22,0x22,0x3C,0x3C, 163 | 0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00, 164 | 0x1C,0x1C,0x22,0x22,0x22,0x22,0x22,0x22, 165 | 0x2A,0x2A,0x24,0x24,0x1A,0x1A,0x00,0x00, 166 | 0x3C,0x3C,0x22,0x22,0x22,0x22,0x3C,0x3C, 167 | 0x24,0x24,0x22,0x22,0x22,0x22,0x00,0x00, 168 | 0x1C,0x1C,0x22,0x22,0x20,0x20,0x1C,0x1C, 169 | 0x02,0x02,0x22,0x22,0x1C,0x1C,0x00,0x00, 170 | 0x3E,0x3E,0x08,0x08,0x08,0x08,0x08,0x08, 171 | 0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00, 172 | 0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22, 173 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 174 | 0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22, 175 | 0x22,0x22,0x14,0x14,0x08,0x08,0x00,0x00, 176 | 0x22,0x22,0x22,0x22,0x2A,0x2A,0x2A,0x2A, 177 | 0x2A,0x2A,0x2A,0x2A,0x14,0x14,0x00,0x00, 178 | 0x22,0x22,0x22,0x22,0x14,0x14,0x08,0x08, 179 | 0x14,0x14,0x22,0x22,0x22,0x22,0x00,0x00, 180 | 0x22,0x22,0x22,0x22,0x22,0x22,0x14,0x14, 181 | 0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00, 182 | 0x3C,0x3C,0x04,0x04,0x08,0x08,0x10,0x10, 183 | 0x20,0x20,0x20,0x20,0x3C,0x3C,0x00,0x00, 184 | 0x1C,0x1C,0x10,0x10,0x10,0x10,0x10,0x10, 185 | 0x10,0x10,0x10,0x10,0x1C,0x1C,0x00,0x00, 186 | 0x00,0x00,0x20,0x20,0x10,0x10,0x08,0x08, 187 | 0x04,0x04,0x02,0x02,0x00,0x00,0x00,0x00, 188 | 0x1C,0x1C,0x04,0x04,0x04,0x04,0x04,0x04, 189 | 0x04,0x04,0x04,0x04,0x1C,0x1C,0x00,0x00, 190 | 0x08,0x08,0x14,0x14,0x22,0x22,0x00,0x00, 191 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 192 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 193 | 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x7E, 194 | 0x18,0x18,0x18,0x18,0x08,0x08,0x00,0x00, 195 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 196 | 0x00,0x00,0x00,0x00,0x1C,0x1C,0x02,0x02, 197 | 0x1E,0x1E,0x22,0x22,0x1E,0x1E,0x00,0x00, 198 | 0x20,0x20,0x20,0x20,0x3C,0x3C,0x22,0x22, 199 | 0x22,0x22,0x22,0x22,0x3C,0x3C,0x00,0x00, 200 | 0x00,0x00,0x00,0x00,0x1C,0x1C,0x22,0x22, 201 | 0x20,0x20,0x22,0x22,0x1C,0x1C,0x00,0x00, 202 | 0x02,0x02,0x02,0x02,0x1E,0x1E,0x22,0x22, 203 | 0x22,0x22,0x22,0x22,0x1E,0x1E,0x00,0x00, 204 | 0x00,0x00,0x00,0x00,0x1C,0x1C,0x22,0x22, 205 | 0x3C,0x3C,0x20,0x20,0x1C,0x1C,0x00,0x00, 206 | 0x0C,0x0C,0x10,0x10,0x10,0x10,0x3C,0x3C, 207 | 0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00, 208 | 0x00,0x00,0x00,0x00,0x1E,0x1E,0x22,0x22, 209 | 0x22,0x22,0x1E,0x1E,0x02,0x02,0x1C,0x1C, 210 | 0x20,0x20,0x20,0x20,0x38,0x38,0x24,0x24, 211 | 0x24,0x24,0x24,0x24,0x24,0x24,0x00,0x00, 212 | 0x08,0x08,0x00,0x00,0x08,0x08,0x08,0x08, 213 | 0x08,0x08,0x08,0x08,0x0C,0x0C,0x00,0x00, 214 | 0x04,0x04,0x00,0x00,0x0C,0x0C,0x04,0x04, 215 | 0x04,0x04,0x04,0x04,0x24,0x24,0x18,0x18, 216 | 0x20,0x20,0x20,0x20,0x24,0x24,0x28,0x28, 217 | 0x30,0x30,0x28,0x28,0x24,0x24,0x00,0x00, 218 | 0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08, 219 | 0x08,0x08,0x08,0x08,0x0C,0x0C,0x00,0x00, 220 | 0x00,0x00,0x00,0x00,0x34,0x34,0x2A,0x2A, 221 | 0x2A,0x2A,0x22,0x22,0x22,0x22,0x00,0x00, 222 | 0x00,0x00,0x00,0x00,0x38,0x38,0x24,0x24, 223 | 0x24,0x24,0x24,0x24,0x24,0x24,0x00,0x00, 224 | 0x00,0x00,0x00,0x00,0x1C,0x1C,0x22,0x22, 225 | 0x22,0x22,0x22,0x22,0x1C,0x1C,0x00,0x00, 226 | 0x00,0x00,0x00,0x00,0x3C,0x3C,0x22,0x22, 227 | 0x22,0x22,0x22,0x22,0x3C,0x3C,0x20,0x20, 228 | 0x00,0x00,0x00,0x00,0x1E,0x1E,0x22,0x22, 229 | 0x22,0x22,0x22,0x22,0x1E,0x1E,0x02,0x02, 230 | 0x00,0x00,0x00,0x00,0x2C,0x2C,0x12,0x12, 231 | 0x10,0x10,0x10,0x10,0x38,0x38,0x00,0x00, 232 | 0x00,0x00,0x00,0x00,0x1C,0x1C,0x20,0x20, 233 | 0x1C,0x1C,0x02,0x02,0x1C,0x1C,0x00,0x00, 234 | 0x00,0x00,0x10,0x10,0x3C,0x3C,0x10,0x10, 235 | 0x10,0x10,0x14,0x14,0x08,0x08,0x00,0x00, 236 | 0x00,0x00,0x00,0x00,0x24,0x24,0x24,0x24, 237 | 0x24,0x24,0x2C,0x2C,0x14,0x14,0x00,0x00, 238 | 0x00,0x00,0x00,0x00,0x22,0x22,0x22,0x22, 239 | 0x22,0x22,0x14,0x14,0x08,0x08,0x00,0x00, 240 | 0x00,0x00,0x00,0x00,0x22,0x22,0x22,0x22, 241 | 0x2A,0x2A,0x3E,0x3E,0x14,0x14,0x00,0x00, 242 | 0x00,0x00,0x00,0x00,0x24,0x24,0x24,0x24, 243 | 0x18,0x18,0x24,0x24,0x24,0x24,0x00,0x00, 244 | 0x00,0x00,0x00,0x00,0x24,0x24,0x24,0x24, 245 | 0x24,0x24,0x1C,0x1C,0x08,0x08,0x30,0x30, 246 | 0x00,0x00,0x00,0x00,0x3C,0x3C,0x04,0x04, 247 | 0x18,0x18,0x20,0x20,0x3C,0x3C,0x00,0x00, 248 | 0x0C,0x0C,0x10,0x10,0x10,0x10,0x30,0x30, 249 | 0x10,0x10,0x10,0x10,0x0C,0x0C,0x00,0x00, 250 | 0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00, 251 | 0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00, 252 | 0x18,0x18,0x04,0x04,0x04,0x04,0x06,0x06, 253 | 0x04,0x04,0x04,0x04,0x18,0x18,0x00,0x00, 254 | 0x14,0x14,0x28,0x28,0x00,0x00,0x00,0x00, 255 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 256 | 0x08,0x08,0x1C,0x1C,0x36,0x36,0x22,0x22, 257 | 0x22,0x22,0x3E,0x3E,0x00,0x00,0x00,0x00, 258 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 259 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 260 | 0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00, 261 | 0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00, 262 | 0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF, 263 | 0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF, 264 | 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 265 | 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF 266 | }; 267 | -------------------------------------------------------------------------------- /software/splash.h: -------------------------------------------------------------------------------- 1 | const unsigned char splash_map[] = { 2 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x05,0x06,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x00,0x00,0x00,0x0F,0x10,0x11,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x00,0x1A,0x1B,0x1C,0x1D,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2A,0x2B,0x2C,0x00,0x00,0x00,0x00,0x00,0x00,0x2D,0x2E,0x2F,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3A,0x3B,0x03,0x3C,0x3D,0x3E,0x00,0x3F,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,0x50,0x51,0x52,0x00,0x00,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,0x60,0x61,0x62,0x63,0x64,0x00,0x00,0x00,0x65,0x66,0x67,0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,0x70,0x71,0x72,0x73,0x74,0x75,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x77,0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,0x80,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x82,0x00,0x83,0x84,0x85,0x86,0x87,0x88,0x65,0x89,0x00,0x00,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x00,0x00,0x00,0x9B,0x9C,0x9D,0x9E,0x9F,0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0x00,0x00,0x00,0x9B,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0x00,0x00,0x00,0xBC,0xBD,0xBE,0xBF,0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0x00,0xC8,0xC9,0xCA,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCB,0xCC,0xCD,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x65,0xCE,0x00,0x00,0x00,0x00 3 | }; 4 | const unsigned char splash_tiles[] = { 5 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x01,0x02,0x01,0x02,0x01,0x04,0x03,0x0E,0x01,0x3E,0x01,0xE0,0x00,0x40,0x80,0x60,0x80,0x60,0x80,0x70,0x80,0x78,0x80,0x3E,0xC0,0x3F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x06,0x00,0x0C,0x00,0x1E,0x00,0x0F,0x10,0x03,0x1C,0x01,0x1E,0x01,0x1E,0x01,0x1E,0x8E,0x01,0x03,0x00,0x01,0x00,0x00,0x00,0x80,0x00,0xE0,0x00,0xFE,0x00,0xFE,0x00,0x1F,0xE0,0x07,0xF8,0x83,0x7C,0xC1,0x3E,0x40,0x3F,0x24,0x1B,0x18,0x07,0x0C,0x03,0xC0,0x00,0xC0,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0x78,0x80,0x7C,0x80,0x3C,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x03,0x00,0x07,0x00,0x03,0x04,0x10,0x0F,0x30,0x0F,0x38,0x07,0x7C,0x03,0xFC,0x03,0x86,0x01,0x03,0x00,0x83,0x00,0xFF,0x00,0x7F,0x80,0x3F,0xC0,0x1F,0xE0,0x0F,0xF0,0x03,0xFC,0x21,0xDE,0x90,0x6F,0x07,0x00,0x01,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0xE0,0x00,0xE0,0x00,0xF0,0x00,0x1E,0xE0,0x0F,0xF0,0x87,0x78,0x43,0x3C,0x21,0x1E,0x10,0x0F,0x08,0x07,0x04,0x03,0x00,0x00,0x00,0x00,0xC3,0x00,0xFF,0x00,0xFF,0x00,0x60,0x9F,0x00,0xFF,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x01,0x02,0x01,0x00,0x03,0x80,0x00,0x4E,0x80,0x24,0xDF,0x30,0xFF,0x7F,0xFF,0xF6,0xFF,0xE5,0xFE,0xC1,0xFE,0x00,0x00,0x80,0x00,0x20,0xC0,0x10,0xE0,0xE8,0xF0,0xE8,0x10,0x18,0x00,0x80,0x00,0x03,0x04,0x0B,0x04,0x09,0x06,0x0D,0x02,0x0C,0x03,0x0F,0x00,0x1F,0x00,0x1F,0x00,0xC3,0x00,0xF6,0x00,0xFE,0x00,0xFF,0x00,0xFF,0x00,0x3F,0xC0,0xDF,0x20,0xFF,0x00,0xC0,0x3F,0x30,0x0F,0x09,0x06,0x04,0x03,0x02,0x01,0x81,0x00,0xC0,0x00,0xE0,0x00,0x78,0x80,0x3C,0xC0,0x1F,0xE0,0x8F,0x70,0x47,0xB8,0x03,0xFC,0x40,0x3F,0x20,0x1F,0x04,0x03,0x06,0x01,0xFE,0x01,0xFF,0x00,0xFF,0x00,0xC1,0x3E,0x01,0xFE,0x01,0xFE,0x80,0xFF,0xC0,0xFF,0x40,0xFF,0x60,0xFF,0xA0,0x7F,0xB0,0x7F,0xDF,0x3F,0xDD,0x3E,0xC0,0x00,0x60,0x80,0x20,0xC0,0x20,0xC0,0x30,0xC0,0xB0,0xC0,0x60,0x80,0xC0,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x05,0x03,0x0B,0x07,0x11,0x0F,0x2B,0x1F,0x5F,0x3F,0x9D,0x7F,0x77,0xFF,0x30,0xFF,0x80,0xFF,0x80,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x80,0xFF,0x80,0xFF,0xC0,0xFF,0xE0,0x00,0x38,0xC0,0x0C,0xF0,0x02,0xFC,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x40,0x80,0x20,0xC0,0x00,0xE0,0x3F,0x00,0x7F,0x00,0x3F,0x40,0xBF,0x40,0xBF,0x40,0x9F,0x60,0x8F,0x70,0x83,0x7C,0xE7,0x18,0xC3,0x3C,0xC1,0x3E,0xE0,0x1F,0xF8,0x07,0xF4,0x03,0xFA,0x01,0xFC,0x00,0xE0,0x00,0xF0,0x00,0xF8,0x00,0x7C,0x80,0x3E,0xC0,0x0F,0xF0,0x07,0xF8,0x87,0x78,0x10,0x0F,0x08,0x07,0x04,0x03,0x03,0x00,0x07,0x00,0x0F,0x00,0xDC,0x03,0xF8,0x07,0x00,0xFF,0x80,0xFF,0x60,0xFF,0x30,0xFF,0x99,0x7F,0xEE,0x1F,0xF9,0x06,0x79,0x86,0xF7,0x38,0x2E,0xF0,0x3C,0xC0,0x78,0x80,0xF0,0x00,0xF0,0x00,0xE0,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x0F,0x00,0x3F,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x0C,0x00,0x1C,0x00,0xFC,0x00,0xF4,0x08,0xE7,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x01,0x03,0x01,0x03,0x01,0x01,0x03,0x01,0x03,0x01,0x03,0x03,0x01,0x02,0x01,0x8E,0xFF,0xED,0xFF,0xFF,0xFF,0xFD,0xFF,0xED,0x9F,0x7F,0x87,0x77,0x83,0x33,0xC1,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x01,0xFE,0x83,0xFC,0xC7,0xF8,0x00,0xFF,0x08,0xF7,0x22,0xC1,0x40,0x81,0x82,0x01,0x83,0x00,0x05,0x00,0x0D,0x00,0x00,0xE0,0x10,0xE0,0x10,0xE0,0x00,0xF0,0x08,0xF0,0x0C,0xF0,0x14,0xE0,0x1C,0xE0,0x41,0x3E,0x60,0x1F,0x70,0x0F,0x38,0x07,0x2E,0x11,0x13,0x0C,0x00,0x0F,0x00,0x07,0xFE,0x00,0xFF,0x00,0x3F,0xC0,0x1F,0xE0,0x0F,0xF0,0x07,0xF8,0x83,0x7C,0x21,0xDE,0x43,0x3C,0x20,0x1F,0xD0,0x0F,0xE4,0x03,0xF2,0x01,0xF0,0x00,0xF8,0x00,0xFF,0x00,0xF0,0x0F,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x60,0xFF,0xDC,0x3F,0x13,0x0F,0xFF,0x03,0x39,0xC6,0x39,0xC6,0x18,0xE7,0x00,0xFF,0x08,0xFF,0x18,0xFF,0xFC,0xFF,0xFC,0xFF,0xE0,0x00,0xC0,0x00,0xC1,0x00,0xC3,0x00,0xC7,0x00,0x6F,0x80,0x7F,0x80,0x3F,0xC0,0x7F,0x00,0xFE,0x01,0xFC,0x03,0xF1,0x0F,0xE2,0x1F,0xCC,0x3F,0x98,0x7F,0x30,0xFF,0x82,0x7D,0x00,0xFF,0x80,0xFF,0x80,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x80,0xFF,0x03,0xFC,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0xE0,0x01,0x7D,0x83,0x11,0xEF,0x01,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x18,0xE0,0x0F,0xF0,0x07,0xF8,0x01,0xFE,0x00,0xFF,0x90,0xFF,0x97,0xFB,0x45,0xFB,0xBF,0x40,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x3C,0xC3,0x07,0xFF,0xD7,0xBF,0xC9,0xB6,0x05,0x08,0xFD,0x08,0xDC,0x39,0xE4,0x19,0x92,0x09,0x11,0x8B,0xBD,0x03,0xF3,0x07,0x1C,0xE0,0x1C,0xE0,0x1F,0xE0,0x3C,0xC3,0xB4,0xC3,0x26,0xC1,0xA8,0xC1,0x81,0xF8,0x00,0x00,0x00,0x00,0xF0,0x00,0x0C,0xF0,0x06,0xF8,0x03,0xFC,0x01,0xFE,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x00,0x00,0x11,0x00,0x52,0x21,0x89,0x76,0x00,0x00,0x00,0x00,0x38,0x00,0x70,0x00,0xE2,0x00,0x42,0x80,0x86,0x00,0x0C,0x00,0x00,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x51,0xEE,0x30,0xFF,0xC8,0x3F,0x24,0x1F,0x0B,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x7F,0x80,0x3F,0xC0,0x1E,0xE1,0x00,0xFF,0x58,0x3F,0x3F,0x0F,0x13,0x0F,0xFF,0x03,0xFF,0x03,0xC3,0x3F,0x07,0xFF,0x0F,0xFF,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3C,0xC3,0x09,0xF7,0x27,0xFF,0xDE,0xFF,0xFE,0xFF,0xF9,0xFF,0xF8,0xFF,0xEF,0xFF,0xF0,0xFF,0x80,0xFF,0x40,0xFF,0x00,0xFF,0x80,0xFF,0x90,0xFF,0x81,0xFF,0x90,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x40,0xFF,0x00,0xFF,0x01,0xFF,0x81,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0xA0,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x05,0xFF,0x03,0xFF,0x0A,0xFF,0x12,0xFF,0x63,0xFC,0x20,0xFF,0x10,0xFF,0x20,0xFF,0xC0,0xFF,0x81,0xFE,0x01,0xFE,0x00,0xFF,0xF1,0x00,0x70,0x80,0xF0,0x00,0xE5,0x02,0x73,0x84,0xB4,0x40,0xF0,0x00,0xF0,0x00,0xF7,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF4,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x40,0x3F,0x10,0x1F,0x10,0x0F,0x0C,0x07,0x04,0x03,0x00,0x03,0x03,0x01,0x00,0x01,0x80,0x00,0x40,0x80,0x20,0xC0,0x08,0xF0,0x06,0xF8,0x03,0xFC,0x01,0xFE,0x00,0xFF,0x03,0x04,0x09,0x06,0x09,0x06,0x00,0x07,0x0C,0x03,0x18,0x07,0x10,0x0F,0xA0,0x1F,0xC2,0x3C,0x43,0xBC,0xC1,0x3E,0xB8,0x0F,0xE8,0x17,0x00,0xFF,0x00,0xFF,0x30,0xFF,0x38,0x00,0x70,0x00,0x21,0xC0,0x43,0x80,0x5A,0x84,0x34,0xC8,0x08,0xF0,0x23,0xF0,0x00,0x00,0x40,0x00,0xC0,0x00,0x80,0x00,0x00,0x00,0x30,0x00,0xE0,0x10,0x90,0x60,0x0B,0x07,0x05,0x03,0x02,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0xFF,0x5F,0x3F,0x17,0x0F,0x0B,0x07,0x06,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x88,0xFF,0xC0,0xFF,0xE0,0xFF,0xE0,0xFF,0xC8,0xFF,0xF8,0xFF,0xFC,0xFF,0xFE,0xFF,0x03,0xFF,0x07,0xFF,0x0F,0xFF,0x0F,0xFF,0x1F,0xFF,0xFF,0xFF,0x7F,0xFF,0xFF,0xFF,0xE0,0xFF,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x08,0xFF,0xC0,0xFF,0xF8,0xFF,0xDC,0xFF,0xFC,0xFF,0xF8,0xFF,0xFC,0xFF,0xFE,0xFF,0x01,0xFE,0x01,0xFE,0x01,0xFE,0x01,0xFE,0x03,0xFC,0x01,0xFE,0x00,0xFF,0x00,0xFF,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x1F,0x3C,0xC0,0xFC,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0xE1,0x00,0x39,0x06,0x0F,0xF0,0x01,0x00,0x01,0x00,0x1F,0x00,0xE7,0x00,0x3F,0x00,0x3F,0xC0,0xFF,0x00,0xFE,0x00,0x80,0x01,0x81,0x00,0x81,0x00,0x81,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0xFF,0x80,0xFF,0x80,0xFF,0xF8,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x6D,0x9F,0x0E,0xFF,0x1E,0xFF,0x3F,0xFF,0xB6,0xFF,0xF5,0xFF,0xFF,0xFF,0xFC,0xFF,0x18,0xFF,0x04,0xFF,0x40,0xFF,0xD0,0xFF,0x80,0xFF,0x40,0xFF,0xB0,0xFF,0xF8,0xFF,0x0E,0xF1,0x00,0xFF,0x04,0xFF,0x03,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x01,0xFE,0x08,0xF0,0x48,0xF0,0xC8,0xF0,0x88,0xF0,0x0C,0xF0,0x08,0xF0,0x38,0xC0,0xF8,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xBF,0x7F,0x70,0x0F,0x0E,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x2F,0xFF,0x00,0xFF,0xC0,0x3F,0x3D,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0xF9,0xFF,0xF1,0xFF,0x81,0xFF,0x00,0xFF,0x01,0xFF,0x60,0x1F,0x10,0x0F,0x01,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x8F,0xFF,0x03,0xFF,0x00,0xFF,0x80,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x57,0xFF,0x7F,0xFF,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0x20,0xDF,0x00,0xFF,0x90,0xEF,0xC0,0xFF,0xE0,0xFF,0xF8,0xFF,0xFE,0xFF,0x0F,0xFF,0x38,0xFF,0x79,0xFF,0x3F,0xFF,0x07,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x3F,0xC0,0x03,0xFC,0xE0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0x01,0xFE,0x1D,0xE0,0xF0,0x0C,0x04,0xF8,0x06,0xF8,0xFB,0xE4,0xBC,0xCF,0x0F,0xFF,0xCF,0x3F,0xCC,0x3F,0x07,0x00,0x06,0x01,0x08,0x01,0xF0,0x00,0xD0,0x20,0x18,0xF0,0x04,0xF8,0x3E,0xC4,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xBF,0x7F,0x27,0x1F,0x0F,0x00,0x0F,0x00,0x0F,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0xE3,0xFC,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xF8,0xFF,0xFC,0xFF,0xE3,0xFD,0x13,0xEC,0xE3,0x1C,0xF3,0x0C,0xD1,0x2E,0xE0,0x1F,0x00,0xFF,0x01,0xFE,0x01,0xFE,0x06,0xF8,0x88,0x70,0xF0,0x00,0xF0,0x00,0xF8,0x00,0x60,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0x71,0x0F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xDF,0x3F,0x37,0x0F,0x0B,0x07,0x07,0x03,0x02,0x01,0x01,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xFF,0x00,0xFF,0x80,0xFF,0xC0,0xFF,0xE0,0xFF,0xF8,0xFF,0xF8,0xFF,0xC0,0xFF,0xE1,0xFF,0x1F,0xE0,0x1F,0xE0,0x3E,0xC1,0x70,0x8F,0x01,0xFE,0x0B,0xFC,0x37,0xF8,0xCF,0xF0,0xC0,0x3F,0x3C,0xC3,0x4F,0x80,0x83,0x00,0x81,0x00,0x01,0x00,0x84,0x00,0xC4,0x00,0x7E,0x87,0x6F,0x87,0xFD,0x07,0xFC,0x07,0xFD,0x06,0xFD,0x06,0xFD,0x06,0x7C,0x07,0x0F,0x00,0x4F,0x80,0xFF,0xC0,0x8F,0x70,0x07,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x3F,0x00,0x0F,0x00,0xE0,0x1F,0xE0,0x1F,0xE0,0x1F,0xE0,0x1F,0xE1,0x1E,0x83,0x7C,0x86,0x78,0x9C,0x60,0xFC,0x00,0x7C,0x80,0x78,0x80,0xE0,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x9F,0x7F,0x37,0x0F,0x0B,0x07,0x03,0x01,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xFF,0x43,0xFC,0x8F,0xF0,0x8F,0xF0,0x8F,0xF0,0x8F,0xF0,0x07,0xF8,0x07,0xF8,0x07,0xF8,0x03,0xFC,0xC6,0x00,0xE6,0x00,0xF7,0x00,0xFE,0x01,0xFC,0x03,0xF0,0x0F,0xC0,0x3F,0x00,0xFF,0x30,0x0F,0x70,0x0F,0x80,0x7F,0x00,0xFF,0x00,0xFF,0x40,0xFF,0x60,0xFF,0x00,0xFF,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xF1,0x00,0xC0,0x00,0xE0,0x00,0xF0,0x00,0xF8,0x00,0xF8,0x00,0xFC,0x00,0xFC,0x00,0xFE,0x00,0x7C,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFF,0x00,0x1F,0x00,0x1F,0x00,0x3F,0x00,0x3F,0x00,0x7F,0x00,0xFE,0x00,0xFE,0x00,0xFC,0x00,0x83,0x00,0x87,0x00,0x87,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xFC,0x00,0xFC,0x00,0xFC,0x00,0xFE,0x00,0xFE,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xF7,0x00,0xE0,0x00,0xC0,0x00,0xE0,0x00,0xF1,0x00,0xF9,0x00,0xFD,0x00,0xFD,0x00,0xFC,0x00,0xFE,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x07,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFC,0x03,0xFF,0x1F,0xEF,0x1F,0xEF,0x1F,0x00,0xFF,0x48,0xFF,0x7C,0xFF,0x78,0xFF,0xF0,0xFF,0xF9,0xFF,0xF8,0xFF,0xF8,0xFF,0x06,0xFF,0x0E,0xFF,0x00,0xFF,0x12,0xFF,0x14,0xFF,0x02,0xFF,0x00,0xFF,0x00,0xFF,0x80,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x80,0x80,0x00,0x40,0x80,0x34,0xC8,0x07,0xF8,0x07,0xF8,0x27,0xF8,0x07,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFE,0x00,0xFE,0x00,0x7E,0x00,0x7E,0x00,0x7E,0x00,0x7E,0x00,0x7E,0x00,0x7E,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xF8,0x00,0xF8,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0x0F,0x00,0xFE,0x00,0xFE,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x9F,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x87,0x00,0x8F,0x00,0x8F,0x00,0xE0,0x00,0xE0,0x00,0xE1,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFE,0x00,0xFC,0x00,0xFC,0x00,0xFC,0x00,0xF8,0x00,0xF8,0x00,0xF0,0x00,0xF8,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x07,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0xEF,0x1F,0xF7,0x0F,0xF7,0x0F,0xFB,0x07,0xF1,0x03,0xF2,0x01,0xF1,0x00,0xF0,0x00,0xF8,0xFF,0xFC,0xFF,0xFC,0xFF,0xFC,0xFF,0xFC,0xFF,0xFC,0xFF,0xFC,0x7F,0x5E,0x3F,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x20,0xFF,0x40,0xFF,0x40,0xFF,0x40,0xFF,0x00,0xFF,0x00,0xFF,0x01,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x47,0xF8,0xA3,0xFC,0x03,0xFC,0x40,0xFF,0x34,0xFF,0x06,0xFF,0x02,0xFF,0x00,0xFF,0xC0,0x00,0xC0,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0x70,0x80,0x70,0x80,0x30,0xC0,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x7E,0x00,0x7E,0x00,0xFE,0x00,0xFE,0x00,0xFC,0x00,0xFC,0x00,0xFC,0x00,0xF8,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xF0,0x00,0xF8,0x00,0xF8,0x00,0xFC,0x00,0xFC,0x00,0xFE,0x00,0xFE,0x00,0x7F,0x00,0x0F,0x00,0x0F,0x00,0x1F,0x00,0x1F,0x00,0x1F,0x00,0x1F,0x00,0x1F,0x00,0x1F,0x00,0x07,0x00,0x2F,0x00,0x7F,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x8F,0x00,0xCF,0x00,0xCF,0x00,0xCF,0x00,0xCF,0x00,0xEF,0x00,0xEF,0x00,0xFF,0x00,0xFF,0x00,0xE1,0x00,0xE1,0x00,0xE1,0x00,0xC1,0x00,0xC1,0x00,0xC1,0x00,0xC1,0x00,0xF8,0x00,0xF8,0x00,0xFC,0x00,0xFC,0x00,0xFC,0x00,0xFC,0x00,0xF8,0x00,0xF8,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x01,0x00,0xF0,0x00,0xF0,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0x13,0x0F,0x0C,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0xFF,0x40,0xFF,0xA0,0x7F,0x70,0x3F,0x09,0x3F,0x3C,0x0F,0x0A,0x07,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x02,0xFF,0x00,0xFF,0x00,0xFF,0x0C,0xF3,0x06,0xF9,0x05,0xF8,0x0E,0xF0,0x0C,0xF0,0xE0,0x00,0xF0,0x00,0xF8,0x00,0x78,0x80,0x78,0x80,0xB0,0x40,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0xFE,0x00,0xFC,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x3F,0x00,0x3F,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9F,0x00,0x9F,0x00,0x9F,0x00,0x9F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0xFF,0x00,0x87,0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC1,0x00,0xC1,0x00,0xC1,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,0xF8,0x00,0xF8,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x03,0x02,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x01,0x80,0xFF,0xC0,0xFF,0xE0,0x7F,0xF8,0x7F,0x21,0xFE,0x03,0xFC,0x03,0xFC,0x07,0xF8,0x0C,0xF0,0x18,0xE0,0x38,0xC0,0xE0,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0xF0,0x00,0x02,0x01,0x0D,0x00,0x18,0x00,0x01,0x18,0x16,0x09,0x16,0x09,0x08,0x07,0x00,0x00,0x0F,0xF0,0x8F,0x70,0x7D,0x02,0x46,0x80,0x4C,0x80,0x4A,0x84,0x39,0xC6,0x85,0x72,0xE0,0x00,0xF0,0x00,0xD4,0x20,0x62,0x00,0x60,0x00,0xB0,0x40,0xD4,0x20,0x88,0x30,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF 6 | }; 7 | -------------------------------------------------------------------------------- /hardware/Dkart.json: -------------------------------------------------------------------------------- 1 | { 2 | "editorVersion": "6.3.22", 3 | "docType": "5", 4 | "title": "Dkart", 5 | "description": "", 6 | "colors": {}, 7 | "schematics": [ 8 | { 9 | "docType": "1", 10 | "title": "Schematic", 11 | "description": "", 12 | "dataStr": "{\"head\":{\"docType\":\"1\",\"editorVersion\":\"6.3.22\",\"c_para\":{\"Prefix Start\":\"1\"},\"c_spiceCmd\":\"null\",\"hasIdFlag\":true,\"uuid\":\"65eaa55e4b63419cbb07672889168dbd\",\"x\":\"0\",\"y\":\"0\",\"importFlag\":0,\"transformList\":\"\"},\"canvas\":\"CA~1000~1000~#FFFFFF~yes~#CCCCCC~5~1000~1000~line~5~pixel~5~0~0\",\"shape\":[\"LIB~505~110~package`CONNECTOR`spicePre`?`spiceSymbolName`CONNECTOR`BOM_Manufacturer Part``~~0~gge1088~e69b86d160f34935b1125800493d1f7a~~0~f8614d3c7ac52c96~yes~yes#@$T~N~822.984375~120.8125~0~#000080~Arial~~~~~comment~CONNECTOR~1~start~gge1089~0~#@$T~P~824~111.81~0~#000080~Arial~~~~~comment~1~1~start~gge1091~0~#@$P~show~3~1~196~98~90~gge1093~0^^196~98^^M 196 98 v 9.842~#A54B4B^^0~198.95~117.53~270~VDD~end~~4.5pt~#A54B4B^^1~194.03~101.78~270~1~start~~4.5pt~#A54B4B^^0~196~104^^0~M 193 107 L 196 110 L 199 107#@$P~show~3~3~236~98~90~gge1100~0^^236~98^^M 236 98 v 9.842~#A54B4B^^0~238.95~117.53~270~/WR~end~~4.5pt~#A54B4B^^1~234.03~101.78~270~3~start~~4.5pt~#A54B4B^^0~236~104^^0~M 233 107 L 236 110 L 239 107#@$P~show~3~4~256~98~90~gge1107~0^^256~98^^M 256 98 v 9.842~#A54B4B^^0~258.953~117.53~270~/RD~end~~4.5pt~#A54B4B^^1~254.03~101.78~270~4~start~~4.5pt~#A54B4B^^0~256~104^^0~M 253 107 L 256 110 L 259 107#@$P~show~3~5~276~98~90~gge1114~0^^276~98^^M 276 98 v 9.842~#A54B4B^^0~278.953~117.53~270~/RCS~end~~4.5pt~#A54B4B^^1~274.03~101.78~270~5~start~~4.5pt~#A54B4B^^0~276~104^^0~M 273 107 L 276 110 L 279 107#@$P~show~3~6~296~98~90~gge1121~0^^296~98^^M 296 98 v 9.842~#A54B4B^^0~298.953~117.53~270~A0~end~~4.5pt~#A54B4B^^1~294.03~101.78~270~6~start~~4.5pt~#A54B4B^^0~296~104^^0~M 293 107 L 296 110 L 299 107#@$P~show~3~7~316~98~90~gge1128~0^^316~98^^M 316 98 v 9.842~#A54B4B^^0~318.95~117.53~270~A1~end~~4.5pt~#A54B4B^^1~314.03~101.78~270~7~start~~4.5pt~#A54B4B^^0~316~104^^0~M 313 107 L 316 110 L 319 107#@$P~show~3~8~336~98~90~gge1135~0^^336~98^^M 336 98 v 9.842~#A54B4B^^0~338.95~117.53~270~A2~end~~4.5pt~#A54B4B^^1~334.03~101.78~270~8~start~~4.5pt~#A54B4B^^0~336~104^^0~M 333 107 L 336 110 L 339 107#@$P~show~3~9~356~98~90~gge1142~0^^356~98^^M 356 98 v 9.842~#A54B4B^^0~358.95~117.53~270~A3~end~~4.5pt~#A54B4B^^1~354.03~101.78~270~9~start~~4.5pt~#A54B4B^^0~356~104^^0~M 353 107 L 356 110 L 359 107#@$P~show~3~10~376~98~90~gge1149~0^^376~98^^M 376 98 v 9.842~#A54B4B^^0~378.95~117.53~270~A4~end~~4.5pt~#A54B4B^^1~374.03~101.78~270~10~start~~4.5pt~#A54B4B^^0~376~104^^0~M 373 107 L 376 110 L 379 107#@$P~show~3~11~396~98~90~gge1156~0^^396~98^^M 396 98 v 9.842~#A54B4B^^0~398.95~117.53~270~A5~end~~4.5pt~#A54B4B^^1~394.03~101.78~270~11~start~~4.5pt~#A54B4B^^0~396~104^^0~M 393 107 L 396 110 L 399 107#@$P~show~3~12~416~98~90~gge1163~0^^416~98^^M 416 98 v 9.842~#A54B4B^^0~418.95~117.53~270~A6~end~~4.5pt~#A54B4B^^1~414.03~101.78~270~12~start~~4.5pt~#A54B4B^^0~416~104^^0~M 413 107 L 416 110 L 419 107#@$P~show~3~13~436~98~90~gge1170~0^^436~98^^M 436 98 v 9.842~#A54B4B^^0~438.95~117.53~270~A7~end~~4.5pt~#A54B4B^^1~434.03~101.78~270~13~start~~4.5pt~#A54B4B^^0~436~104^^0~M 433 107 L 436 110 L 439 107#@$P~show~3~14~456~98~90~gge1177~0^^456~98^^M 456 98 v 9.842~#A54B4B^^0~458.95~117.53~270~A8~end~~4.5pt~#A54B4B^^1~454.03~101.78~270~14~start~~4.5pt~#A54B4B^^0~456~104^^0~M 453 107 L 456 110 L 459 107#@$P~show~3~15~476~98~90~gge1184~0^^476~98^^M 476 98 v 9.842~#A54B4B^^0~478.95~117.53~270~A9~end~~4.5pt~#A54B4B^^1~474.03~101.78~270~15~start~~4.5pt~#A54B4B^^0~476~104^^0~M 473 107 L 476 110 L 479 107#@$P~show~3~16~496~98~90~gge1191~0^^496~98^^M 496 98 v 9.842~#A54B4B^^0~498.95~117.53~270~A10~end~~4.5pt~#A54B4B^^1~494.03~101.78~270~16~start~~4.5pt~#A54B4B^^0~496~104^^0~M 493 107 L 496 110 L 499 107#@$P~show~3~17~516~98~90~gge1198~0^^516~98^^M 516 98 v 9.842~#A54B4B^^0~518.95~117.53~270~A11~end~~4.5pt~#A54B4B^^1~514.031~101.78~270~17~start~~4.5pt~#A54B4B^^0~516~104^^0~M 513 107 L 516 110 L 519 107#@$P~show~3~18~536~98~90~gge1205~0^^536~98^^M 536 98 v 9.842~#A54B4B^^0~538.95~117.53~270~A12~end~~4.5pt~#A54B4B^^1~534.031~101.78~270~18~start~~4.5pt~#A54B4B^^0~536~104^^0~M 533 107 L 536 110 L 539 107#@$P~show~3~19~556~98~90~gge1212~0^^556~98^^M 556 98 v 9.842~#A54B4B^^0~558.95~117.53~270~A13~end~~4.5pt~#A54B4B^^1~554.031~101.78~270~19~start~~4.5pt~#A54B4B^^0~556~104^^0~M 553 107 L 556 110 L 559 107#@$P~show~3~20~576~98~90~gge1219~0^^576~98^^M 576 98 v 9.842~#A54B4B^^0~578.95~117.53~270~A14~end~~4.5pt~#A54B4B^^1~574.031~101.78~270~20~start~~4.5pt~#A54B4B^^0~576~104^^0~M 573 107 L 576 110 L 579 107#@$P~show~3~22~616~98~90~gge1226~0^^616~98^^M 616 98 v 9.842~#A54B4B^^0~618.95~117.53~270~D0~end~~4.5pt~#A54B4B^^1~614.031~101.78~270~22~start~~4.5pt~#A54B4B^^0~616~104^^0~M 613 107 L 616 110 L 619 107#@$P~show~3~2~216~98~90~gge1233~0^^216~98^^M 216 98 v 9.842~#A54B4B^^0~218.95~117.53~270~NC~end~~4.5pt~#A54B4B^^1~214.03~101.78~270~2~start~~4.5pt~#A54B4B^^0~216~104^^0~M 213 107 L 216 110 L 219 107#@$P~show~3~23~636~98~90~gge1240~0^^636~98^^M 636 98 v 9.842~#A54B4B^^0~638.95~117.53~270~D1~end~~4.5pt~#A54B4B^^1~634.031~101.78~270~23~start~~4.5pt~#A54B4B^^0~636~104^^0~M 633 107 L 636 110 L 639 107#@$P~show~3~24~656~98~90~gge1247~0^^656~98^^M 656 98 v 9.842~#A54B4B^^0~658.95~117.53~270~D2~end~~4.5pt~#A54B4B^^1~654.031~101.78~270~24~start~~4.5pt~#A54B4B^^0~656~104^^0~M 653 107 L 656 110 L 659 107#@$P~show~3~25~676~98~90~gge1254~0^^676~98^^M 676 98 v 9.842~#A54B4B^^0~678.95~117.53~270~D3~end~~4.5pt~#A54B4B^^1~674.03~101.78~270~25~start~~4.5pt~#A54B4B^^0~676~104^^0~M 673 107 L 676 110 L 679 107#@$P~show~3~26~696~98~90~gge1261~0^^696~98^^M 696 98 v 9.842~#A54B4B^^0~698.95~117.53~270~D4~end~~4.5pt~#A54B4B^^1~694.03~101.78~270~26~start~~4.5pt~#A54B4B^^0~696~104^^0~M 693 107 L 696 110 L 699 107#@$P~show~3~27~716~98~90~gge1268~0^^716~98^^M 716 98 v 9.842~#A54B4B^^0~718.95~117.53~270~D5~end~~4.5pt~#A54B4B^^1~714.03~101.78~270~27~start~~4.5pt~#A54B4B^^0~716~104^^0~M 713 107 L 716 110 L 719 107#@$P~show~3~28~736~98~90~gge1275~0^^736~98^^M 736 98 v 9.842~#A54B4B^^0~738.95~117.53~270~D6~end~~4.5pt~#A54B4B^^1~734.03~101.78~270~28~start~~4.5pt~#A54B4B^^0~736~104^^0~M 733 107 L 736 110 L 739 107#@$P~show~3~29~756~98~90~gge1282~0^^756~98^^M 756 98 v 9.842~#A54B4B^^0~758.95~117.53~270~D7~end~~4.5pt~#A54B4B^^1~754.03~101.78~270~29~start~~4.5pt~#A54B4B^^0~756~104^^0~M 753 107 L 756 110 L 759 107#@$P~show~3~30~776~98~90~gge1289~0^^776~98^^M 776 98 v 9.842~#A54B4B^^0~778.95~117.53~270~/RS~end~~4.5pt~#A54B4B^^1~774.03~101.78~270~30~start~~4.5pt~#A54B4B^^0~776~104^^0~M 773 107 L 776 110 L 779 107#@$P~show~3~31~796~98~90~gge1296~0^^796~98^^M 796 98 v 9.842~#A54B4B^^0~798.95~117.53~270~VIN~end~~4.5pt~#A54B4B^^1~794.03~101.78~270~31~start~~4.5pt~#A54B4B^^0~796~104^^0~M 793 107 L 796 110 L 799 107#@$P~show~3~32~816~98~90~gge1303~0^^816~98^^M 816 98 v 9.842~#A54B4B^^0~818.951~117.53~270~GND~end~~4.5pt~#A54B4B^^1~814.03~101.78~270~32~start~~4.5pt~#A54B4B^^0~816~104^^0~M 813 107 L 816 110 L 819 107#@$P~show~3~21~596~98~90~gge1310~0^^596~98^^M 596 98 v 9.842~#A54B4B^^0~598.95~117.53~270~A15~end~~4.5pt~#A54B4B^^1~594.031~101.78~270~21~start~~4.5pt~#A54B4B^^0~596~104^^0~M 593 107 L 596 110 L 599 107#@$R~191~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1317~0~#@$R~211~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1318~0~#@$R~231~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1319~0~#@$R~251~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1320~0~#@$R~271~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1321~0~#@$R~291~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1322~0~#@$R~311~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1323~0~#@$R~331~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1324~0~#@$R~351~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1325~0~#@$R~371~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1326~0~#@$R~391~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1327~0~#@$R~411~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1328~0~#@$R~431~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1329~0~#@$R~451~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1330~0~#@$R~471~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1331~0~#@$R~491~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1332~0~#@$R~511~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1333~0~#@$R~531~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1334~0~#@$R~551~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1335~0~#@$R~571~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1336~0~#@$R~591~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1337~0~#@$R~611~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1338~0~#@$R~631~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1339~0~#@$R~651~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1340~0~#@$R~671~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1341~0~#@$R~691~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1342~0~#@$R~711~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1343~0~#@$R~731~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1344~0~#@$R~751~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1345~0~#@$R~771~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1346~0~#@$R~791~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1347~0~#@$R~811~107.84~~~10~15~#A54B4B~0.004~0~#A54B4B~gge1348~0~\",\"LIB~553~-183~package`NODEMCU-32SLUA`spicePre`X`BOM_Supplier`LCSC`BOM_Supplier Part`C111436`BOM_Manufacturer`Ai-Thinker`BOM_Manufacturer Part`NodeMCU-32SLua`Contributor`EasyEDA`link`https://lcsc.com/product-detail/Modules_NodeMCU-32S-Lua_C111436.html`spiceSymbolName`NodeMCU-32SLua`~~0~gge9427~0733d55cb4e5433f9d1363240db316df~dcdf0339ae18468cacd1b04979256517~0~7fdd63a73446bc55~yes~yes#@$T~N~544.265625~28.265625~0~#000080~Arial~~~~~comment~NodeMCU-32SLua~1~start~gge9428~0~#@$T~P~544.2734375~37.42~0~#000080~Arial~~~~~comment~U1~1~start~gge9430~0~#@$A~M 635.3529 -383.74 A 10 10 0 0 0 625.3529 -393.74~~#000000~1~0~none~gge9432~0#@$A~M 625.3529 18.26 A 10 10 0 0 0 635.3529 8.26~~#000000~1~0~none~gge9433~0#@$A~M 475.3529 -393.74 A 10 10 0 0 0 465.3529 -383.74~~#000000~1~0~none~gge9434~0#@$A~M 465.3529 8.26 A 10 10 0 0 0 475.3529 18.26~~#000000~1~0~none~gge9435~0#@$T~L~564.7~-380.05~0~#0000FF~~9pt~~~~comment~USB~1~end~gge9436~0~pinpart#@$T~L~591.03~8.86~0~#0000FF~~9pt~~~~comment~NodeMCU-32S~1~end~gge9438~0~pinpart#@$PL~625.35 18.26 475.35 18.26~#000000~1~0~none~gge9440~0#@$PL~475.35 -393.74 625.35 -393.74~#000000~1~0~none~gge9441~0#@$PL~635.35 -383.34 635.35 8.16~#000000~1~0~none~gge9442~0#@$PL~465.33 8.52 465.4 -383.82~#000000~1~0~none~gge9443~0#@$PL~585.35 -393.74 585.35 -373.74 515.35 -373.74 515.35 -393.74~#000000~1~0~none~gge9444~0#@$PL~635.35 -6.74 465.35 -6.74~#000000~1~0~none~gge9445~0#@$P~show~0~15~445~-95~180~gge9446~0^^445~-95^^M 445 -95 h 20~#880000^^1~467~-92~0~P34~start~~~#0000FF^^1~460~-96~0~15~end~~~#0000FF^^0~462~-95^^0~M 465 -98 L 468 -95 L 465 -92#@$P~show~0~14~445~-115~180~gge9453~0^^445~-115^^M 445 -115 h 20~#880000^^1~467~-112~0~P35~start~~~#0000FF^^1~460~-116~0~14~end~~~#0000FF^^0~462~-115^^0~M 465 -118 L 468 -115 L 465 -112#@$P~show~0~13~445~-135~180~gge9460~0^^445~-135^^M 445 -135 h 20~#880000^^1~467~-132~0~P32~start~~~#0000FF^^1~460~-136~0~13~end~~~#0000FF^^0~462~-135^^0~M 465 -138 L 468 -135 L 465 -132#@$P~show~0~12~445~-155~180~gge9467~0^^445~-155^^M 445 -155 h 20~#880000^^1~467~-152~0~P33~start~~~#0000FF^^1~460~-156~0~12~end~~~#0000FF^^0~462~-155^^0~M 465 -158 L 468 -155 L 465 -152#@$P~show~0~11~445~-175~180~gge9474~0^^445~-175^^M 445 -175 h 20~#880000^^1~467~-172~0~P25~start~~~#0000FF^^1~460~-176~0~11~end~~~#0000FF^^0~462~-175^^0~M 465 -178 L 468 -175 L 465 -172#@$P~show~0~10~445~-195~180~gge9481~0^^445~-195^^M 445 -195 h 20~#880000^^1~467~-192~0~P26~start~~~#0000FF^^1~460~-196~0~10~end~~~#0000FF^^0~462~-195^^0~M 465 -198 L 468 -195 L 465 -192#@$P~show~0~9~445~-215~180~gge9488~0^^445~-215^^M 445 -215 h 20~#880000^^1~467~-212~0~P27~start~~~#0000FF^^1~460~-216~0~9~end~~~#0000FF^^0~462~-215^^0~M 465 -218 L 468 -215 L 465 -212#@$P~show~0~8~445~-235~180~gge9495~0^^445~-235^^M 445 -235 h 20~#880000^^1~467~-232~0~P14~start~~~#0000FF^^1~460~-236~0~8~end~~~#0000FF^^0~462~-235^^0~M 465 -238 L 468 -235 L 465 -232#@$P~show~0~7~445~-255~180~gge9502~0^^445~-255^^M 445 -255 h 20~#880000^^1~467~-252~0~P12~start~~~#0000FF^^1~460~-256~0~7~end~~~#0000FF^^0~462~-255^^0~M 465 -258 L 468 -255 L 465 -252#@$P~show~0~6~445~-275~180~gge9509~0^^445~-275^^M 445 -275 h 20~#880000^^1~467~-272~0~GND~start~~~#0000FF^^1~460~-276~0~6~end~~~#0000FF^^0~462~-275^^0~M 465 -278 L 468 -275 L 465 -272#@$P~show~0~5~445~-295~180~gge9516~0^^445~-295^^M 445 -295 h 20~#880000^^1~467~-292~0~P13~start~~~#0000FF^^1~460~-296~0~5~end~~~#0000FF^^0~462~-295^^0~M 465 -298 L 468 -295 L 465 -292#@$P~show~0~4~445~-315~180~gge9523~0^^445~-315^^M 445 -315 h 20~#880000^^1~467~-312~0~SD2~start~~~#0000FF^^1~460~-316~0~4~end~~~#0000FF^^0~462~-315^^0~M 465 -318 L 468 -315 L 465 -312#@$P~show~0~3~445~-335~180~gge9530~0^^445~-335^^M 445 -335 h 20~#880000^^1~467~-332~0~SD3~start~~~#0000FF^^1~460~-336~0~3~end~~~#0000FF^^0~462~-335^^0~M 465 -338 L 468 -335 L 465 -332#@$P~show~0~2~445~-355~180~gge9537~0^^445~-355^^M 445 -355 h 20~#880000^^1~467~-352~0~CMD~start~~~#0000FF^^1~460~-356~0~2~end~~~#0000FF^^0~462~-355^^0~M 465 -358 L 468 -355 L 465 -352#@$P~show~0~1~445~-375~180~gge9544~0^^445~-375^^M 445 -375 h 20~#880000^^1~467~-372~0~Vin (5V)~start~~~#0000FF^^1~460~-376~0~1~end~~~#0000FF^^0~462~-375^^0~M 465 -378 L 468 -375 L 465 -372#@$P~show~0~19~445~-15~180~gge9551~0^^445~-15^^M 445 -15 h 20~#880000^^1~467~-12~0~3.3V~start~~~#0000FF^^1~460~-16~0~19~end~~~#0000FF^^0~462~-15^^0~M 465 -18 L 468 -15 L 465 -12#@$P~show~0~18~445~-35~180~gge9558~0^^445~-35^^M 445 -35 h 20~#880000^^1~467~-32~0~EN~start~~~#0000FF^^1~460~-36~0~18~end~~~#0000FF^^0~462~-35^^0~M 465 -38 L 468 -35 L 465 -32#@$P~show~0~17~445~-55~180~gge9565~0^^445~-55^^M 445 -55 h 20~#880000^^1~467~-52~0~SVP~start~~~#0000FF^^1~460~-56~0~17~end~~~#0000FF^^0~462~-55^^0~M 465 -58 L 468 -55 L 465 -52#@$P~show~0~16~445~-75~180~gge9572~0^^445~-75^^M 445 -75 h 20~#880000^^1~467~-72~0~SVN~start~~~#0000FF^^1~460~-76~0~16~end~~~#0000FF^^0~462~-75^^0~M 465 -78 L 468 -75 L 465 -72#@$P~show~0~34~656~-95~0~gge9579~0^^656~-95^^M 656 -95 h -20~#880000^^1~634~-92~0~RX~end~~~#0000FF^^1~641~-96~0~34~start~~~#0000FF^^0~639~-95^^0~M 636 -92 L 633 -95 L 636 -98#@$P~show~0~33~656~-115~0~gge9586~0^^656~-115^^M 656 -115 h -20~#880000^^1~634~-112~0~P21~end~~~#0000FF^^1~641~-116~0~33~start~~~#0000FF^^0~639~-115^^0~M 636 -112 L 633 -115 L 636 -118#@$P~show~0~32~656~-135~0~gge9593~0^^656~-135^^M 656 -135 h -20~#880000^^1~634~-132~0~GND~end~~~#0000FF^^1~641~-136~0~32~start~~~#0000FF^^0~639~-135^^0~M 636 -132 L 633 -135 L 636 -138#@$P~show~0~31~656~-155~0~gge9600~0^^656~-155^^M 656 -155 h -20~#880000^^1~634~-152~0~P19~end~~~#0000FF^^1~641~-156~0~31~start~~~#0000FF^^0~639~-155^^0~M 636 -152 L 633 -155 L 636 -158#@$P~show~0~30~656~-175~0~gge9607~0^^656~-175^^M 656 -175 h -20~#880000^^1~634~-172~0~P18~end~~~#0000FF^^1~641~-176~0~30~start~~~#0000FF^^0~639~-175^^0~M 636 -172 L 633 -175 L 636 -178#@$P~show~0~29~656~-195~0~gge9614~0^^656~-195^^M 656 -195 h -20~#880000^^1~634~-192~0~P5~end~~~#0000FF^^1~641~-196~0~29~start~~~#0000FF^^0~639~-195^^0~M 636 -192 L 633 -195 L 636 -198#@$P~show~0~28~656~-215~0~gge9621~0^^656~-215^^M 656 -215 h -20~#880000^^1~634~-212~0~P17~end~~~#0000FF^^1~641~-216~0~28~start~~~#0000FF^^0~639~-215^^0~M 636 -212 L 633 -215 L 636 -218#@$P~show~0~27~656~-235~0~gge9628~0^^656~-235^^M 656 -235 h -20~#880000^^1~634~-232~0~P16~end~~~#0000FF^^1~641~-236~0~27~start~~~#0000FF^^0~639~-235^^0~M 636 -232 L 633 -235 L 636 -238#@$P~show~0~26~656~-255~0~gge9635~0^^656~-255^^M 656 -255 h -20~#880000^^1~634~-252~0~P4~end~~~#0000FF^^1~641~-256~0~26~start~~~#0000FF^^0~639~-255^^0~M 636 -252 L 633 -255 L 636 -258#@$P~show~0~25~656~-275~0~gge9642~0^^656~-275^^M 656 -275 h -20~#880000^^1~634~-272~0~P0~end~~~#0000FF^^1~641~-276~0~25~start~~~#0000FF^^0~639~-275^^0~M 636 -272 L 633 -275 L 636 -278#@$P~show~0~24~656~-295~0~gge9649~0^^656~-295^^M 656 -295 h -20~#880000^^1~634~-292~0~P2~end~~~#0000FF^^1~641~-296~0~24~start~~~#0000FF^^0~639~-295^^0~M 636 -292 L 633 -295 L 636 -298#@$P~show~0~23~656~-315~0~gge9656~0^^656~-315^^M 656 -315 h -20~#880000^^1~634~-312~0~P15~end~~~#0000FF^^1~641~-316~0~23~start~~~#0000FF^^0~639~-315^^0~M 636 -312 L 633 -315 L 636 -318#@$P~show~0~22~656~-335~0~gge9663~0^^656~-335^^M 656 -335 h -20~#880000^^1~634~-332~0~SD1~end~~~#0000FF^^1~641~-336~0~22~start~~~#0000FF^^0~639~-335^^0~M 636 -332 L 633 -335 L 636 -338#@$P~show~0~21~656~-355~0~gge9670~0^^656~-355^^M 656 -355 h -20~#880000^^1~634~-352~0~SD0~end~~~#0000FF^^1~641~-356~0~21~start~~~#0000FF^^0~639~-355^^0~M 636 -352 L 633 -355 L 636 -358#@$P~show~0~20~656~-375~0~gge9677~0^^656~-375^^M 656 -375 h -20~#880000^^1~634~-372~0~CLK~end~~~#0000FF^^1~641~-376~0~20~start~~~#0000FF^^0~639~-375^^0~M 636 -372 L 633 -375 L 636 -378#@$P~show~0~38~656~-15~0~gge9684~0^^656~-15^^M 656 -15 h -20~#880000^^1~634~-12~0~GND~end~~~#0000FF^^1~641~-16~0~38~start~~~#0000FF^^0~639~-15^^0~M 636 -12 L 633 -15 L 636 -18#@$P~show~0~37~656~-35~0~gge9691~0^^656~-35^^M 656 -35 h -20~#880000^^1~634~-32~0~P23~end~~~#0000FF^^1~641~-36~0~37~start~~~#0000FF^^0~639~-35^^0~M 636 -32 L 633 -35 L 636 -38#@$P~show~0~36~656~-55~0~gge9698~0^^656~-55^^M 656 -55 h -20~#880000^^1~634~-52~0~P22~end~~~#0000FF^^1~641~-56~0~36~start~~~#0000FF^^0~639~-55^^0~M 636 -52 L 633 -55 L 636 -58#@$P~show~0~35~656~-75~0~gge9705~0^^656~-75^^M 656 -75 h -20~#880000^^1~634~-72~0~TX~end~~~#0000FF^^1~641~-76~0~35~start~~~#0000FF^^0~639~-75^^0~M 636 -72 L 633 -75 L 636 -78\",\"LIB~225~-260~timeStamp`1457599550`sourceId`1T5FDZYC8`package`MICROSD`spicePre`P`spiceSymbolName`MicroSD`BOM_Manufacturer Part``~~0~gge9999~b49482374f794cea9ffc97788e7e5ee6~f49e3538a05947f29d330e343d647a09~0~2f1f968141153f38~yes~yes#@$T~N~220.03125~-318~0~#000080~Arial~~~~~comment~MicroSD~1~start~gge10000~0~#@$T~P~220.03125~-327.15625~0~#000080~Arial~~~~~comment~P1~1~start~gge10002~0~#@$P~show~0~1~280~-225~0~gge10004~0^^280~-225^^M 280 -225 h -20~#880000^^1~258.14~-221.71~0~5V~end~~~#0000FF^^1~265.14~-225.96~0~1~start~~~#0000FF^^0~263~-225^^0~M 260 -228 L 257 -225 L 260 -222#@$P~show~0~2~280~-235~0~gge10011~0^^280~-235^^M 280 -235 h -20~#880000^^1~258.14~-231.96~0~3V~end~~~#0000FF^^1~265.14~-235.96~0~2~start~~~#0000FF^^0~263~-235^^0~M 260 -238 L 257 -235 L 260 -232#@$P~show~0~3~280~-245~0~gge10018~0^^280~-245^^M 280 -245 h -20~#880000^^1~258.14~-241.96~0~GND~end~~~#0000FF^^1~265.14~-245.96~0~3~start~~~#0000FF^^0~263~-245^^0~M 260 -248 L 257 -245 L 260 -242#@$P~show~0~4~280~-255~0~gge10025~0^^280~-255^^M 280 -255 h -20~#880000^^1~258.14~-251.96~0~CLK~end~~~#0000FF^^1~265.14~-255.96~0~4~start~~~#0000FF^^0~263~-255^^0~M 260 -258 L 257 -255 L 260 -252#@$P~show~0~5~280~-265~0~gge10032~0^^280~-265^^M 280 -265 h -20~#880000^^1~258.14~-261.96~0~DO~end~~~#0000FF^^1~265.14~-265.96~0~5~start~~~#0000FF^^0~263~-265^^0~M 260 -268 L 257 -265 L 260 -262#@$R~170~-315~5~5~90~110~#880000~1~0~none~gge10039~0~#@$P~show~0~6~280~-275~~gge10040~0^^280~-275^^M 280 -275 h -20~#880000^^1~258~-272~0~DI~end~~~#0000FF^^1~265~-276~0~6~start~~~#0000FF^^0~263~-275^^0~M 260 -278 L 257 -275 L 260 -272#@$P~show~0~7~280~-285~~gge10047~0^^280~-285^^M 280 -285 h -20~#880000^^1~258~-282~0~CS~end~~~#0000FF^^1~265~-286~0~7~start~~~#0000FF^^0~263~-285^^0~M 260 -288 L 257 -285 L 260 -282#@$P~show~0~8~280~-295~~gge10054~0^^280~-295^^M 280 -295 h -20~#880000^^1~258~-292~0~CD~end~~~#0000FF^^1~265~-296~0~8~start~~~#0000FF^^0~263~-295^^0~M 260 -298 L 257 -295 L 260 -292\"],\"BBox\":{\"x\":170,\"y\":-393.7,\"width\":713.3,\"height\":516.7},\"colors\":{}}" 13 | } 14 | ] 15 | } -------------------------------------------------------------------------------- /hardware/PCB.json: -------------------------------------------------------------------------------- 1 | { 2 | "head": { 3 | "docType": "3", 4 | "editorVersion": "6.3.22", 5 | "c_para": {}, 6 | "bind_sch_id": [ 7 | "65eaa55e4b63419cbb07672889168dbd" 8 | ], 9 | "hasIdFlag": true, 10 | "x": "4020", 11 | "y": "3497.5", 12 | "importFlag": 0, 13 | "transformList": "" 14 | }, 15 | "canvas": "CA~1000~1000~#000000~yes~#FFFFFF~10~1000~1000~line~0.5~mm~1~45~visible~0.5~4020~3497.5~1~yes", 16 | "shape": [ 17 | "TRACK~1~10~~4249.5 3184 4055.405 3184 4055.405 2995.024 4249.5 2995.024 4249.5 3184~gge168~0", 18 | "LIB~4057.374~3158.19~package`CONNECTOR`~~~gge1~1~e69b86d160f34935b1125800493d1f7a~1583777852~0~f8614d3c7ac52c96#@$TEXT~N~4152.374~3151.19~0.6~0~0~3~~4.5~CONNECTOR~M 4155.444 3147.67 L 4155.234 3147.26 L 4154.824 3146.85 L 4154.424 3146.65 L 4153.604 3146.65 L 4153.194 3146.85 L 4152.784 3147.26 L 4152.574 3147.67 L 4152.374 3148.29 L 4152.374 3149.31 L 4152.574 3149.92 L 4152.784 3150.33 L 4153.194 3150.74 L 4153.604 3150.94 L 4154.424 3150.94 L 4154.824 3150.74 L 4155.234 3150.33 L 4155.444 3149.92 M 4158.024 3146.65 L 4157.614 3146.85 L 4157.204 3147.26 L 4156.994 3147.67 L 4156.794 3148.29 L 4156.794 3149.31 L 4156.994 3149.92 L 4157.204 3150.33 L 4157.614 3150.74 L 4158.024 3150.94 L 4158.834 3150.94 L 4159.244 3150.74 L 4159.654 3150.33 L 4159.864 3149.92 L 4160.064 3149.31 L 4160.064 3148.29 L 4159.864 3147.67 L 4159.654 3147.26 L 4159.244 3146.85 L 4158.834 3146.65 L 4158.024 3146.65 M 4161.414 3146.65 L 4161.414 3150.94 M 4161.414 3146.65 L 4164.274 3150.94 M 4164.274 3146.65 L 4164.274 3150.94 M 4165.624 3146.65 L 4165.624 3150.94 M 4165.624 3146.65 L 4168.494 3150.94 M 4168.494 3146.65 L 4168.494 3150.94 M 4169.844 3146.65 L 4169.844 3150.94 M 4169.844 3146.65 L 4172.504 3146.65 M 4169.844 3148.69 L 4171.474 3148.69 M 4169.844 3150.94 L 4172.504 3150.94 M 4176.924 3147.67 L 4176.714 3147.26 L 4176.304 3146.85 L 4175.894 3146.65 L 4175.074 3146.65 L 4174.674 3146.85 L 4174.264 3147.26 L 4174.054 3147.67 L 4173.854 3148.29 L 4173.854 3149.31 L 4174.054 3149.92 L 4174.264 3150.33 L 4174.674 3150.74 L 4175.074 3150.94 L 4175.894 3150.94 L 4176.304 3150.74 L 4176.714 3150.33 L 4176.924 3149.92 M 4179.704 3146.65 L 4179.704 3150.94 M 4178.274 3146.65 L 4181.134 3146.65 M 4183.714 3146.65 L 4183.304 3146.85 L 4182.894 3147.26 L 4182.684 3147.67 L 4182.484 3148.29 L 4182.484 3149.31 L 4182.684 3149.92 L 4182.894 3150.33 L 4183.304 3150.74 L 4183.714 3150.94 L 4184.524 3150.94 L 4184.934 3150.74 L 4185.344 3150.33 L 4185.554 3149.92 L 4185.754 3149.31 L 4185.754 3148.29 L 4185.554 3147.67 L 4185.344 3147.26 L 4184.934 3146.85 L 4184.524 3146.65 L 4183.714 3146.65 M 4187.104 3146.65 L 4187.104 3150.94 M 4187.104 3146.65 L 4188.944 3146.65 L 4189.564 3146.85 L 4189.764 3147.06 L 4189.974 3147.47 L 4189.974 3147.88 L 4189.764 3148.29 L 4189.564 3148.49 L 4188.944 3148.69 L 4187.104 3148.69 M 4188.534 3148.69 L 4189.974 3150.94~none~gge2~~0~#@$TEXT~P~4152.374~3158.19~0.6~0~0~3~~4.5~1~M 4152.374 3154.47 L 4152.784 3154.26 L 4153.394 3153.65 L 4153.394 3157.94~~gge4~~0~#@$PAD~POLYGON~4060.13~3170.001~0~0~1~1_1~1~0~4062.886 3181.812 4057.374 3181.812 4057.374 3158.19 4062.886 3158.19~180~gge6~0~~Y~0~0~0.4~4060.13,3170.001#@$PAD~POLYGON~4066.823~3170.001~0~0~1~1_2~2~0~4064.854 3158.19 4068.791 3158.19 4068.791 3181.812 4064.854 3181.812~0~gge11~0~~Y~0~0~0.4~4066.823,3170.001#@$PAD~POLYGON~4078.634~3170.001~0~0~1~1_4~4~0~4080.602 3181.812 4076.665 3181.812 4076.665 3158.19 4080.602 3158.19~180~gge16~0~~Y~0~0~0.4~4078.634,3170.001#@$PAD~POLYGON~4084.539~3170.001~0~0~1~1_5~5~0~4082.571 3158.19 4086.508 3158.19 4086.508 3181.812 4082.571 3181.812~0~gge21~0~~Y~0~0~0.4~4084.539,3170.001#@$PAD~POLYGON~4090.445~3170.001~0~0~1~1_6~6~0~4088.476 3158.19 4092.413 3158.19 4092.413 3181.812 4088.476 3181.812~0~gge26~0~~Y~0~0~0.4~4090.445,3170.001#@$PAD~POLYGON~4096.35~3170.001~0~0~1~1_7~7~0~4094.382 3158.19 4098.319 3158.19 4098.319 3181.812 4094.382 3181.812~0~gge31~0~~Y~0~0~0.4~4096.35,3170.001#@$PAD~POLYGON~4102.256~3170.001~0~0~1~1_8~8~0~4100.287 3158.19 4104.224 3158.19 4104.224 3181.812 4100.287 3181.812~0~gge36~0~~Y~0~0~0.4~4102.256,3170.001#@$PAD~POLYGON~4108.161~3170.001~0~0~1~1_9~9~0~4106.193 3158.19 4110.13 3158.19 4110.13 3181.812 4106.193 3181.812~0~gge41~0~~Y~0~0~0.4~4108.161,3170.001#@$PAD~POLYGON~4114.067~3170.001~0~0~1~1_10~10~0~4112.098 3158.19 4116.035 3158.19 4116.035 3181.812 4112.098 3181.812~0~gge46~0~~Y~0~0~0.4~4114.067,3170.001#@$PAD~POLYGON~4119.972~3170.001~0~0~1~1_11~11~0~4118.004 3158.19 4121.941 3158.19 4121.941 3181.812 4118.004 3181.812~0~gge51~0~~Y~0~0~0.4~4119.972,3170.001#@$PAD~POLYGON~4125.878~3170.001~0~0~1~1_12~12~0~4123.909 3158.19 4127.846 3158.19 4127.846 3181.812 4123.909 3181.812~0~gge56~0~~Y~0~0~0.4~4125.878,3170.001#@$PAD~POLYGON~4131.783~3170.001~0~0~1~1_13~13~0~4129.815 3158.19 4133.752 3158.19 4133.752 3181.812 4129.815 3181.812~0~gge61~0~~Y~0~0~0.4~4131.783,3170.001#@$PAD~POLYGON~4137.689~3170.001~0~0~1~1_14~14~0~4135.72 3158.19 4139.657 3158.19 4139.657 3181.812 4135.72 3181.812~0~gge66~0~~Y~0~0~0.4~4137.689,3170.001#@$PAD~POLYGON~4143.594~3170.001~0~0~1~1_15~15~0~4141.626 3158.19 4145.563 3158.19 4145.563 3181.812 4141.626 3181.812~0~gge71~0~~Y~0~0~0.4~4143.594,3170.001#@$PAD~POLYGON~4149.5~3170.001~0~0~1~1_16~16~0~4147.531 3158.19 4151.468 3158.19 4151.468 3181.812 4147.531 3181.812~0~gge76~0~~Y~0~0~0.4~4149.5,3170.001#@$PAD~POLYGON~4155.405~3170.001~0~0~1~1_17~17~0~4153.437 3158.19 4157.374 3158.19 4157.374 3181.812 4153.437 3181.812~0~gge81~0~~Y~0~0~0.4~4155.405,3170.001#@$PAD~POLYGON~4161.311~3170.001~0~0~1~1_18~18~0~4159.342 3158.19 4163.279 3158.19 4163.279 3181.812 4159.342 3181.812~0~gge86~0~~Y~0~0~0.4~4161.311,3170.001#@$PAD~POLYGON~4167.216~3170.001~0~0~1~1_19~19~0~4165.248 3158.19 4169.185 3158.19 4169.185 3181.812 4165.248 3181.812~0~gge91~0~~Y~0~0~0.4~4167.216,3170.001#@$PAD~POLYGON~4173.122~3170.001~0~0~1~1_20~20~0~4171.153 3158.19 4175.09 3158.19 4175.09 3181.812 4171.153 3181.812~0~gge96~0~~Y~0~0~0.4~4173.122,3170.001#@$PAD~POLYGON~4179.027~3170.001~0~0~1~1_21~21~0~4177.059 3158.19 4180.996 3158.19 4180.996 3181.812 4177.059 3181.812~0~gge101~0~~Y~0~0~0.4~4179.027,3170.001#@$PAD~POLYGON~4072.728~3170.001~0~0~1~1_3~3~0~4074.697 3181.812 4070.76 3181.812 4070.76 3158.19 4074.697 3158.19~180~gge106~0~~Y~0~0~0.4~4072.728,3170.001#@$PAD~POLYGON~4184.933~3170.001~0~0~1~1_22~22~0~4182.964 3158.19 4186.901 3158.19 4186.901 3181.812 4182.964 3181.812~0~gge111~0~~Y~0~0~0.4~4184.933,3170.001#@$PAD~POLYGON~4190.838~3170.001~0~0~1~1_23~23~0~4188.87 3158.19 4192.807 3158.19 4192.807 3181.812 4188.87 3181.812~0~gge116~0~~Y~0~0~0.4~4190.838,3170.001#@$PAD~POLYGON~4196.744~3170.001~0~0~1~1_24~24~0~4194.775 3158.19 4198.712 3158.19 4198.712 3181.812 4194.775 3181.812~0~gge121~0~~Y~0~0~0.4~4196.744,3170.001#@$PAD~POLYGON~4202.649~3170.001~0~0~1~1_25~25~0~4200.681 3158.19 4204.618 3158.19 4204.618 3181.812 4200.681 3181.812~0~gge126~0~~Y~0~0~0.4~4202.649,3170.001#@$PAD~POLYGON~4208.555~3170.001~0~0~1~1_26~26~0~4206.586 3158.19 4210.523 3158.19 4210.523 3181.812 4206.586 3181.812~0~gge131~0~~Y~0~0~0.4~4208.555,3170.001#@$PAD~POLYGON~4214.46~3170.001~0~0~1~1_27~27~0~4212.492 3158.19 4216.429 3158.19 4216.429 3181.812 4212.492 3181.812~0~gge136~0~~Y~0~0~0.4~4214.46,3170.001#@$PAD~POLYGON~4220.366~3170.001~0~0~1~1_28~28~0~4218.397 3158.19 4222.334 3158.19 4222.334 3181.812 4218.397 3181.812~0~gge141~0~~Y~0~0~0.4~4220.366,3170.001#@$PAD~POLYGON~4226.271~3170.001~0~0~1~1_29~29~0~4224.303 3158.19 4228.24 3158.19 4228.24 3181.812 4224.303 3181.812~0~gge146~0~~Y~0~0~0.4~4226.271,3170.001#@$PAD~POLYGON~4232.177~3170.001~0~0~1~1_30~30~0~4230.208 3158.19 4234.145 3158.19 4234.145 3181.812 4230.208 3181.812~0~gge151~0~~Y~0~0~0.4~4232.177,3170.001#@$PAD~POLYGON~4238.082~3170.001~0~0~1~1_31~31~0~4236.114 3158.19 4240.051 3158.19 4240.051 3181.812 4236.114 3181.812~0~gge156~0~~Y~0~0~0.4~4238.082,3170.001#@$PAD~POLYGON~4244.775~3170.001~0~0~1~1_32~32~0~4247.531 3181.812 4242.019 3181.812 4242.019 3158.19 4247.531 3158.19~180~gge161~0~~Y~0~0~0.4~4244.775,3170.001", 19 | "LIB~4151~3106.5~package`NODEMCU-32SLUA`~90~~gge739~1~0733d55cb4e5433f9d1363240db316df~1547680967~0~7fdd63a73446bc55#@$TEXT~N~4043.8102~3050.68~0.6~270~~3~~4.5~NodeMCU-32SLua~M 4048.3502 3050.68 L 4044.0602 3050.68 M 4048.3502 3050.68 L 4044.0602 3053.54 M 4048.3502 3053.54 L 4044.0602 3053.54 M 4046.9202 3055.92 L 4046.7102 3055.51 L 4046.3102 3055.1 L 4045.6902 3054.89 L 4045.2802 3054.89 L 4044.6702 3055.1 L 4044.2602 3055.51 L 4044.0602 3055.92 L 4044.0602 3056.53 L 4044.2602 3056.94 L 4044.6702 3057.35 L 4045.2802 3057.55 L 4045.6902 3057.55 L 4046.3102 3057.35 L 4046.7102 3056.94 L 4046.9202 3056.53 L 4046.9202 3055.92 M 4048.3502 3061.36 L 4044.0602 3061.36 M 4046.3102 3061.36 L 4046.7102 3060.95 L 4046.9202 3060.54 L 4046.9202 3059.93 L 4046.7102 3059.52 L 4046.3102 3059.11 L 4045.6902 3058.9 L 4045.2802 3058.9 L 4044.6702 3059.11 L 4044.2602 3059.52 L 4044.0602 3059.93 L 4044.0602 3060.54 L 4044.2602 3060.95 L 4044.6702 3061.36 M 4045.6902 3062.71 L 4045.6902 3065.16 L 4046.1002 3065.16 L 4046.5102 3064.96 L 4046.7102 3064.75 L 4046.9202 3064.34 L 4046.9202 3063.73 L 4046.7102 3063.32 L 4046.3102 3062.91 L 4045.6902 3062.71 L 4045.2802 3062.71 L 4044.6702 3062.91 L 4044.2602 3063.32 L 4044.0602 3063.73 L 4044.0602 3064.34 L 4044.2602 3064.75 L 4044.6702 3065.16 M 4048.3502 3066.51 L 4044.0602 3066.51 M 4048.3502 3066.51 L 4044.0602 3068.15 M 4048.3502 3069.78 L 4044.0602 3068.15 M 4048.3502 3069.78 L 4044.0602 3069.78 M 4047.3302 3074.2 L 4047.7402 3074 L 4048.1502 3073.59 L 4048.3502 3073.18 L 4048.3502 3072.36 L 4048.1502 3071.95 L 4047.7402 3071.54 L 4047.3302 3071.34 L 4046.7102 3071.13 L 4045.6902 3071.13 L 4045.0802 3071.34 L 4044.6702 3071.54 L 4044.2602 3071.95 L 4044.0602 3072.36 L 4044.0602 3073.18 L 4044.2602 3073.59 L 4044.6702 3074 L 4045.0802 3074.2 M 4048.3502 3075.55 L 4045.2802 3075.55 L 4044.6702 3075.76 L 4044.2602 3076.17 L 4044.0602 3076.78 L 4044.0602 3077.19 L 4044.2602 3077.8 L 4044.6702 3078.21 L 4045.2802 3078.42 L 4048.3502 3078.42 M 4045.9002 3079.77 L 4045.9002 3083.45 M 4048.3502 3085.21 L 4048.3502 3087.46 L 4046.7102 3086.23 L 4046.7102 3086.84 L 4046.5102 3087.25 L 4046.3102 3087.46 L 4045.6902 3087.66 L 4045.2802 3087.66 L 4044.6702 3087.46 L 4044.2602 3087.05 L 4044.0602 3086.43 L 4044.0602 3085.82 L 4044.2602 3085.21 L 4044.4602 3085 L 4044.8702 3084.8 M 4047.3302 3089.22 L 4047.5302 3089.22 L 4047.9402 3089.42 L 4048.1502 3089.63 L 4048.3502 3090.03 L 4048.3502 3090.85 L 4048.1502 3091.26 L 4047.9402 3091.47 L 4047.5302 3091.67 L 4047.1202 3091.67 L 4046.7102 3091.47 L 4046.1002 3091.06 L 4044.0602 3089.01 L 4044.0602 3091.88 M 4047.7402 3096.09 L 4048.1502 3095.68 L 4048.3502 3095.07 L 4048.3502 3094.25 L 4048.1502 3093.63 L 4047.7402 3093.23 L 4047.3302 3093.23 L 4046.9202 3093.43 L 4046.7102 3093.63 L 4046.5102 3094.04 L 4046.1002 3095.27 L 4045.9002 3095.68 L 4045.6902 3095.88 L 4045.2802 3096.09 L 4044.6702 3096.09 L 4044.2602 3095.68 L 4044.0602 3095.07 L 4044.0602 3094.25 L 4044.2602 3093.63 L 4044.6702 3093.23 M 4048.3502 3097.44 L 4044.0602 3097.44 M 4044.0602 3097.44 L 4044.0602 3099.89 M 4046.9202 3101.24 L 4044.8702 3101.24 L 4044.2602 3101.45 L 4044.0602 3101.86 L 4044.0602 3102.47 L 4044.2602 3102.88 L 4044.8702 3103.49 M 4046.9202 3103.49 L 4044.0602 3103.49 M 4046.9202 3107.3 L 4044.0602 3107.3 M 4046.3102 3107.3 L 4046.7102 3106.89 L 4046.9202 3106.48 L 4046.9202 3105.87 L 4046.7102 3105.46 L 4046.3102 3105.05 L 4045.6902 3104.84 L 4045.2802 3104.84 L 4044.6702 3105.05 L 4044.2602 3105.46 L 4044.0602 3105.87 L 4044.0602 3106.48 L 4044.2602 3106.89 L 4044.6702 3107.3~none~gge740~~0~#@$TEXT~P~4033.5~3106~0.6~90~~3~~4.5~U1~M 4028.96 3106 L 4032.03 3106 L 4032.64 3105.8 L 4033.05 3105.39 L 4033.25 3104.77 L 4033.25 3104.36 L 4033.05 3103.75 L 4032.64 3103.34 L 4032.03 3103.14 L 4028.96 3103.14 M 4029.78 3101.79 L 4029.57 3101.38 L 4028.96 3100.76 L 4033.25 3100.76~none~gge742~~0~#@$SVGNODE~{\"gId\":\"gge744\",\"nodeName\":\"g\",\"nodeType\":1,\"layerid\":\"3\",\"attrs\":{\"layerid\":\"3\",\"c_partid\":\"part_svg\",\"c_shapetype\":\"group\",\"layer_front\":\"0\",\"layer_show\":\"1\",\"locked\":\"1\",\"id\":\"gge744\"},\"childNodes\":[{\"gId\":\"gge745\",\"nodeName\":\"path\",\"nodeType\":1,\"attrs\":{\"d\":\"M 4098.2 3106.7 C 4098.4701 3106.8169 4098.7365 3106.9126 4098.7919 3106.9126 C 4098.8472 3106.9126 4099.0228 3106.5429 4099.1818 3106.0909 C 4099.3409 3105.6392 4099.7987 3104.5805 4100.1997 3103.7388 C 4103.0086 3097.839 4107.8892 3093.2082 4113.8016 3090.8332 C 4114.7262 3090.4619 4114.777 3090.4188 4114.6977 3090.0746 C 4114.5079 3089.249 4114.4548 3089.218 4113.2332 3089.218 C 4110.1527 3089.218 4107.0498 3090.1948 4104.4538 3091.9819 C 4103.1983 3092.8462 4101.215 3094.899 4100.3857 3096.1924 C 4098.6427 3098.911 4097.7091 3102.0897 4097.7091 3105.3057 L 4097.7091 3106.4875 L 4098.2 3106.7 M 4100.0316 3113.6532 C 4100.3383 3114.1554 4100.8314 3114.8662 4101.1271 3115.2331 C 4101.6438 3115.8739 4101.6931 3115.9002 4102.3789 3115.9002 C 4102.7715 3115.9002 4103.3758 3115.8601 4103.7216 3115.8109 L 4104.3505 3115.7216 L 4104.3505 3114.642 C 4104.3505 3111.4865 4105.5518 3107.7179 4107.5758 3104.5252 C 4108.4981 3103.0701 4110.9313 3100.518 4112.3565 3099.5108 C 4115.1096 3097.5653 4118.412 3096.3511 4121.486 3096.1543 C 4123.634 3096.0169 4123.3877 3096.206 4123.4321 3094.66 L 4123.4708 3093.314 L 4122.7192 3092.6796 C 4122.3057 3092.3307 4121.5969 3091.812 4121.1442 3091.5271 L 4120.3211 3091.0088 L 4119.2892 3091.1814 C 4115.2067 3091.8638 4111.2895 3093.6827 4108.0711 3096.3907 C 4103.8463 3099.9455 4100.7792 3105.2402 4099.7529 3110.7507 C 4099.5978 3111.5826 4099.4717 3112.3706 4099.4724 3112.5019 C 4099.4731 3112.6331 4099.7247 3113.1512 4100.0316 3113.6532 M 4101.1992 3119.4971 C 4103.8175 3121.8032 4106.8299 3123.2632 4110.157 3123.8382 C 4112.3539 3124.218 4115.5699 3124.0772 4117.6382 3123.5109 C 4121.8069 3122.3692 4125.2923 3119.9527 4127.7755 3116.4828 C 4132.7089 3109.5887 4132.5812 3100.295 4127.4597 3093.5012 C 4126.994 3092.8833 4126.4818 3092.2561 4126.3216 3092.1075 C 4126.032 3091.8384 4126.0282 3091.8395 4125.5592 3092.3105 C 4125.2999 3092.5709 4125.0878 3092.8341 4125.0878 3092.8953 C 4125.0878 3092.9566 4125.3854 3093.3473 4125.7491 3093.7633 C 4127.5562 3095.8308 4128.9779 3098.7957 4129.5721 3101.7357 C 4129.9465 3103.5877 4129.9816 3106.5575 4129.6497 3108.2947 C 4129.0608 3111.3766 4127.6192 3114.4977 4125.8447 3116.5321 L 4125.2323 3117.2343 L 4125.5137 3116.6125 C 4126.648 3114.1054 4123.7263 3111.5751 4121.5395 3113.1708 C 4119.9615 3114.3226 4119.9659 3116.6386 4121.5485 3117.7935 C 4122.034 3118.1478 4122.251 3118.2126 4122.9611 3118.2147 C 4123.5018 3118.2163 4123.966 3118.129 4124.2668 3117.9689 L 4124.7333 3117.7204 L 4124.4175 3118.0686 C 4123.4414 3119.1451 4120.6833 3120.8477 4118.7492 3121.5678 C 4116.3647 3122.4554 4113.0225 3122.7801 4110.5175 3122.3674 C 4107.398 3121.8535 4104.075 3120.1856 4101.8273 3118.0058 L 4101.2695 3117.4647 L 4100.7768 3117.9874 C 4100.5059 3118.2749 4100.2843 3118.5508 4100.2843 3118.6006 C 4100.2843 3118.6505 4100.696 3119.0539 4101.1992 3119.4971 M 4106.3129 3116.8205 C 4107.0375 3119.1968 4108.8954 3120.7836 4111.3005 3121.0802 C 4113.2757 3121.324 4114.8928 3120.7203 4116.2081 3119.2483 C 4117.1212 3118.2265 4117.5635 3117.254 4117.7627 3115.83 C 4117.849 3115.2121 4117.9472 3114.5169 4117.9811 3114.2852 C 4118.1765 3112.9408 4119.4157 3111.3388 4120.8053 3110.6344 C 4122.3341 3109.8595 4124.4942 3110.0054 4125.898 3110.9787 L 4126.505 3111.3995 L 4126.9483 3110.954 C 4127.7118 3110.1874 4128.0425 3109.5521 4128.2635 3108.4281 C 4128.6308 3106.5591 4128.6286 3106.5522 4127.4935 3105.995 C 4123.9856 3104.273 4119.9976 3104.6865 4116.862 3107.097 C 4114.7453 3108.7243 4113.1831 3111.6298 4112.9345 3114.4013 C 4112.8054 3115.84 4112.2102 3116.3893 4111.41 3115.8085 C 4111.1023 3115.5852 4111.0931 3115.5269 4111.1698 3114.2989 C 4111.3443 3111.5014 4112.5177 3108.8794 4114.553 3106.7393 C 4115.9708 3105.2485 4117.4736 3104.3026 4119.5307 3103.6061 C 4120.5171 3103.2722 4120.9677 3103.2073 4122.6634 3103.1537 C 4124.6361 3103.0914 4125.0895 3103.1536 4127.0651 3103.7573 C 4127.3163 3103.8342 4127.3963 3103.712 4127.7735 3102.6749 L 4128.1989 3101.5058 L 4127.9346 3100.6281 C 4127.7127 3099.8908 4127.1278 3098.3465 4127.0701 3098.346 C 4127.0608 3098.3458 4126.5346 3098.251 4125.9009 3098.1354 C 4124.4071 3097.8629 4121.6857 3097.8673 4120.1405 3098.145 C 4114.9693 3099.0741 4110.4126 3102.5346 4108.0082 3107.3581 C 4106.7785 3109.8252 4106.1015 3112.5698 4106.1263 3114.9874 C 4106.1334 3115.6825 4106.2174 3116.5076 4106.3129 3116.8205\",\"stroke\":\"none\",\"id\":\"gge745\"}}]}#@$SVGNODE~{\"gId\":\"gge746\",\"nodeName\":\"g\",\"nodeType\":1,\"layerid\":\"3\",\"attrs\":{\"layerid\":\"3\",\"c_partid\":\"part_svg\",\"c_shapetype\":\"group\",\"layer_front\":\"0\",\"layer_show\":\"1\",\"locked\":\"1\",\"id\":\"gge746\"},\"childNodes\":[{\"gId\":\"gge747\",\"nodeName\":\"path\",\"nodeType\":1,\"attrs\":{\"d\":\"M 4166.9965 3120.8805 C 4167.5305 3122.8685 4169.2176 3124.5325 4171.2296 3125.0565 C 4172.4116 3125.3645 4200.9545 3125.3645 4202.1365 3125.0565 C 4204.1785 3124.5245 4205.8456 3122.8605 4206.3765 3120.8225 C 4206.6876 3119.6285 4206.6876 3091.1025 4206.3765 3089.9076 C 4205.8456 3087.8705 4204.1785 3086.2056 4202.1365 3085.6736 C 4200.9485 3085.3645 4172.4116 3085.3665 4171.2225 3085.6756 C 4169.1845 3086.2065 4167.5196 3087.8725 4166.9876 3089.9156 C 4166.6876 3091.0665 4166.6956 3119.7625 4166.9965 3120.8805 M 4173.1565 3102.3805 C 4174.3185 3097.9745 4177.8725 3094.6296 4182.4425 3093.6425 C 4182.7265 3093.5805 4182.8025 3093.4576 4182.9305 3092.8456 C 4183.5876 3089.7185 4186.8645 3087.2676 4190.0785 3087.5005 C 4197.1376 3088.0116 4202.0805 3099.0676 4200.2016 3110.1405 C 4198.5745 3119.7205 4192.4176 3125.3105 4186.5745 3122.5116 C 4184.9405 3121.7285 4183.3005 3119.6465 4182.9305 3117.8845 C 4182.8025 3117.2736 4182.7265 3117.1496 4182.4425 3117.0876 C 4175.6345 3115.6176 4171.4256 3108.9505 4173.1565 3102.3805 M 4177.0585 3109.0185 C 4177.3616 3109.3216 4177.4785 3109.3445 4178.7236 3109.3445 C 4180.2116 3109.3445 4180.7136 3109.0936 4180.7136 3108.3496 C 4180.7136 3107.6056 4180.2116 3107.3545 4178.7236 3107.3545 C 4177.2345 3107.3545 4176.7336 3107.6056 4176.7336 3108.3496 C 4176.7336 3108.5385 4176.8796 3108.8396 4177.0585 3109.0185 M 4176.9865 3106.0465 C 4177.2256 3106.3425 4177.3245 3106.3596 4178.7236 3106.3596 C 4180.3696 3106.3596 4180.7136 3106.1885 4180.7136 3105.3656 C 4180.7136 3104.5425 4180.3696 3104.3705 4178.7236 3104.3705 C 4177.0765 3104.3705 4176.7336 3104.5425 4176.7336 3105.3656 C 4176.7336 3105.5676 4176.8476 3105.8745 4176.9865 3106.0465 M 4177.0585 3103.0505 C 4177.3616 3103.3525 4177.4785 3103.3756 4178.7236 3103.3756 C 4180.2116 3103.3756 4180.7136 3103.1245 4180.7136 3102.3805 C 4180.7136 3101.6365 4180.2116 3101.3865 4178.7236 3101.3865 C 4177.2345 3101.3865 4176.7336 3101.6365 4176.7336 3102.3805 C 4176.7336 3102.5696 4176.8796 3102.8705 4177.0585 3103.0505 M 4181.7765 3109.8436 C 4181.9945 3110.3756 4182.3996 3110.4176 4186.8996 3110.3776 C 4190.8056 3110.3425 4191.2056 3110.3185 4191.4216 3110.1025 C 4191.7845 3109.7385 4191.7845 3100.9916 4191.4205 3100.6285 C 4191.0576 3100.2645 4182.3085 3100.2645 4181.9445 3100.6276 C 4181.6765 3100.8965 4181.5245 3109.2296 4181.7765 3109.8436 M 4183.0285 3114.9876 C 4183.2076 3115.1665 4183.5085 3115.3125 4183.6976 3115.3125 C 4184.4425 3115.3125 4184.6925 3114.8116 4184.6925 3113.3236 C 4184.6925 3112.0796 4184.6705 3111.9616 4184.3676 3111.6596 C 4183.9525 3111.2445 4183.4436 3111.2445 4183.0285 3111.6596 C 4182.5336 3112.1545 4182.5336 3114.4925 4183.0285 3114.9876 M 4183.0285 3099.0705 C 4183.2076 3099.2496 4183.5085 3099.3965 4183.6976 3099.3965 C 4184.4425 3099.3965 4184.6925 3098.8956 4184.6925 3097.4065 C 4184.6925 3096.1625 4184.6705 3096.0456 4184.3676 3095.7425 C 4183.9525 3095.3285 4183.4436 3095.3285 4183.0285 3095.7425 C 4182.5336 3096.2376 4182.5336 3098.5756 4183.0285 3099.0705 M 4184.5636 3103.2196 C 4184.9925 3102.7905 4185.4456 3102.7796 4185.8976 3103.1865 C 4186.0476 3103.3225 4186.4676 3103.3756 4187.3896 3103.3756 L 4188.6725 3103.3756 L 4188.6725 3103.8765 C 4188.6725 3104.3205 4188.5676 3104.4825 4187.7445 3105.2985 C 4187.2336 3105.8056 4186.8156 3106.2665 4186.8156 3106.3236 C 4186.8156 3106.5125 4187.1736 3106.4296 4187.5156 3106.1605 C 4188.5296 3105.3636 4189.7225 3106.5905 4188.8156 3107.4976 C 4188.3736 3107.9396 4187.9256 3107.9556 4187.4685 3107.5436 C 4187.3176 3107.4076 4186.8985 3107.3545 4185.9756 3107.3545 L 4184.6925 3107.3545 L 4184.6925 3106.8536 C 4184.6925 3106.4096 4184.7985 3106.2485 4185.6216 3105.4316 C 4186.1325 3104.9245 4186.5505 3104.4636 4186.5505 3104.4076 C 4186.5505 3104.2176 4186.1916 3104.3016 4185.8505 3104.5696 C 4185.1405 3105.1276 4184.2136 3104.7016 4184.1705 3103.7965 C 4184.1665 3103.6996 4184.3425 3103.4396 4184.5636 3103.2196 M 4185.7856 3114.7805 C 4186.0085 3115.2036 4186.5656 3115.4056 4187.0445 3115.2365 C 4187.6216 3115.0336 4187.7576 3114.6105 4187.7156 3113.1456 C 4187.6736 3111.6965 4187.4665 3111.3336 4186.6825 3111.3336 C 4185.8985 3111.3336 4185.6925 3111.6965 4185.6505 3113.1456 C 4185.6256 3114.0276 4185.6685 3114.5576 4185.7856 3114.7805 M 4185.7856 3098.8636 C 4186.0085 3099.2865 4186.5656 3099.4885 4187.0445 3099.3205 C 4187.6216 3099.1176 4187.7576 3098.6945 4187.7156 3097.2296 C 4187.6736 3095.7805 4187.4665 3095.4176 4186.6825 3095.4176 C 4185.8985 3095.4176 4185.6925 3095.7805 4185.6505 3097.2296 C 4185.6256 3098.1116 4185.6685 3098.6416 4185.7856 3098.8636 M 4188.9985 3114.9876 C 4189.1776 3115.1665 4189.4785 3115.3125 4189.6676 3115.3125 C 4190.4125 3115.3125 4190.6625 3114.8116 4190.6625 3113.3236 C 4190.6625 3111.8356 4190.4125 3111.3336 4189.6676 3111.3336 C 4188.9236 3111.3336 4188.6725 3111.8356 4188.6725 3113.3236 C 4188.6725 3114.5676 4188.6956 3114.6845 4188.9985 3114.9876 M 4188.9985 3099.0705 C 4189.1776 3099.2496 4189.4785 3099.3965 4189.6676 3099.3965 C 4190.4125 3099.3965 4190.6625 3098.8956 4190.6625 3097.4065 C 4190.6625 3095.9185 4190.4125 3095.4176 4189.6676 3095.4176 C 4188.9236 3095.4176 4188.6725 3095.9185 4188.6725 3097.4065 C 4188.6725 3098.6516 4188.6956 3098.7685 4188.9985 3099.0705 M 4192.9785 3109.0185 C 4193.2816 3109.3216 4193.3985 3109.3445 4194.6425 3109.3445 C 4196.1316 3109.3445 4196.6325 3109.0936 4196.6325 3108.3496 C 4196.6325 3107.6056 4196.1316 3107.3545 4194.6425 3107.3545 C 4193.1545 3107.3545 4192.6525 3107.6056 4192.6525 3108.3496 C 4192.6525 3108.5385 4192.7996 3108.8396 4192.9785 3109.0185 M 4192.9065 3106.0465 C 4193.1456 3106.3425 4193.2445 3106.3596 4194.6425 3106.3596 C 4196.2896 3106.3596 4196.6325 3106.1885 4196.6325 3105.3656 C 4196.6325 3104.5425 4196.2896 3104.3705 4194.6425 3104.3705 C 4192.9965 3104.3705 4192.6525 3104.5425 4192.6525 3105.3656 C 4192.6525 3105.5676 4192.7665 3105.8745 4192.9065 3106.0465 M 4192.9785 3103.0505 C 4193.2816 3103.3525 4193.3985 3103.3756 4194.6425 3103.3756 C 4196.1316 3103.3756 4196.6325 3103.1245 4196.6325 3102.3805 C 4196.6325 3101.6365 4196.1316 3101.3865 4194.6425 3101.3865 C 4193.1545 3101.3865 4192.6525 3101.6365 4192.6525 3102.3805 C 4192.6525 3102.5696 4192.7996 3102.8705 4192.9785 3103.0505\",\"stroke\":\"none\",\"id\":\"gge747\"}}]}#@$SVGNODE~{\"gId\":\"gge748\",\"nodeName\":\"g\",\"nodeType\":1,\"layerid\":\"3\",\"attrs\":{\"layerid\":\"3\",\"c_partid\":\"part_svg\",\"c_shapetype\":\"group\",\"layer_front\":\"0\",\"layer_show\":\"1\",\"locked\":\"1\",\"id\":\"gge748\"},\"childNodes\":[{\"gId\":\"gge749\",\"nodeName\":\"path\",\"nodeType\":1,\"attrs\":{\"d\":\"M 4213.6965 3103.4805 L 4216.504 3103.4805 L 4216.504 3094.458 L 4216.504 3085.4355 L 4213.6965 3085.4355 L 4210.8889 3085.4355 L 4210.8889 3094.458 L 4210.8889 3103.4805 L 4213.6965 3103.4805 M 4213.6965 3125.4355 C 4215.816 3125.4355 4216.153 3125.3621 4216.153 3124.9012 C 4216.153 3124.4594 4215.9105 3124.3868 4214.7493 3124.4817 C 4212.9792 3124.6264 4212.9792 3124.2853 4214.7493 3122.9148 C 4216.9124 3121.2402 4216.683 3120.7739 4213.6965 3120.7739 C 4210.7974 3120.7739 4209.9124 3121.7042 4212.64 3121.8844 L 4214.0402 3121.9769 L 4212.6572 3123.18 C 4210.5327 3125.028 4210.7206 3125.4355 4213.6965 3125.4355 M 4211.7416 3118.7001 C 4212.8655 3120.9125 4216.153 3119.8098 4216.153 3117.2203 C 4216.153 3116.1112 4214.8754 3114.9092 4213.6965 3114.9092 C 4211.738 3114.9092 4210.7698 3116.7868 4211.7416 3118.7001 M 4213.6965 3113.8565 L 4216.153 3113.8565 L 4216.1479 3112.3529 C 4216.1398 3110.03 4215.5818 3109.3452 4213.6965 3109.3452 C 4211.8112 3109.3452 4211.253 3110.03 4211.245 3112.3529 L 4211.2398 3113.8565 L 4213.6965 3113.8565 M 4213.6965 3108.2928 L 4216.153 3108.2928 L 4216.153 3106.1874 C 4216.153 3104.9843 4216.0026 3104.0821 4215.8021 3104.0821 C 4215.6091 3104.0821 4215.4512 3104.7588 4215.4512 3105.5859 C 4215.4512 3106.9893 4215.3926 3107.0897 4214.5738 3107.0897 C 4213.8051 3107.0897 4213.6965 3106.9594 4213.6965 3106.037 C 4213.6965 3105.458 4213.5385 3104.9843 4213.3456 3104.9843 C 4213.1525 3104.9843 4212.9945 3105.458 4212.9945 3106.037 C 4212.9945 3106.7722 4212.8358 3107.0897 4212.4681 3107.0897 C 4212.0704 3107.0897 4211.9417 3106.722 4211.9417 3105.5859 C 4211.9417 3104.7588 4211.7839 3104.0821 4211.5908 3104.0821 C 4211.3902 3104.0821 4211.2398 3104.9843 4211.2398 3106.1874 L 4211.2398 3108.2928 L 4213.6965 3108.2928 M 4212.5516 3100.6499 L 4213.8636 3100.1138 L 4212.8148 3099.629 C 4212.2382 3099.3624 4211.6478 3099.1724 4211.503 3099.2072 C 4211.3583 3099.2418 4211.2398 3098.7626 4211.2398 3098.1424 L 4211.2398 3097.0145 L 4213.6965 3097.0145 L 4216.153 3097.0145 L 4216.153 3097.9397 C 4216.153 3098.8077 4216.0823 3098.8578 4215.0125 3098.7459 L 4213.872 3098.6266 L 4215.0125 3099.2786 C 4216.431 3100.0897 4216.431 3100.2552 4215.0125 3101.066 L 4213.872 3101.718 L 4215.0125 3101.5988 C 4216.0402 3101.4914 4216.153 3101.5562 4216.153 3102.2546 C 4216.153 3103.0136 4216.1024 3103.0296 4213.6965 3103.0296 L 4211.2398 3103.0296 L 4211.2398 3102.1077 C 4211.2398 3101.3393 4211.458 3101.0969 4212.5516 3100.6499 M 4211.6052 3092.1699 C 4211.936 3091.4243 4212.0223 3091.3907 4212.5172 3091.8148 C 4213.0121 3092.2389 4213.0061 3092.3589 4212.4531 3093.0821 C 4211.5811 3094.2227 4212.202 3095.3603 4213.6965 3095.3603 C 4215.1818 3095.3603 4215.8121 3094.2232 4214.951 3093.0969 C 4214.4659 3092.4625 4214.4349 3092.2264 4214.7885 3091.8612 C 4215.4234 3091.2057 4216.1246 3092.4059 4216.1407 3094.1757 C 4216.1557 3095.8427 4215.2272 3096.8641 4213.6965 3096.8641 C 4211.6068 3096.8641 4210.5626 3094.5202 4211.6052 3092.1699 M 4213.0406 3089.4956 C 4215.1108 3089.4956 4215.9577 3088.8773 4215.1002 3087.992 C 4214.7401 3087.6201 4214.1786 3087.5164 4212.9271 3087.5908 C 4211.3297 3087.6858 4211.2394 3087.6508 4211.2391 3086.9393 C 4211.2389 3086.13 4214.6413 3085.9521 4215.7144 3086.7051 C 4216.3734 3087.1675 4216.2724 3089.9369 4215.5723 3090.5997 C 4214.5259 3091.5907 4211.2401 3091.3805 4211.2393 3090.3227 C 4211.2387 3089.5277 4211.3086 3089.4956 4213.0406 3089.4956 M 4212.4932 3116.2841 C 4213.6058 3115.3306 4215.4512 3116.0435 4215.4512 3117.4268 C 4215.4512 3118.3147 4214.8154 3118.8189 4213.6965 3118.8189 C 4212.0328 3118.8189 4211.3107 3117.2976 4212.4932 3116.2841 M 4212.3629 3110.458 C 4213.5589 3109.4331 4215.4512 3110.2624 4215.4512 3111.8115 C 4215.4512 3112.8019 4215.4477 3112.804 4213.6965 3112.804 C 4211.8557 3112.804 4211.1252 3111.5188 4212.3629 3110.458\",\"stroke\":\"none\",\"id\":\"gge749\"}}]}#@$TRACK~1~3~~4248.5686 3120.2 4228.8686 3120.2 4228.8686 3091 4248.5686 3091~gge750~1#@$TRACK~1~3~~4246.0686 3120.1 4246.0686 3091.1~gge751~1#@$TRACK~1~3~~4228.8686 3118.6 4228.8686 3120.2 4234.9686 3120.2~gge752~1#@$TRACK~1~3~~4228.8686 3093 4228.8686 3091 4235.3686 3091~gge753~1#@$TRACK~1~3~~4244.7686 3120.2 4248.3686 3120.2~gge754~1#@$TRACK~1~3~~4244.7686 3091 4248.3686 3091~gge755~1#@$TRACK~1~3~~4248.7686 3118.6 4248.6316 3119.214~gge756~1#@$TRACK~1~3~~4248.6316 3119.214 4248.6686 3120.2~gge757~1#@$TRACK~1~3~~4248.5686 3091 4248.6316 3092.014~gge758~1#@$TRACK~1~3~~4248.6316 3092.014 4248.6686 3092.5~gge759~1#@$TRACK~1~3~~4250.1316 3117.214 4250.1316 3094.014~gge760~1#@$TRACK~1~3~~4250.9316 3117.214 4250.9316 3094.014~gge761~1#@$TRACK~1~3~~4249.4316 3117.814 4249.5316 3117.814~gge762~1#@$TRACK~1~3~~4249.5316 3117.814 4250.3316 3117.814~gge763~1#@$TRACK~1~3~~4249.4316 3093.414 4249.5316 3093.414~gge764~1#@$TRACK~1~3~~4249.5316 3093.414 4250.3316 3093.414~gge765~1#@$TRACK~1~3~~4248.6686 3120.1 4250.3686 3121.1~gge766~1#@$TRACK~1~3~~4250.4686 3121.2 4250.9316 3120.414~gge767~1#@$TRACK~1~3~~4250.9316 3120.414 4249.1316 3119.314~gge768~1#@$TRACK~1~3~~4248.6686 3091.1 4250.3686 3090.1~gge769~1#@$TRACK~1~3~~4250.4686 3090.1 4250.9316 3090.814~gge770~1#@$TRACK~1~3~~4250.9316 3090.814 4249.2316 3091.914~gge771~1#@$ARC~1~3~~M 4248.6686 3119.5 A 2.0436 2.0436 0 0 1 4249.2786 3117.75~~gge772~1#@$ARC~1~3~~M 4249.4586 3117.75 A 0.591 0.591 0 0 0 4250.0286 3117.15~~gge773~1#@$ARC~1~3~~M 4250.2686 3117.75 A 0.591 0.591 0 0 0 4250.8786 3117.15~~gge774~1#@$ARC~1~3~~M 4250.8786 3093.94 A 0.591 0.591 0 0 0 4250.2686 3093.34~~gge775~1#@$ARC~1~3~~M 4250.0286 3093.94 A 0.591 0.591 0 0 0 4249.4586 3093.34~~gge776~1#@$ARC~1~3~~M 4249.2786 3093.34 A 1.6548 1.6548 0 0 1 4248.6686 3091.8~~gge777~1#@$ARC~1~3~~M 4249.0686 3119.26 A 0.6167 0.6167 0 0 0 4248.6686 3119.1~~gge778~1#@$ARC~1~3~~M 4249.0886 3091.81 A 0.6165 0.6165 0 0 1 4248.6686 3091.9~~gge779~1#@$CIRCLE~4236.169~3130.9~0.5~1~3~gge780~1~~#@$CIRCLE~4235.169~3129.9~0.5~1~3~gge781~1~~#@$CIRCLE~4235.669~3130.4~1~1~3~gge782~1~~#@$CIRCLE~4235.669~3130.4~2~1~3~gge783~1~~#@$CIRCLE~4235.669~3130.4~3~1~3~gge784~1~~#@$TRACK~1~3~~4228.6686 3133.4 4226.6686 3133.4 4226.6686 3127.4 4228.4 3127.4~gge785~1#@$TRACK~1~3~~4242.6686 3135.4 4242.6686 3125.4 4228.6686 3125.4 4228.6686 3135.4 4242.6686 3135.4 4242.6686 3133.4 4244.6686 3133.4 4244.6686 3127.4 4242.6686 3127.4~gge786~1#@$CIRCLE~4236.169~3081.5~0.5~1~3~gge787~1~~#@$CIRCLE~4235.169~3080.5~0.5~1~3~gge788~1~~#@$CIRCLE~4235.669~3081~1~1~3~gge789~1~~#@$CIRCLE~4235.669~3081~2~1~3~gge790~1~~#@$CIRCLE~4235.669~3081~3~1~3~gge791~1~~#@$TRACK~1~3~~4228.6686 3084 4226.6686 3084 4226.6686 3078 4228.3 3078~gge792~1#@$TRACK~1~3~~4242.6686 3086 4242.6686 3076 4228.6686 3076 4228.6686 3086 4242.6686 3086 4242.6686 3084 4244.6686 3084 4244.6686 3078 4242.6686 3078~gge793~1#@$TRACK~1~3~~4057.5197 3142.2899 4110.6697 3142.2899 4157.9097 3142.2899~gge794~1#@$TRACK~1~3~~4157.9097 3142.2899 4157.9097 3071.4199~gge795~1#@$TRACK~1~3~~4057.5197 3142.2899 4057.5197 3071.4199~gge796~1#@$TRACK~1~3~~4057.5197 3071.4199 4157.9097 3071.4199~gge797~1#@$TRACK~1~3~~4081.1397 3142.2899 4081.1397 3079.2999 4081.1397 3071.4199~gge798~1#@$TRACK~1.18~3~S$140~4079.1197 3077.0999 4060.9197 3077.0999 4060.9197 3098.4999 4071.1197 3098.4999 4071.1197 3108.6999 4060.9197 3108.6999 4060.9197 3118.6999 4071.1197 3118.6999 4071.1197 3128.1999 4060.9197 3128.1999 4060.9197 3136.1999 4079.1197 3136.1999~gge799~1#@$TRACK~1.18~3~S$142~4079.4197 3087.5999 4060.9697 3087.5999~gge800~1#@$TRACK~1~3~~4091.1197 3136.4999 4151.1197 3136.4999 4151.1197 3076.4999 4091.1197 3076.4999 4091.1197 3136.4999~gge801~1#@$TRACK~1~3~~4056.1001 3152.5629 4056.1001 3060.4371~gge802~1#@$TRACK~1~3~~4060.0371 3056.5001 4242.1628 3056.5001~gge803~1#@$TRACK~1~3~~4246.0998 3060.4371 4246.0998 3152.5629~gge804~1#@$TRACK~1~3~~4242.1628 3156.4999 4060.0371 3156.4999~gge805~1#@$ARC~1~3~~M 4056.1001 3060.4371 A 3.937 3.937 0 0 1 4060.0371 3056.5001~~gge806~1#@$ARC~1~3~~M 4242.1628 3056.5001 A 3.937 3.937 0 0 1 4246.0998 3060.4371~~gge807~1#@$ARC~1~3~~M 4246.0998 3152.5629 A 3.937 3.937 0 0 1 4242.1628 3156.4999~~gge808~1#@$ARC~1~3~~M 4060.0371 3156.4999 A 3.937 3.937 0 0 1 4056.1001 3152.5629~~gge809~1#@$TEXT~L~4140.6~3130.3~0.6~90~0~3~~4~ESP-WROOM-32~M 4138.4199 3130.2999 L 4142.2399 3130.2999 M 4138.4199 3130.2999 L 4138.4199 3127.9399 M 4140.2399 3130.2999 L 4140.2399 3128.8499 M 4142.2399 3130.2999 L 4142.2399 3127.9399 M 4138.9599 3124.1899 L 4138.5999 3124.5499 L 4138.4199 3125.0999 L 4138.4199 3125.8299 L 4138.5999 3126.3699 L 4138.9599 3126.7399 L 4139.3299 3126.7399 L 4139.6899 3126.5499 L 4139.8699 3126.3699 L 4140.0499 3126.0099 L 4140.4199 3124.9199 L 4140.5999 3124.5499 L 4140.7799 3124.3699 L 4141.1499 3124.1899 L 4141.6899 3124.1899 L 4142.0499 3124.5499 L 4142.2399 3125.0999 L 4142.2399 3125.8299 L 4142.0499 3126.3699 L 4141.6899 3126.7399 M 4138.4199 3122.9899 L 4142.2399 3122.9899 M 4138.4199 3122.9899 L 4138.4199 3121.3499 L 4138.5999 3120.8099 L 4138.7799 3120.6299 L 4139.1499 3120.4499 L 4139.6899 3120.4499 L 4140.0499 3120.6299 L 4140.2399 3120.8099 L 4140.4199 3121.3499 L 4140.4199 3122.9899 M 4140.5999 3119.2499 L 4140.5999 3115.9699 M 4138.4199 3114.7699 L 4142.2399 3113.8599 M 4138.4199 3112.9499 L 4142.2399 3113.8599 M 4138.4199 3112.9499 L 4142.2399 3112.0499 M 4138.4199 3111.1399 L 4142.2399 3112.0499 M 4138.4199 3109.9399 L 4142.2399 3109.9399 M 4138.4199 3109.9399 L 4138.4199 3108.2999 L 4138.5999 3107.7499 L 4138.7799 3107.5699 L 4139.1499 3107.3899 L 4139.5099 3107.3899 L 4139.8699 3107.5699 L 4140.0499 3107.7499 L 4140.2399 3108.2999 L 4140.2399 3109.9399 M 4140.2399 3108.6599 L 4142.2399 3107.3899 M 4138.4199 3105.0999 L 4138.5999 3105.4599 L 4138.9599 3105.8299 L 4139.3299 3106.0099 L 4139.8699 3106.1899 L 4140.7799 3106.1899 L 4141.3299 3106.0099 L 4141.6899 3105.8299 L 4142.0499 3105.4599 L 4142.2399 3105.0999 L 4142.2399 3104.3699 L 4142.0499 3104.0099 L 4141.6899 3103.6499 L 4141.3299 3103.4599 L 4140.7799 3103.2799 L 4139.8699 3103.2799 L 4139.3299 3103.4599 L 4138.9599 3103.6499 L 4138.5999 3104.0099 L 4138.4199 3104.3699 L 4138.4199 3105.0999 M 4138.4199 3100.9899 L 4138.5999 3101.3499 L 4138.9599 3101.7199 L 4139.3299 3101.8999 L 4139.8699 3102.0799 L 4140.7799 3102.0799 L 4141.3299 3101.8999 L 4141.6899 3101.7199 L 4142.0499 3101.3499 L 4142.2399 3100.9899 L 4142.2399 3100.2599 L 4142.0499 3099.8999 L 4141.6899 3099.5399 L 4141.3299 3099.3499 L 4140.7799 3099.1699 L 4139.8699 3099.1699 L 4139.3299 3099.3499 L 4138.9599 3099.5399 L 4138.5999 3099.8999 L 4138.4199 3100.2599 L 4138.4199 3100.9899 M 4138.4199 3097.9699 L 4142.2399 3097.9699 M 4138.4199 3097.9699 L 4142.2399 3096.5199 M 4138.4199 3095.0599 L 4142.2399 3096.5199 M 4138.4199 3095.0599 L 4142.2399 3095.0599 M 4140.5999 3093.8599 L 4140.5999 3090.5899 M 4138.4199 3089.0299 L 4138.4199 3087.0299 L 4139.8699 3088.1199 L 4139.8699 3087.5699 L 4140.0499 3087.2099 L 4140.2399 3087.0299 L 4140.7799 3086.8499 L 4141.1499 3086.8499 L 4141.6899 3087.0299 L 4142.0499 3087.3899 L 4142.2399 3087.9399 L 4142.2399 3088.4799 L 4142.0499 3089.0299 L 4141.8699 3089.2099 L 4141.5099 3089.3899 M 4139.3299 3085.4599 L 4139.1499 3085.4599 L 4138.7799 3085.2799 L 4138.5999 3085.0999 L 4138.4199 3084.7399 L 4138.4199 3084.0099 L 4138.5999 3083.6499 L 4138.7799 3083.4599 L 4139.1499 3083.2799 L 4139.5099 3083.2799 L 4139.8699 3083.4599 L 4140.4199 3083.8299 L 4142.2399 3085.6499 L 4142.2399 3083.0999~~gge810~~1~#@$TEXT~L~4231.48~3067.63~0.5~180~0~3~~3~Designed by Jobson~M 4231.48 3069.27 L 4231.48 3066.4 M 4231.48 3069.27 L 4230.53 3069.27 L 4230.12 3069.13 L 4229.84 3068.86 L 4229.71 3068.58 L 4229.57 3068.18 L 4229.57 3067.49 L 4229.71 3067.08 L 4229.84 3066.81 L 4230.12 3066.54 L 4230.53 3066.4 L 4231.48 3066.4 M 4228.67 3067.49 L 4227.03 3067.49 L 4227.03 3067.77 L 4227.17 3068.04 L 4227.31 3068.18 L 4227.58 3068.31 L 4227.99 3068.31 L 4228.26 3068.18 L 4228.53 3067.9 L 4228.67 3067.49 L 4228.67 3067.22 L 4228.53 3066.81 L 4228.26 3066.54 L 4227.99 3066.4 L 4227.58 3066.4 L 4227.31 3066.54 L 4227.03 3066.81 M 4224.63 3067.9 L 4224.77 3068.18 L 4225.18 3068.31 L 4225.59 3068.31 L 4226 3068.18 L 4226.13 3067.9 L 4226 3067.63 L 4225.73 3067.49 L 4225.04 3067.36 L 4224.77 3067.22 L 4224.63 3066.95 L 4224.63 3066.81 L 4224.77 3066.54 L 4225.18 3066.4 L 4225.59 3066.4 L 4226 3066.54 L 4226.13 3066.81 M 4223.73 3069.27 L 4223.6 3069.13 L 4223.46 3069.27 L 4223.6 3069.4 L 4223.73 3069.27 M 4223.6 3068.31 L 4223.6 3066.4 M 4220.93 3068.31 L 4220.93 3066.13 L 4221.06 3065.72 L 4221.2 3065.58 L 4221.47 3065.45 L 4221.88 3065.45 L 4222.15 3065.58 M 4220.93 3067.9 L 4221.2 3068.18 L 4221.47 3068.31 L 4221.88 3068.31 L 4222.15 3068.18 L 4222.43 3067.9 L 4222.56 3067.49 L 4222.56 3067.22 L 4222.43 3066.81 L 4222.15 3066.54 L 4221.88 3066.4 L 4221.47 3066.4 L 4221.2 3066.54 L 4220.93 3066.81 M 4220.03 3068.31 L 4220.03 3066.4 M 4220.03 3067.77 L 4219.62 3068.18 L 4219.34 3068.31 L 4218.93 3068.31 L 4218.66 3068.18 L 4218.53 3067.77 L 4218.53 3066.4 M 4217.63 3067.49 L 4215.99 3067.49 L 4215.99 3067.77 L 4216.13 3068.04 L 4216.26 3068.18 L 4216.53 3068.31 L 4216.94 3068.31 L 4217.22 3068.18 L 4217.49 3067.9 L 4217.63 3067.49 L 4217.63 3067.22 L 4217.49 3066.81 L 4217.22 3066.54 L 4216.94 3066.4 L 4216.53 3066.4 L 4216.26 3066.54 L 4215.99 3066.81 M 4213.45 3069.27 L 4213.45 3066.4 M 4213.45 3067.9 L 4213.73 3068.18 L 4214 3068.31 L 4214.41 3068.31 L 4214.68 3068.18 L 4214.95 3067.9 L 4215.09 3067.49 L 4215.09 3067.22 L 4214.95 3066.81 L 4214.68 3066.54 L 4214.41 3066.4 L 4214 3066.4 L 4213.73 3066.54 L 4213.45 3066.81 M 4210.45 3069.27 L 4210.45 3066.4 M 4210.45 3067.9 L 4210.18 3068.18 L 4209.91 3068.31 L 4209.5 3068.31 L 4209.23 3068.18 L 4208.95 3067.9 L 4208.82 3067.49 L 4208.82 3067.22 L 4208.95 3066.81 L 4209.23 3066.54 L 4209.5 3066.4 L 4209.91 3066.4 L 4210.18 3066.54 L 4210.45 3066.81 M 4207.78 3068.31 L 4206.96 3066.4 M 4206.14 3068.31 L 4206.96 3066.4 L 4207.23 3065.86 L 4207.51 3065.58 L 4207.78 3065.45 L 4207.92 3065.45 M 4201.78 3069.27 L 4201.78 3067.08 L 4201.92 3066.68 L 4202.05 3066.54 L 4202.33 3066.4 L 4202.6 3066.4 L 4202.87 3066.54 L 4203.01 3066.68 L 4203.14 3067.08 L 4203.14 3067.36 M 4200.2 3068.31 L 4200.47 3068.18 L 4200.74 3067.9 L 4200.88 3067.49 L 4200.88 3067.22 L 4200.74 3066.81 L 4200.47 3066.54 L 4200.2 3066.4 L 4199.79 3066.4 L 4199.52 3066.54 L 4199.24 3066.81 L 4199.11 3067.22 L 4199.11 3067.49 L 4199.24 3067.9 L 4199.52 3068.18 L 4199.79 3068.31 L 4200.2 3068.31 M 4198.21 3069.27 L 4198.21 3066.4 M 4198.21 3067.9 L 4197.93 3068.18 L 4197.66 3068.31 L 4197.25 3068.31 L 4196.98 3068.18 L 4196.71 3067.9 L 4196.57 3067.49 L 4196.57 3067.22 L 4196.71 3066.81 L 4196.98 3066.54 L 4197.25 3066.4 L 4197.66 3066.4 L 4197.93 3066.54 L 4198.21 3066.81 M 4194.17 3067.9 L 4194.31 3068.18 L 4194.72 3068.31 L 4195.13 3068.31 L 4195.53 3068.18 L 4195.67 3067.9 L 4195.53 3067.63 L 4195.26 3067.49 L 4194.58 3067.36 L 4194.31 3067.22 L 4194.17 3066.95 L 4194.17 3066.81 L 4194.31 3066.54 L 4194.72 3066.4 L 4195.13 3066.4 L 4195.53 3066.54 L 4195.67 3066.81 M 4192.59 3068.31 L 4192.86 3068.18 L 4193.13 3067.9 L 4193.27 3067.49 L 4193.27 3067.22 L 4193.13 3066.81 L 4192.86 3066.54 L 4192.59 3066.4 L 4192.18 3066.4 L 4191.91 3066.54 L 4191.63 3066.81 L 4191.5 3067.22 L 4191.5 3067.49 L 4191.63 3067.9 L 4191.91 3068.18 L 4192.18 3068.31 L 4192.59 3068.31 M 4190.6 3068.31 L 4190.6 3066.4 M 4190.6 3067.77 L 4190.19 3068.18 L 4189.92 3068.31 L 4189.51 3068.31 L 4189.23 3068.18 L 4189.1 3067.77 L 4189.1 3066.4~~gge812~~1~#@$PAD~ELLIPSE~4061~3151.5~6~6~11~U1_19~19~1.8~~90~gge814~0~~Y~1~0~0.4~4061,3151.5#@$PAD~ELLIPSE~4071~3151.5~6~6~11~U1_18~18~1.8~~90~gge819~0~~Y~1~0~0.4~4071,3151.5#@$PAD~ELLIPSE~4081~3151.5~6~6~11~U1_17~17~1.8~~90~gge824~0~~Y~1~0~0.4~4081,3151.5#@$PAD~ELLIPSE~4091~3151.5~6~6~11~U1_16~16~1.8~~90~gge829~0~~Y~1~0~0.4~4091,3151.5#@$PAD~ELLIPSE~4101~3151.5~6~6~11~U1_15~15~1.8~~90~gge834~0~~Y~1~0~0.4~4101,3151.5#@$PAD~ELLIPSE~4111~3151.5~6~6~11~U1_14~14~1.8~~90~gge839~0~~Y~1~0~0.4~4111,3151.5#@$PAD~ELLIPSE~4121~3151.5~6~6~11~U1_13~13~1.8~~90~gge844~0~~Y~1~0~0.4~4121,3151.5#@$PAD~ELLIPSE~4131~3151.5~6~6~11~U1_12~12~1.8~~90~gge849~0~~Y~1~0~0.4~4131,3151.5#@$PAD~ELLIPSE~4141~3151.5~6~6~11~U1_11~11~1.8~~90~gge854~0~~Y~1~0~0.4~4141,3151.5#@$PAD~ELLIPSE~4151~3151.5~6~6~11~U1_10~10~1.8~~90~gge859~0~~Y~1~0~0.4~4151,3151.5#@$PAD~ELLIPSE~4161~3151.5~6~6~11~U1_9~9~1.8~~90~gge864~0~~Y~1~0~0.4~4161,3151.5#@$PAD~ELLIPSE~4171~3151.5~6~6~11~U1_8~8~1.8~~90~gge869~0~~Y~1~0~0.4~4171,3151.5#@$PAD~ELLIPSE~4181~3151.5~6~6~11~U1_7~7~1.8~~90~gge874~0~~Y~1~0~0.4~4181,3151.5#@$PAD~ELLIPSE~4191~3151.5~6~6~11~U1_6~6~1.8~~90~gge879~0~~Y~1~0~0.4~4191,3151.5#@$PAD~ELLIPSE~4201~3151.5~6~6~11~U1_5~5~1.8~~90~gge884~0~~Y~1~0~0.4~4201,3151.5#@$PAD~ELLIPSE~4211~3151.5~6~6~11~U1_4~4~1.8~~90~gge889~0~~Y~1~0~0.4~4211,3151.5#@$PAD~ELLIPSE~4221~3151.5~6~6~11~U1_3~3~1.8~~90~gge894~0~~Y~1~0~0.4~4221,3151.5#@$PAD~ELLIPSE~4231~3151.5~6~6~11~U1_2~2~1.8~~90~gge899~0~~Y~1~0~0.4~4231,3151.5#@$PAD~ELLIPSE~4241~3151.5~6~6~11~U1_1~1~1.8~~90~gge904~0~~Y~1~0~0.4~4241,3151.5#@$PAD~ELLIPSE~4241~3061.5~6~6~11~U1_20~20~1.8~~90~gge909~0~~Y~1~0~0.4~4241,3061.5#@$PAD~ELLIPSE~4231~3061.5~6~6~11~U1_21~21~1.8~~90~gge914~0~~Y~1~0~0.4~4231,3061.5#@$PAD~ELLIPSE~4221~3061.5~6~6~11~U1_22~22~1.8~~90~gge919~0~~Y~1~0~0.4~4221,3061.5#@$PAD~ELLIPSE~4211~3061.5~6~6~11~U1_23~23~1.8~~90~gge924~0~~Y~1~0~0.4~4211,3061.5#@$PAD~ELLIPSE~4201~3061.5~6~6~11~U1_24~24~1.8~~90~gge929~0~~Y~1~0~0.4~4201,3061.5#@$PAD~ELLIPSE~4191~3061.5~6~6~11~U1_25~25~1.8~~90~gge934~0~~Y~1~0~0.4~4191,3061.5#@$PAD~ELLIPSE~4181~3061.5~6~6~11~U1_26~26~1.8~~90~gge939~0~~Y~1~0~0.4~4181,3061.5#@$PAD~ELLIPSE~4171~3061.5~6~6~11~U1_27~27~1.8~~90~gge944~0~~Y~1~0~0.4~4171,3061.5#@$PAD~ELLIPSE~4161~3061.5~6~6~11~U1_28~28~1.8~~90~gge949~0~~Y~1~0~0.4~4161,3061.5#@$PAD~ELLIPSE~4151~3061.5~6~6~11~U1_29~29~1.8~~90~gge954~0~~Y~1~0~0.4~4151,3061.5#@$PAD~ELLIPSE~4141~3061.5~6~6~11~U1_30~30~1.8~~90~gge959~0~~Y~1~0~0.4~4141,3061.5#@$PAD~ELLIPSE~4131~3061.5~6~6~11~U1_31~31~1.8~~90~gge964~0~~Y~1~0~0.4~4131,3061.5#@$PAD~ELLIPSE~4121~3061.5~6~6~11~U1_32~32~1.8~~90~gge969~0~~Y~1~0~0.4~4121,3061.5#@$PAD~ELLIPSE~4111~3061.5~6~6~11~U1_33~33~1.8~~90~gge974~0~~Y~1~0~0.4~4111,3061.5#@$PAD~ELLIPSE~4101~3061.5~6~6~11~U1_34~34~1.8~~90~gge979~0~~Y~1~0~0.4~4101,3061.5#@$PAD~ELLIPSE~4091~3061.5~6~6~11~U1_35~35~1.8~~90~gge984~0~~Y~1~0~0.4~4091,3061.5#@$PAD~ELLIPSE~4081~3061.5~6~6~11~U1_36~36~1.8~~90~gge989~0~~Y~1~0~0.4~4081,3061.5#@$PAD~ELLIPSE~4071~3061.5~6~6~11~U1_37~37~1.8~~90~gge994~0~~Y~1~0~0.4~4071,3061.5#@$PAD~ELLIPSE~4061~3061.5~6~6~11~U1_38~38~1.8~~90~gge999~0~~Y~1~0~0.4~4061,3061.5", 20 | "LIB~4095~3025.5~package`MICROSD`~270~~gge1131~1~b49482374f794cea9ffc97788e7e5ee6~1541674784~0~2f1f968141153f38#@$TEXT~N~4138.3001~3049.2099~0.6~90~~3~~4.5~MicroSD~M 4133.7601 3049.2099 L 4138.0501 3049.2099 M 4133.7601 3049.2099 L 4138.0501 3047.5699 M 4133.7601 3045.9399 L 4138.0501 3047.5699 M 4133.7601 3045.9399 L 4138.0501 3045.9399 M 4133.7601 3044.5899 L 4133.9601 3044.3799 L 4133.7601 3044.1799 L 4133.5501 3044.3799 L 4133.7601 3044.5899 M 4135.1901 3044.3799 L 4138.0501 3044.3799 M 4135.8001 3040.3699 L 4135.4001 3040.7799 L 4135.1901 3041.1899 L 4135.1901 3041.8099 L 4135.4001 3042.2099 L 4135.8001 3042.6199 L 4136.4201 3042.8299 L 4136.8301 3042.8299 L 4137.4401 3042.6199 L 4137.8501 3042.2099 L 4138.0501 3041.8099 L 4138.0501 3041.1899 L 4137.8501 3040.7799 L 4137.4401 3040.3699 M 4135.1901 3039.0199 L 4138.0501 3039.0199 M 4136.4201 3039.0199 L 4135.8001 3038.8199 L 4135.4001 3038.4099 L 4135.1901 3037.9999 L 4135.1901 3037.3899 M 4135.1901 3035.0099 L 4135.4001 3035.4199 L 4135.8001 3035.8299 L 4136.4201 3036.0399 L 4136.8301 3036.0399 L 4137.4401 3035.8299 L 4137.8501 3035.4199 L 4138.0501 3035.0099 L 4138.0501 3034.3999 L 4137.8501 3033.9899 L 4137.4401 3033.5799 L 4136.8301 3033.3799 L 4136.4201 3033.3799 L 4135.8001 3033.5799 L 4135.4001 3033.9899 L 4135.1901 3034.3999 L 4135.1901 3035.0099 M 4134.3701 3029.1599 L 4133.9601 3029.5699 L 4133.7601 3030.1899 L 4133.7601 3031.0099 L 4133.9601 3031.6199 L 4134.3701 3032.0299 L 4134.7801 3032.0299 L 4135.1901 3031.8199 L 4135.4001 3031.6199 L 4135.6001 3031.2099 L 4136.0101 3029.9799 L 4136.2101 3029.5699 L 4136.4201 3029.3699 L 4136.8301 3029.1599 L 4137.4401 3029.1599 L 4137.8501 3029.5699 L 4138.0501 3030.1899 L 4138.0501 3031.0099 L 4137.8501 3031.6199 L 4137.4401 3032.0299 M 4133.7601 3027.8099 L 4138.0501 3027.8099 M 4133.7601 3027.8099 L 4133.7601 3026.3799 L 4133.9601 3025.7699 L 4134.3701 3025.3599 L 4134.7801 3025.1599 L 4135.4001 3024.9499 L 4136.4201 3024.9499 L 4137.0301 3025.1599 L 4137.4401 3025.3599 L 4137.8501 3025.7699 L 4138.0501 3026.3799 L 4138.0501 3027.8099~none~gge1132~~0~#@$TEXT~P~4126.3~3024.95~0.6~270~~3~~4.5~P1~M 4130.84 3024.95 L 4126.55 3024.95 M 4130.84 3024.95 L 4130.84 3026.79 L 4130.64 3027.4 L 4130.43 3027.61 L 4130.02 3027.81 L 4129.41 3027.81 L 4129 3027.61 L 4128.8 3027.4 L 4128.59 3026.79 L 4128.59 3024.95 M 4130.02 3029.16 L 4130.23 3029.57 L 4130.84 3030.19 L 4126.55 3030.19~~gge1134~~0~#@$TRACK~1~3~~4064.7 3049.15 4064.7 3053.05~gge1136~0#@$TRACK~1~3~~4064.7 3053.05 4124.1 3053.05~gge1137~0#@$TRACK~1~3~~4124.1 3053.05 4124.1 2997.95~gge1138~0#@$TRACK~1~3~~4124.1 2997.95 4067.4 2997.95~gge1139~0#@$TRACK~1~3~~4067.4 2997.95 4067.4 3001.85~gge1140~0#@$TRACK~1~3~~4071 3004.65 4071 3042.85~gge1141~0#@$TRACK~1~3~~4061.7 3004.25 4061.7 3040.45~gge1142~0#@$TRACK~1~3~~4058.2 3004.25 4058.2 3040.45~gge1143~0#@$TRACK~1~3~~4043.2 3004.25 4043.2 3040.45~gge1144~0#@$ARC~1~3~~M 4067.4497 3001.887 A 3.1741 3.1741 0 0 1 4070.993 3004.6429~~gge1145~0#@$ARC~1~3~~M 4070.993 3042.8318 A 6.2992 6.2992 0 0 1 4064.6938 3049.131~~gge1146~0#@$ARC~1~3~~M 4066.4261 2999.5248 A 4.7244 4.7244 0 0 0 4061.7017 3004.2492~~gge1147~0#@$ARC~1~3~~M 4061.7017 3040.4696 A 4.7408 4.7408 0 0 0 4066.0324 3045.5877~~gge1148~0#@$ARC~1~3~~M 4062.8828 2999.5248 A 4.7244 4.7244 0 0 0 4058.1584 3004.2492~~gge1149~0#@$ARC~1~3~~M 4058.1584 3040.4696 A 4.7408 4.7408 0 0 0 4062.4891 3045.5877~~gge1150~0#@$ARC~1~3~~M 4047.9222 2999.5248 A 4.7244 4.7244 0 0 0 4043.1978 3004.2492~~gge1151~0#@$ARC~1~3~~M 4043.1978 3040.4696 A 4.7408 4.7408 0 0 0 4047.5285 3045.5877~~gge1152~0#@$PAD~RECT~4071~2999.55~5.51~7.48~1~~MT1~0~4074.74 2996.795 4074.74 3002.305 4067.26 3002.305 4067.26 2996.795~270~gge1153~0~~Y~0~0~0.4~4071,2999.55#@$PAD~RECT~4067.4~3051.45~5.51~7.48~1~~MT2~0~4071.14 3048.695 4071.14 3054.205 4063.66 3054.205 4063.66 3048.695~270~gge1158~0~~Y~0~0~0.4~4067.4,3051.45#@$PAD~RECT~4122.6~3005.85~5.51~7.09~1~~CD1~0~4119.845 3002.305 4125.355 3002.305 4125.355 3009.395 4119.845 3009.395~0~gge1163~0~~Y~0~0~0.4~4122.6,3005.85#@$PAD~RECT~4122.6~3029.45~5.51~7.09~1~~CD2~0~4119.845 3025.905 4125.355 3025.905 4125.355 3032.995 4119.845 3032.995~0~gge1168~0~~Y~0~0~0.4~4122.6,3029.45#@$PAD~RECT~4082.4~3003.05~2.76~5.91~1~P1_8~8~0~4085.355 3001.67 4085.355 3004.43 4079.445 3004.43 4079.445 3001.67~270~gge1173~0~~Y~0~0~0.4~4082.4,3003.05#@$PAD~RECT~4082.4~3007.35~2.76~5.91~1~P1_7~7~0~4085.355 3005.97 4085.355 3008.73 4079.445 3008.73 4079.445 3005.97~270~gge1178~0~~Y~0~0~0.4~4082.4,3007.35#@$PAD~RECT~4080.8~3011.75~2.76~5.91~1~P1_6~6~0~4083.755 3010.37 4083.755 3013.13 4077.845 3013.13 4077.845 3010.37~270~gge1183~0~~Y~0~0~0.4~4080.8,3011.75#@$PAD~RECT~4082.4~3016.05~2.76~5.91~1~P1_5~5~0~4085.355 3014.67 4085.355 3017.43 4079.445 3017.43 4079.445 3014.67~270~gge1188~0~~Y~0~0~0.4~4082.4,3016.05#@$PAD~RECT~4080.8~3020.35~2.76~5.91~1~P1_4~4~0~4083.755 3018.97 4083.755 3021.73 4077.845 3021.73 4077.845 3018.97~270~gge1193~0~~Y~0~0~0.4~4080.8,3020.35#@$PAD~RECT~4082.4~3024.75~2.76~5.91~1~P1_3~3~0~4085.355 3023.37 4085.355 3026.13 4079.445 3026.13 4079.445 3023.37~270~gge1198~0~~Y~0~0~0.4~4082.4,3024.75#@$PAD~RECT~4084~3029.05~2.76~5.91~1~P1_2~2~0~4086.955 3027.67 4086.955 3030.43 4081.045 3030.43 4081.045 3027.67~270~gge1203~0~~Y~0~0~0.4~4084,3029.05#@$PAD~RECT~4082.4~3033.35~2.76~5.91~1~P1_1~1~0~4085.355 3031.97 4085.355 3034.73 4079.445 3034.73 4079.445 3031.97~270~gge1208~0~~Y~0~0~0.4~4082.4,3033.35" 21 | ], 22 | "layers": [ 23 | "1~TopLayer~#FF0000~true~true~true~", 24 | "2~BottomLayer~#0000FF~true~false~true~", 25 | "3~TopSilkLayer~#FFCC00~true~false~true~", 26 | "4~BottomSilkLayer~#66CC33~true~false~true~", 27 | "5~TopPasteMaskLayer~#808080~true~false~true~", 28 | "6~BottomPasteMaskLayer~#800000~true~false~true~", 29 | "7~TopSolderMaskLayer~#800080~true~false~true~0.3", 30 | "8~BottomSolderMaskLayer~#AA00FF~true~false~true~0.3", 31 | "9~Ratlines~#6464FF~true~false~true~", 32 | "10~BoardOutLine~#FF00FF~true~false~true~", 33 | "11~Multi-Layer~#C0C0C0~true~false~true~", 34 | "12~Document~#FFFFFF~true~false~true~", 35 | "13~TopAssembly~#33CC99~false~false~false~", 36 | "14~BottomAssembly~#5555FF~false~false~false~", 37 | "15~Mechanical~#F022F0~false~false~false~", 38 | "19~3DModel~#66CCFF~false~false~false~", 39 | "21~Inner1~#999966~false~false~false~~", 40 | "22~Inner2~#008000~false~false~false~~", 41 | "23~Inner3~#00FF00~false~false~false~~", 42 | "24~Inner4~#BC8E00~false~false~false~~", 43 | "25~Inner5~#70DBFA~false~false~false~~", 44 | "26~Inner6~#00CC66~false~false~false~~", 45 | "27~Inner7~#9966FF~false~false~false~~", 46 | "28~Inner8~#800080~false~false~false~~", 47 | "29~Inner9~#008080~false~false~false~~", 48 | "30~Inner10~#15935F~false~false~false~~", 49 | "31~Inner11~#000080~false~false~false~~", 50 | "32~Inner12~#00B400~false~false~false~~", 51 | "33~Inner13~#2E4756~false~false~false~~", 52 | "34~Inner14~#99842F~false~false~false~~", 53 | "35~Inner15~#FFFFAA~false~false~false~~", 54 | "36~Inner16~#99842F~false~false~false~~", 55 | "37~Inner17~#2E4756~false~false~false~~", 56 | "38~Inner18~#3535FF~false~false~false~~", 57 | "39~Inner19~#8000BC~false~false~false~~", 58 | "40~Inner20~#43AE5F~false~false~false~~", 59 | "41~Inner21~#C3ECCE~false~false~false~~", 60 | "42~Inner22~#728978~false~false~false~~", 61 | "43~Inner23~#39503F~false~false~false~~", 62 | "44~Inner24~#0C715D~false~false~false~~", 63 | "45~Inner25~#5A8A80~false~false~false~~", 64 | "46~Inner26~#2B937E~false~false~false~~", 65 | "47~Inner27~#23999D~false~false~false~~", 66 | "48~Inner28~#45B4E3~false~false~false~~", 67 | "49~Inner29~#215DA1~false~false~false~~", 68 | "50~Inner30~#4564D7~false~false~false~~", 69 | "51~Inner31~#6969E9~false~false~false~~", 70 | "52~Inner32~#9069E9~false~false~false~~", 71 | "99~ComponentShapeLayer~#00CCCC~false~false~false~", 72 | "100~LeadShapeLayer~#CC9999~false~false~false~", 73 | "Hole~Hole~#222222~false~false~true~", 74 | "DRCError~DRCError~#FAD609~false~false~true~" 75 | ], 76 | "objects": [ 77 | "All~true~false", 78 | "Component~true~true", 79 | "Prefix~true~true", 80 | "Name~true~false", 81 | "Track~true~true", 82 | "Pad~true~true", 83 | "Via~true~true", 84 | "Hole~true~true", 85 | "Copper_Area~true~true", 86 | "Circle~true~true", 87 | "Arc~true~true", 88 | "Solid_Region~true~true", 89 | "Text~true~true", 90 | "Image~true~true", 91 | "Rect~true~true", 92 | "Dimension~true~true", 93 | "Protractor~true~true" 94 | ], 95 | "BBox": { 96 | "x": 4043.2, 97 | "y": 2995, 98 | "width": 207.8, 99 | "height": 189 100 | }, 101 | "preference": { 102 | "hideFootprints": "", 103 | "hideNets": "" 104 | }, 105 | "DRCRULE": { 106 | "Default": { 107 | "trackWidth": 1, 108 | "clearance": 0.6, 109 | "viaHoleDiameter": 2.4, 110 | "viaHoleD": 1.2 111 | }, 112 | "isRealtime": true, 113 | "isDrcOnRoutingOrPlaceVia": false, 114 | "checkObjectToCopperarea": true, 115 | "showDRCRangeLine": true 116 | }, 117 | "netColors": {} 118 | } --------------------------------------------------------------------------------