├── Alarm_Clockv28.ino ├── Archive └── AlarmClockv20 │ ├── Alarm_Clockv20_SAN.ino │ ├── BMP_functions.ino │ ├── DisplayMgmt.ino │ ├── Free_Fonts.h │ ├── LedMgmt.ino │ ├── README.md │ ├── SPIFFS_Support.h │ ├── alarm.h │ ├── alarmMgmt.ino │ ├── displayMgr.h │ ├── globalInclude.h │ ├── ledCtrl.h │ ├── modeMgmt.h │ ├── modeMgmt.ino │ ├── scrolling_sprites.h │ └── scrolling_sprites.ino ├── BMP_functions.ino ├── DisplayMgmt.ino ├── Free_Fonts.h ├── KiKadProject └── AlarmClock │ ├── AlarmClock-cache.lib │ ├── AlarmClock-rescue.dcm │ ├── AlarmClock-rescue.lib │ ├── AlarmClock.pretty │ ├── CP_Radial_D10.0mm_P5.00mm.kicad_mod │ ├── CP_Radial_D4.0mm_P2.00mm.kicad_mod │ ├── CP_Radial_D5.0mm_P2.00mm.kicad_mod │ ├── ESP32_DEV_BOARD.kicad_mod │ ├── LOGIC_LVL_CVTR_X4.kicad_mod │ ├── PinHeader_1x02_P2.54mm_Vertical.kicad_mod │ ├── PinHeader_2x02_P2.54mm_Vertical.kicad_mod │ ├── PinHeader_2x08_P2.54mm_Vertical.kicad_mod │ ├── PinHeader_2x08_P2.54mm_Vertical_REV.kicad_mod │ ├── PinSocket_1x06_P2.54mm_Vertical.kicad_mod │ ├── PinSocket_1x07_P2.54mm_Vertical.kicad_mod │ ├── R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal.kicad_mod │ ├── SW_PUSH_6mm.kicad_mod │ └── SW_SK22H03_2P2T_RA.kicad_mod │ ├── AlarmClock.pro │ ├── AlarmClock.sch │ ├── AlarmClock.sch-bak │ ├── CombinedBoard_gbr │ ├── CombinedBoard_gbr.zip │ ├── CombinedPnl_pcb-B_Cu.gbr │ ├── CombinedPnl_pcb-B_Mask.gbr │ ├── CombinedPnl_pcb-B_Paste.gbr │ ├── CombinedPnl_pcb-B_SilkS.gbr │ ├── CombinedPnl_pcb-Edge_Cuts.gbr │ ├── CombinedPnl_pcb-F_Cu.gbr │ ├── CombinedPnl_pcb-F_Mask.gbr │ ├── CombinedPnl_pcb-F_Paste.gbr │ ├── CombinedPnl_pcb-F_SilkS.gbr │ ├── CombinedPnl_pcb-GND.gbr │ ├── CombinedPnl_pcb-NPTH.drl │ ├── CombinedPnl_pcb-PTH.drl │ └── CombinedPnl_pcb-PWR.gbr │ ├── CombinedBoard_gbr_r1 │ ├── CombinedBoard_gbr_r1.zip │ ├── CombinedPnl_pcb-r1-B_Cu.gbr │ ├── CombinedPnl_pcb-r1-B_Mask.gbr │ ├── CombinedPnl_pcb-r1-B_Paste.gbr │ ├── CombinedPnl_pcb-r1-B_SilkS.gbr │ ├── CombinedPnl_pcb-r1-Edge_Cuts.gbr │ ├── CombinedPnl_pcb-r1-F_Cu.gbr │ ├── CombinedPnl_pcb-r1-F_Mask.gbr │ ├── CombinedPnl_pcb-r1-F_Paste.gbr │ ├── CombinedPnl_pcb-r1-F_SilkS.gbr │ ├── CombinedPnl_pcb-r1-GND.gbr │ ├── CombinedPnl_pcb-r1-NPTH.drl │ ├── CombinedPnl_pcb-r1-PTH.drl │ └── CombinedPnl_pcb-r1-PWR.gbr │ ├── CombinedBoard_gbr_r2 │ ├── CombinedBoard_gbr_r2.zip │ ├── CombinedPnl_pcb-r2-B_Cu.gbr │ ├── CombinedPnl_pcb-r2-B_Mask.gbr │ ├── CombinedPnl_pcb-r2-B_Paste.gbr │ ├── CombinedPnl_pcb-r2-B_SilkS.gbr │ ├── CombinedPnl_pcb-r2-Edge_Cuts.gbr │ ├── CombinedPnl_pcb-r2-F_Cu.gbr │ ├── CombinedPnl_pcb-r2-F_Mask.gbr │ ├── CombinedPnl_pcb-r2-F_Paste.gbr │ ├── CombinedPnl_pcb-r2-F_SilkS.gbr │ ├── CombinedPnl_pcb-r2-GND.gbr │ ├── CombinedPnl_pcb-r2-NPTH-drl_map.ps │ ├── CombinedPnl_pcb-r2-NPTH.drl │ ├── CombinedPnl_pcb-r2-PTH-drl_map.ps │ ├── CombinedPnl_pcb-r2-PTH.drl │ └── CombinedPnl_pcb-r2-PWR.gbr │ ├── CombinedPnl_pcb-r0.kicad_pcb │ ├── CombinedPnl_pcb-r0.kicad_pcb-bak │ ├── CombinedPnl_pcb-r0.pro │ ├── CombinedPnl_pcb-r1.kicad_pcb │ ├── CombinedPnl_pcb-r1.kicad_pcb-bak │ ├── CombinedPnl_pcb-r1.pro │ ├── CombinedPnl_pcb-r2.kicad_pcb │ ├── CombinedPnl_pcb-r2.kicad_pcb-bak │ ├── CombinedPnl_pcb-r2.pro │ ├── CombinedPnl_pcb.kicad_pcb │ ├── CombinedPnl_pcb.kicad_pcb-bak │ ├── CombinedPnl_pcb.pro │ ├── Main Board-cache.lib │ ├── Main Board.kicad_pcb │ ├── Main Board.kicad_pcb-bak │ ├── Main Board.net │ ├── Main Board.pro │ ├── Main Board.sch │ ├── Main Board.sch-bak │ ├── MainBoard_gbr │ ├── Main Board-B_Cu.gbr │ ├── Main Board-B_Mask.gbr │ ├── Main Board-B_Paste.gbr │ ├── Main Board-B_SilkS.gbr │ ├── Main Board-Edge_Cuts.gbr │ ├── Main Board-F_Cu.gbr │ ├── Main Board-F_Mask.gbr │ ├── Main Board-F_Paste.gbr │ ├── Main Board-F_SilkS.gbr │ ├── Main Board-GND.gbr │ ├── Main Board-NPTH.drl │ ├── Main Board-PTH.drl │ ├── Main Board-Power.gbr │ └── MainBoard_gbr.zip │ ├── SecondaryBoard_gbr │ ├── SecondaryBoard_gbr.zip │ ├── Secondary_Board-B_Cu.gbr │ ├── Secondary_Board-B_Mask.gbr │ ├── Secondary_Board-B_Paste.gbr │ ├── Secondary_Board-B_SilkS.gbr │ ├── Secondary_Board-Edge_Cuts.gbr │ ├── Secondary_Board-F_Cu.gbr │ ├── Secondary_Board-F_Mask.gbr │ ├── Secondary_Board-F_Paste.gbr │ ├── Secondary_Board-F_SilkS.gbr │ ├── Secondary_Board-NPTH.drl │ └── Secondary_Board-PTH.drl │ ├── Secondary_Board-cache.lib │ ├── Secondary_Board.kicad_pcb │ ├── Secondary_Board.kicad_pcb-bak │ ├── Secondary_Board.net │ ├── Secondary_Board.pro │ ├── Secondary_Board.sch │ ├── Secondary_Board.sch-bak │ ├── User.bck │ ├── User.dcm │ ├── User.lib │ ├── _autosave-CombinedPnl_pcb-r0.kicad_pcb │ ├── fp-info-cache │ └── sym-lib-table ├── LedMgmt.ino ├── Photos ├── DSC01659.jpg ├── DSC01660.jpg ├── DSC01661.jpg ├── DSC01662.jpg ├── DSC01663.jpg ├── DSC01664.jpg ├── DSC01665.jpg ├── DSC01666.jpg ├── DSC01667.jpg └── DSC01668.jpg ├── README.md ├── SPIFFS_Support.h ├── Schematic └── Alarm_Clock_Schematic.pdf ├── User_Setup_GOES_IN_TFT_eSPI_DIR.h ├── alarm.h ├── alarmMgmt.ino ├── data ├── alarm1.wav ├── alarm2.wav ├── alarm3.wav ├── alarmicon │ ├── alarm.bmp │ ├── alarm_inv.bmp │ ├── alarm_invert_med.bmp │ ├── alarm_invert_sm.bmp │ ├── alarm_med.bmp │ ├── alarm_red.bmp │ ├── alarm_red_med.bmp │ ├── alarm_red_sm.bmp │ └── alarm_sm.bmp ├── icon │ ├── clear-day.bmp │ ├── clear-night.bmp │ ├── cloudy.bmp │ ├── drizzle.bmp │ ├── fog.bmp │ ├── hail.bmp │ ├── heavy-snow.bmp │ ├── lightRain.bmp │ ├── partly-cloudy-day.bmp │ ├── partly-cloudy-night.bmp │ ├── rain.bmp │ ├── sleet.bmp │ ├── snow.bmp │ ├── thunderstorm.bmp │ ├── unknown.bmp │ └── wind.bmp ├── icon50 │ ├── clear-day.bmp │ ├── clear-night.bmp │ ├── cloudy.bmp │ ├── drizzle.bmp │ ├── fog.bmp │ ├── hail.bmp │ ├── heavy-snow.bmp │ ├── lightRain.bmp │ ├── partly-cloudy-day.bmp │ ├── partly-cloudy-night.bmp │ ├── rain.bmp │ ├── sleet.bmp │ ├── snow.bmp │ ├── thunderstorm.bmp │ ├── unknown.bmp │ └── wind.bmp └── lightIcon │ ├── book_off.bmp │ ├── book_on.bmp │ ├── light_off.bmp │ ├── light_off30.bmp │ ├── light_on.bmp │ ├── light_on30.bmp │ ├── night_off30.bmp │ ├── night_on30.bmp │ ├── sunrise_off.bmp │ └── sunrise_on.bmp ├── displayMgr.h ├── globalInclude.h ├── ledCtrl.h ├── modeMgmt.h ├── modeMgmt.ino ├── scrolling_sprites.h └── scrolling_sprites.ino /Archive/AlarmClockv20/BMP_functions.ino: -------------------------------------------------------------------------------- 1 | // Bodmers BMP image rendering function 2 | 3 | void drawBmp(const char *filename, int16_t x, int16_t y) { 4 | 5 | if ((x >= tft.width()) || (y >= tft.height())) return; 6 | 7 | fs::File bmpFS; 8 | 9 | // Open requested file on SD card 10 | bmpFS = SPIFFS.open(filename, "r"); 11 | 12 | if (!bmpFS) 13 | { 14 | Serial.print("File not found"); 15 | return; 16 | } 17 | 18 | uint32_t seekOffset; 19 | uint16_t w, h, row, col; 20 | uint8_t r, g, b; 21 | 22 | uint32_t startTime = millis(); 23 | 24 | if (read16(bmpFS) == 0x4D42) 25 | { 26 | read32(bmpFS); 27 | read32(bmpFS); 28 | seekOffset = read32(bmpFS); 29 | read32(bmpFS); 30 | w = read32(bmpFS); 31 | h = read32(bmpFS); 32 | 33 | if ((read16(bmpFS) == 1) && (read16(bmpFS) == 24) && (read32(bmpFS) == 0)) 34 | { 35 | y += h - 1; 36 | 37 | tft.setSwapBytes(true); 38 | bmpFS.seek(seekOffset); 39 | 40 | uint16_t padding = (4 - ((w * 3) & 3)) & 3; 41 | uint8_t lineBuffer[w * 3 + padding]; 42 | 43 | for (row = 0; row < h; row++) { 44 | 45 | bmpFS.read(lineBuffer, sizeof(lineBuffer)); 46 | uint8_t* bptr = lineBuffer; 47 | uint16_t* tptr = (uint16_t*)lineBuffer; 48 | // Convert 24 to 16 bit colours 49 | for (uint16_t col = 0; col < w; col++) 50 | { 51 | b = *bptr++; 52 | g = *bptr++; 53 | r = *bptr++; 54 | *tptr++ = ((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3); 55 | } 56 | 57 | // Push the pixel row to screen, pushImage will crop the line if needed 58 | // y is decremented as the BMP image is drawn bottom up 59 | 60 | tft.pushImage(x, y--, w, 1, (uint16_t*)lineBuffer); 61 | } 62 | //Serial.print("Loaded in "); Serial.print(millis() - startTime); 63 | //Serial.println(" ms"); 64 | } 65 | else Serial.println("BMP format not recognized."); 66 | } 67 | bmpFS.close(); 68 | } 69 | 70 | // These read 16- and 32-bit types from the SD card file. 71 | // BMP data is stored little-endian, Arduino is little-endian too. 72 | // May need to reverse subscript order if porting elsewhere. 73 | 74 | uint16_t read16(fs::File &f) { 75 | uint16_t result; 76 | ((uint8_t *)&result)[0] = f.read(); // LSB 77 | ((uint8_t *)&result)[1] = f.read(); // MSB 78 | return result; 79 | } 80 | 81 | uint32_t read32(fs::File &f) { 82 | uint32_t result; 83 | ((uint8_t *)&result)[0] = f.read(); // LSB 84 | ((uint8_t *)&result)[1] = f.read(); 85 | ((uint8_t *)&result)[2] = f.read(); 86 | ((uint8_t *)&result)[3] = f.read(); // MSB 87 | return result; 88 | } 89 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/LedMgmt.ino: -------------------------------------------------------------------------------- 1 | // ledManager file 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | #include 7 | 8 | void ledMgr( void * parameter) { 9 | 10 | #define LED_CTRL_LOOP_FREQUENCY 15 11 | 12 | TickType_t xLastWakeTime; 13 | 14 | bool lastReadState; 15 | bool lastRoomState; 16 | bool lastNightState; 17 | bool lastSunriseActive1; 18 | bool lastSunriseActive2; 19 | bool lastSunriseActive3; 20 | uint16_t loopcount = 0; 21 | 22 | const float sunriseTime = 900; // seconds to start sunrise time 23 | const HsbColor blackColor(0, 0, 0); 24 | 25 | const HsbColor sunriseStartColor = HsbColor(0.0f, 0.9f, 0.07f); 26 | const HsbColor sunriseEndColor = HsbColor(0.1f, 0.5f, 0.8f); 27 | 28 | vTaskDelay(500 / portTICK_PERIOD_MS);// let other tasks get going 29 | Serial.println("ledMgr: ledMgr running..."); 30 | 31 | ledMaster.ledInit(); 32 | 33 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 34 | Serial.println("dispMgr: Unable to add displayMgr to taskWDT!"); 35 | } 36 | 37 | //setup section 38 | strip.Begin(); 39 | strip.Show(); 40 | 41 | int loopPeriod = round(1000 / LED_CTRL_LOOP_FREQUENCY); 42 | const TickType_t xFrequency = loopPeriod / portTICK_PERIOD_MS; // run the master display loop at 15Hz 43 | xLastWakeTime = xTaskGetTickCount(); 44 | for (;;) { 45 | loopcount++; 46 | if (loopcount >= 1000) { 47 | loopcount = 0; 48 | } 49 | 50 | // main loop 51 | /* does this DO anything? 52 | if (lastReadState != ledMaster.getReadLightState()) { 53 | lastReadState = ledMaster.getReadLightState(); 54 | if (ledMaster.getReadLightState()) ledMaster.readLightOn(); 55 | else ledMaster.readLightOff(); 56 | } 57 | 58 | if (lastRoomState != ledMaster.getRoomLightState()) { 59 | lastRoomState = ledMaster.getRoomLightState(); 60 | if (ledMaster.getRoomLightState()) ledMaster.roomLightOn(); 61 | else if (ledMaster.getNightLightState()) ledMaster.nightLightOn(); 62 | else ledMaster.roomLightOff(); 63 | } 64 | */ 65 | 66 | if (loopcount % LED_CTRL_LOOP_FREQUENCY == 0 ) { // check the alarms once a second 67 | time_t tn = now(); 68 | if (alarm1.isSunriseActive() && ledMaster.getRoomLightState() == false) { 69 | lastSunriseActive1 = true; 70 | uint32_t timeRemain = alarm1.secondsToAlarm(tn); 71 | if (timeRemain <= sunriseTime) { 72 | //Serial.println("ledMgr: timeRemain: " + String(timeRemain)); 73 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 74 | //Serial.println("ledMgr: progress: " + String(progress)); 75 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 76 | ledMaster.setActiveRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 77 | } 78 | } 79 | else if (alarm2.isSunriseActive() && ledMaster.getRoomLightState() == false) { 80 | lastSunriseActive2 = true; 81 | uint32_t timeRemain = alarm2.secondsToAlarm(tn); 82 | if (timeRemain <= sunriseTime) { 83 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 84 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 85 | ledMaster.setActiveRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 86 | } 87 | } 88 | else if (alarm3.isSunriseActive() && ledMaster.getRoomLightState() == false) { 89 | lastSunriseActive3 = true; 90 | uint32_t timeRemain = alarm3.secondsToAlarm(tn); 91 | if (timeRemain <= sunriseTime) { 92 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 93 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 94 | ledMaster.setActiveRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 95 | } 96 | } 97 | 98 | // handle if someone turns off the sunrise alarm function 99 | if (alarm1.isSunriseActive() == false && lastSunriseActive1 == true && ledMaster.getRoomLightState() == false) { 100 | lastSunriseActive1 = false; 101 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 102 | } 103 | if (alarm2.isSunriseActive() == false && lastSunriseActive2 == true && ledMaster.getRoomLightState() == false) { 104 | lastSunriseActive2 = false; 105 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 106 | } 107 | if (alarm3.isSunriseActive() == false && lastSunriseActive3 == true && ledMaster.getRoomLightState() == false) { 108 | lastSunriseActive3 = false; 109 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 110 | } 111 | } 112 | 113 | if (loopcount % (10 * LED_CTRL_LOOP_FREQUENCY) == 0 ) { // send a message onceevery 10 sec. just to be safe 114 | ledMaster.Dirty(); 115 | vTaskDelay(10 / portTICK_PERIOD_MS); // This is just to feed the IDLE watchdog 116 | } 117 | 118 | if (esp_task_wdt_reset() != ESP_OK) { 119 | Serial.println("Unable to reset ledMgr taskWDT!"); 120 | } 121 | 122 | ledMaster.updateStrip(); 123 | 124 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); 125 | } 126 | } 127 | 128 | // This task actually updates the led strip 129 | void ledDriver( void * parameter) { 130 | 131 | TickType_t xLastWakeTime; 132 | 133 | uint16_t loopcount = 0; 134 | 135 | vTaskDelay(600 / portTICK_PERIOD_MS);// let other tasks get going 136 | Serial.println("ledDriver: ledMgr running..."); 137 | 138 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 139 | Serial.println("dispMgr: Unable to add displayMgr to taskWDT!"); 140 | } 141 | 142 | const TickType_t xFrequency = 33 / portTICK_PERIOD_MS; // run the master display loop at about 30Hz 143 | xLastWakeTime = xTaskGetTickCount(); 144 | for (;;) { 145 | /* 146 | loopcount++; 147 | if (loopcount == 10000) loopcount = 0; 148 | */ 149 | if (ledMaster.CanShow() && ledMaster.IsDirty()) { 150 | if (xSemaphoreTake(ledMutex, (TickType_t) 10) == pdTRUE ) { 151 | disp.setSpriteEnable(false); 152 | taskENTER_CRITICAL(&criticalMutex); 153 | ledMaster.Show(); 154 | taskEXIT_CRITICAL(&criticalMutex); 155 | xSemaphoreGive(ledMutex); 156 | disp.setSpriteEnable(true); 157 | } 158 | } 159 | if (esp_task_wdt_reset() != ESP_OK) { 160 | Serial.println("Unable to reset ledMgr taskWDT!"); 161 | } 162 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); 163 | } 164 | } 165 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/README.md: -------------------------------------------------------------------------------- 1 | # Alarm-Clock 2 | An ESP32 based alarm clock 3 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/SPIFFS_Support.h: -------------------------------------------------------------------------------- 1 | /*==================================================================================== 2 | This sketch contains support functions for the ESP6266 SPIFFS filing system 3 | 4 | Created by Bodmer 15th Jan 2017 5 | ==================================================================================*/ 6 | void listDir(fs::FS &fs, const char * dirname, uint8_t levels); 7 | 8 | // ------------------------------------------------------------------------- 9 | // List SPIFFS files in a neat format for ESP8266 or ESP32 10 | // ------------------------------------------------------------------------- 11 | void listFiles(void) { 12 | Serial.println(); 13 | Serial.println("SPIFFS files found:"); 14 | 15 | #ifdef ESP32 16 | listDir(SPIFFS, "/", true); 17 | #else 18 | fs::Dir dir = SPIFFS.openDir("/"); // Root directory 19 | String line = "====================================="; 20 | 21 | Serial.println(line); 22 | Serial.println(" File name Size"); 23 | Serial.println(line); 24 | 25 | while (dir.next()) { 26 | String fileName = dir.fileName(); 27 | Serial.print(fileName); 28 | // File path can be 31 characters maximum in SPIFFS 29 | int spaces = 33 - fileName.length(); // Tabulate nicely 30 | if (spaces < 1) spaces = 1; 31 | while (spaces--) Serial.print(" "); 32 | fs::File f = dir.openFile("r"); 33 | Serial.print(f.size()); Serial.println(" bytes"); 34 | yield(); 35 | } 36 | 37 | Serial.println(line); 38 | #endif 39 | Serial.println(); 40 | delay(1000); 41 | } 42 | 43 | #ifdef ESP32 44 | void listDir(fs::FS &fs, const char * dirname, uint8_t levels) { 45 | Serial.printf("Listing directory: %s\n", dirname); 46 | 47 | fs::File root = fs.open(dirname); 48 | if (!root) { 49 | Serial.println("Failed to open directory"); 50 | return; 51 | } 52 | if (!root.isDirectory()) { 53 | Serial.println("Not a directory"); 54 | return; 55 | } 56 | 57 | fs::File file = root.openNextFile(); 58 | while (file) { 59 | 60 | if (file.isDirectory()) { 61 | Serial.print("DIR : "); 62 | String fileName = file.name(); 63 | Serial.print(fileName); 64 | if (levels) { 65 | listDir(fs, file.name(), levels - 1); 66 | } 67 | } else { 68 | String fileName = file.name(); 69 | Serial.print(" " + fileName); 70 | // File path can be 31 characters maximum in SPIFFS 71 | int spaces = 33 - fileName.length(); // Tabulate nicely 72 | if (spaces < 1) spaces = 1; 73 | while (spaces--) Serial.print(" "); 74 | String fileSize = (String) file.size(); 75 | spaces = 8 - fileSize.length(); // Tabulate nicely 76 | if (spaces < 1) spaces = 1; 77 | while (spaces--) Serial.print(" "); 78 | Serial.println(fileSize + " bytes"); 79 | } 80 | 81 | file = root.openNextFile(); 82 | } 83 | } 84 | #endif 85 | //==================================================================================== 86 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/displayMgr.h: -------------------------------------------------------------------------------- 1 | // This file holds variables in a singleton 2 | #include "globalInclude.h" 3 | 4 | class displayMgr 5 | { 6 | private: 7 | volatile bool currWiFiStatus = false; 8 | volatile bool weatherValid = false; 9 | volatile bool drawLowerScreen = false; 10 | volatile bool drawTimeSection = false; 11 | volatile bool fullReDraw = true; 12 | volatile bool spriteEnable = false; 13 | volatile uint8_t alarmRinging = 0; 14 | volatile time_t lastTouch = now(); 15 | volatile uint16_t backlightTimeout = 30; 16 | volatile uint8_t currentMode = 0; 17 | volatile uint8_t alarmEdit = 0; 18 | volatile bool screenTouchActive = false; 19 | volatile uint8_t lightSubMode = 0; 20 | 21 | 22 | public: 23 | // get/set CurrWiFiStatus 24 | void setCurrWiFiStatus (bool value) { 25 | currWiFiStatus = value; 26 | } 27 | bool getCurrWiFiStatus (void) { 28 | return currWiFiStatus; 29 | } 30 | 31 | // get/set weatherValid 32 | void setWeatherValid (bool value) { 33 | weatherValid = value; 34 | } 35 | bool getWeatherValid (void) { 36 | return weatherValid; 37 | } 38 | 39 | // get/set drawLowerScreen 40 | void setDrawLowerScreen (bool value) { 41 | drawLowerScreen = value; 42 | } 43 | bool getDrawLowerScreen (void) { 44 | return drawLowerScreen; 45 | } 46 | 47 | // get/set drawLowerScreen 48 | void setDrawTimeSection (bool value) { 49 | drawTimeSection = value; 50 | } 51 | bool getDrawTimeSection (void) { 52 | return drawTimeSection; 53 | } 54 | 55 | // get/set drawLowerScreen 56 | void setFullReDraw (bool value) { 57 | fullReDraw = value; 58 | } 59 | bool getFullReDraw (void) { 60 | return fullReDraw; 61 | } 62 | 63 | // get/set spriteEnable 64 | void setSpriteEnable (bool value) { 65 | spriteEnable = value; 66 | } 67 | bool getSpriteEnable (void) { 68 | return spriteEnable; 69 | } 70 | 71 | // get/set alarmRinging 72 | void setAlarmRinging (uint8_t value) { 73 | alarmRinging = value; 74 | } 75 | uint8_t getAlarmRinging (void) { 76 | return alarmRinging; 77 | } 78 | 79 | // get/set currentMode 80 | void setCurrentMode (uint8_t value) { 81 | currentMode = value; 82 | } 83 | uint8_t getCurrentMode (void) { 84 | return currentMode; 85 | } 86 | 87 | // get/set alarmEdit 88 | void setAlarmEdit (uint8_t value) { 89 | alarmEdit = value; 90 | } 91 | uint8_t getAlarmEdit (void) { 92 | return alarmEdit; 93 | } 94 | 95 | // touchscreen alerts 96 | void resetlastTouch (void) { 97 | lastTouch = now(); 98 | } 99 | void setBLTimeout (uint16_t newTimeout) { 100 | backlightTimeout = newTimeout; 101 | } 102 | 103 | // get/set lightSubMode 104 | void setLightSubMode (uint8_t val) { 105 | lightSubMode = val; 106 | } 107 | uint8_t getLightSubMode (void) { 108 | return lightSubMode; 109 | } 110 | 111 | bool checkRecentTouch(void) { 112 | time_t ts = now(); 113 | if (ts - lastTouch > backlightTimeout) return false; 114 | else return true; 115 | } 116 | 117 | void setScreenTouchActive(bool value) { 118 | screenTouchActive = value; 119 | } 120 | bool getScreenTouchActive( void ) { 121 | return screenTouchActive; 122 | } 123 | 124 | }; 125 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/globalInclude.h: -------------------------------------------------------------------------------- 1 | // This is a file that should get included in every source file 2 | 3 | // #define DEMO_MODE 4 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/modeMgmt.h: -------------------------------------------------------------------------------- 1 | // modeMgmt.h 2 | 3 | // mode macros 4 | #define MAIN_MODE 0 5 | #define CURRENT_WEATHER_MODE 1 6 | #define FORECAST_MODE 2 7 | #define ALARM_DISPLAY_MODE 3 8 | #define ALARM_SET_MODE 4 9 | #define GEN_LIGHT_CTRL_MODE 5 10 | 11 | #define READ_LIGHT_SUB_MODE 0 12 | #define ROOM_LIGHT_SUB_MODE 1 13 | #define NIGHT_LIGHT_SUB_MODE 2 14 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/scrolling_sprites.h: -------------------------------------------------------------------------------- 1 | // This contains the class for scrolling sprites 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | #include "TFT_eSPI.h" 7 | #include "Free_Fonts.h" 8 | 9 | // Set up Pins - Only need DC and CS for hardware SPI 10 | #define TFT_DC 16 11 | #define TFT_CS 17 12 | 13 | // Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC 14 | TFT_eSPI tft = TFT_eSPI(); // Invoke custom library 15 | SemaphoreHandle_t tftMutex; 16 | 17 | // The rollingSprite class 18 | class rollingSprite 19 | { 20 | 21 | private: 22 | unsigned int c_sprHeight; 23 | unsigned int c_sprWidth; 24 | String c_spriteMsg; 25 | int c_scrollGap; 26 | int c_scrollSpeed; 27 | int c_txtWidth; 28 | int c_spriteACount; 29 | int c_spriteBCount; 30 | bool c_spriteValid = false; 31 | uint16_t c_x; 32 | uint16_t c_y; 33 | uint32_t c_txtColor; 34 | 35 | SemaphoreHandle_t spriteMutex; 36 | 37 | TFT_eSprite spr = TFT_eSprite(&tft); // Sprite object 38 | 39 | public: 40 | 41 | bool newSprite(String spriteMsg, unsigned int sprHeight, unsigned int sprWidth, int scrollSpeed, int scrollGap, uint32_t color, uint16_t x, uint16_t y) { 42 | if (spriteMutex == NULL) { 43 | spriteMutex = xSemaphoreCreateMutex(); 44 | } 45 | 46 | if (xSemaphoreTake(spriteMutex, (TickType_t) 30) == pdTRUE ) { 47 | // set up the class vairables 48 | c_spriteMsg = spriteMsg; 49 | c_sprHeight = sprHeight; 50 | c_sprWidth = sprWidth; 51 | c_scrollSpeed = scrollSpeed; 52 | c_scrollGap = scrollGap; 53 | c_txtColor = color; 54 | c_x = x; 55 | c_y = y; 56 | 57 | c_spriteValid = false; 58 | spr.setColorDepth(8); 59 | spr.setFreeFont(FSS9); 60 | 61 | spr.createSprite(c_sprWidth, c_sprHeight); 62 | spr.fillSprite(TFT_BLACK); 63 | spr.setTextColor(c_txtColor); 64 | spr.setTextWrap(false); 65 | xSemaphoreGive(spriteMutex); 66 | } 67 | else { 68 | Serial.println("newSprite: Unable to update sprite!"); 69 | } 70 | 71 | if (xSemaphoreTake(spriteMutex, (TickType_t) 30) == pdTRUE ) { 72 | c_txtWidth = spr.textWidth(c_spriteMsg, GFXFF); 73 | c_spriteACount = 0; 74 | c_spriteBCount = c_scrollGap + c_txtWidth; 75 | c_spriteValid = true; 76 | xSemaphoreGive(spriteMutex); 77 | return true; 78 | } 79 | else { 80 | Serial.println("newSprite: Unable to update sprite!"); 81 | } 82 | return false; 83 | } 84 | 85 | bool delSprite() { 86 | if (spriteMutex != NULL || c_spriteValid == true) { 87 | if (xSemaphoreTake(spriteMutex, (TickType_t) 50) == pdTRUE ) { 88 | c_spriteValid = false; 89 | c_x = 0; 90 | c_y = 0; 91 | c_spriteACount = 0; 92 | c_spriteBCount = 0; 93 | spr.deleteSprite(); 94 | c_spriteMsg = " "; 95 | xSemaphoreGive(spriteMutex); 96 | } 97 | else { 98 | Serial.print("delSprite: Unable to delete sprite!!!"); 99 | return false; 100 | } 101 | } 102 | return true; 103 | } 104 | 105 | bool drawSprite() { 106 | if (c_spriteValid == true) { 107 | 108 | if (xSemaphoreTake(spriteMutex, (TickType_t) 5) == pdTRUE ) { 109 | c_spriteACount -= c_scrollSpeed; 110 | c_spriteBCount -= c_scrollSpeed; 111 | spr.fillSprite(TFT_BLACK); 112 | spr.setTextColor(c_txtColor); 113 | spr.drawString(c_spriteMsg, c_spriteACount, 0, GFXFF); 114 | spr.drawString(c_spriteMsg, c_spriteBCount, 0, GFXFF); 115 | xSemaphoreGive(spriteMutex); 116 | } 117 | else { 118 | Serial.println("drawSprite: Unable to update sprite!"); 119 | } 120 | 121 | if (xSemaphoreTake(spriteMutex, (TickType_t) 5) == pdTRUE ) { 122 | if (c_spriteACount < (-1 * (c_txtWidth))) { 123 | c_spriteACount += ((c_txtWidth + c_scrollGap) * 2); 124 | } 125 | if (c_spriteBCount < (-1 * (c_txtWidth))) { 126 | c_spriteBCount += ((c_txtWidth + c_scrollGap) * 2); 127 | } 128 | xSemaphoreGive(spriteMutex); 129 | } 130 | else { 131 | Serial.println("drawSprite: Unable to reset sprite counts!"); 132 | } 133 | 134 | if (xSemaphoreTake(tftMutex, (TickType_t) 40 / portTICK_PERIOD_MS) == pdTRUE ) { 135 | spr.pushSprite(c_x, c_y); 136 | xSemaphoreGive(tftMutex); 137 | } 138 | else { 139 | Serial.println("drawSprite: Unable to push sprite!"); 140 | return false; 141 | } 142 | } 143 | return true; 144 | } 145 | 146 | bool isValid() { 147 | return c_spriteValid; 148 | } 149 | 150 | String currMsg() { 151 | return c_spriteMsg; 152 | } 153 | }; 154 | -------------------------------------------------------------------------------- /Archive/AlarmClockv20/scrolling_sprites.ino: -------------------------------------------------------------------------------- 1 | // This file hans the code that executes to scroll the sprites 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | //========================================================================================== 7 | 8 | void spriteMgr( void * parameter) { 9 | 10 | vTaskDelay(2000 / portTICK_PERIOD_MS); // let the other task get going 11 | 12 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 13 | Serial.println("Unable to add spriteMgr to taskWDT!"); 14 | } 15 | 16 | TickType_t xLastWakeTime; 17 | const TickType_t xFrequency = 40 / portTICK_PERIOD_MS; 18 | xLastWakeTime = xTaskGetTickCount(); 19 | 20 | // Initialise the xLastWakeTime variable with the current time. 21 | xLastWakeTime = xTaskGetTickCount(); 22 | 23 | for ( ;; ) 24 | { 25 | if (disp.getSpriteEnable()) { 26 | 27 | sprite1.drawSprite(); 28 | sprite2.drawSprite(); 29 | 30 | } 31 | if (esp_task_wdt_reset() != ESP_OK) { 32 | Serial.println("Unable to reset spriteMgr taskWDT!"); 33 | } 34 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); // Wait for the next cycle. 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /BMP_functions.ino: -------------------------------------------------------------------------------- 1 | // Bodmers BMP image rendering function 2 | 3 | void drawBmp(const char *filename, int16_t x, int16_t y) { 4 | 5 | if ((x >= tft.width()) || (y >= tft.height())) return; 6 | 7 | fs::File bmpFS; 8 | 9 | // Open requested file on SD card 10 | bmpFS = SPIFFS.open(filename, "r"); 11 | 12 | if (!bmpFS) 13 | { 14 | Serial.print("File not found"); 15 | return; 16 | } 17 | 18 | uint32_t seekOffset; 19 | uint16_t w, h, row, col; 20 | uint8_t r, g, b; 21 | 22 | uint32_t startTime = millis(); 23 | 24 | if (read16(bmpFS) == 0x4D42) 25 | { 26 | read32(bmpFS); 27 | read32(bmpFS); 28 | seekOffset = read32(bmpFS); 29 | read32(bmpFS); 30 | w = read32(bmpFS); 31 | h = read32(bmpFS); 32 | 33 | if ((read16(bmpFS) == 1) && (read16(bmpFS) == 24) && (read32(bmpFS) == 0)) 34 | { 35 | y += h - 1; 36 | 37 | tft.setSwapBytes(true); 38 | bmpFS.seek(seekOffset); 39 | 40 | uint16_t padding = (4 - ((w * 3) & 3)) & 3; 41 | uint8_t lineBuffer[w * 3 + padding]; 42 | 43 | for (row = 0; row < h; row++) { 44 | 45 | bmpFS.read(lineBuffer, sizeof(lineBuffer)); 46 | uint8_t* bptr = lineBuffer; 47 | uint16_t* tptr = (uint16_t*)lineBuffer; 48 | // Convert 24 to 16 bit colours 49 | for (uint16_t col = 0; col < w; col++) 50 | { 51 | b = *bptr++; 52 | g = *bptr++; 53 | r = *bptr++; 54 | *tptr++ = ((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3); 55 | } 56 | 57 | // Push the pixel row to screen, pushImage will crop the line if needed 58 | // y is decremented as the BMP image is drawn bottom up 59 | 60 | tft.pushImage(x, y--, w, 1, (uint16_t*)lineBuffer); 61 | } 62 | //Serial.print("Loaded in "); Serial.print(millis() - startTime); 63 | //Serial.println(" ms"); 64 | } 65 | else Serial.println("BMP format not recognized."); 66 | } 67 | bmpFS.close(); 68 | } 69 | 70 | // These read 16- and 32-bit types from the SD card file. 71 | // BMP data is stored little-endian, Arduino is little-endian too. 72 | // May need to reverse subscript order if porting elsewhere. 73 | 74 | uint16_t read16(fs::File &f) { 75 | uint16_t result; 76 | ((uint8_t *)&result)[0] = f.read(); // LSB 77 | ((uint8_t *)&result)[1] = f.read(); // MSB 78 | return result; 79 | } 80 | 81 | uint32_t read32(fs::File &f) { 82 | uint32_t result; 83 | ((uint8_t *)&result)[0] = f.read(); // LSB 84 | ((uint8_t *)&result)[1] = f.read(); 85 | ((uint8_t *)&result)[2] = f.read(); 86 | ((uint8_t *)&result)[3] = f.read(); // MSB 87 | return result; 88 | } 89 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock-rescue.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # ESP32-Dev-Board-User 5 | # 6 | DEF ESP32-Dev-Board-User U1 0 40 Y Y 1 F N 7 | F0 "U1" 600 850 50 H V C CNN 8 | F1 "ESP32-Dev-Board-User" 600 -50 50 V V C CNN 9 | F2 "" -100 -50 50 H I C CNN 10 | F3 "" -100 -50 50 H I C CNN 11 | $FPLIST 12 | ESP32_DEV_BOARD 13 | $ENDFPLIST 14 | DRAW 15 | S -150 950 1350 -1200 0 1 0 N 16 | X N/C -0 -250 900 100 R 50 50 0 0 N 17 | X N/C -1 1450 900 100 L 50 50 0 0 N 18 | X VCC 1 -250 800 100 R 50 50 0 0 w 19 | X GIO26 10 -250 -100 100 R 50 50 0 0 B 20 | X GIO27 11 -250 -200 100 R 50 50 0 0 B 21 | X GIO14 12 -250 -300 100 R 50 50 0 0 B 22 | X GIO12 13 -250 -400 100 R 50 50 0 0 B 23 | X GND 14 -250 -500 100 R 50 50 0 0 I 24 | X GIO13 15 -250 -600 100 R 50 50 0 0 B 25 | X GIO9/D2 16 -250 -700 100 R 50 50 0 0 N 26 | X GIO10/D3 17 -250 -800 100 R 50 50 0 0 N 27 | X GIO11/CMD 18 -250 -900 100 R 50 50 0 0 N 28 | X VIN5V 19 -250 -1000 100 R 50 50 0 0 W 29 | X RESET/EN 2 -250 700 100 R 50 50 0 0 I 30 | X GIO6/CK 20 1450 -1000 100 L 50 50 0 0 N 31 | X GIO7/D0 21 1450 -900 100 L 50 50 0 0 N 32 | X GIO8/D1 22 1450 -800 100 L 50 50 0 0 N 33 | X GIO15 23 1450 -700 100 L 50 50 0 0 B 34 | X GIO2 24 1450 -600 100 L 50 50 0 0 B 35 | X GIO0/BOOT 25 1450 -500 100 L 50 50 0 0 B 36 | X GIO4 26 1450 -400 100 L 50 50 0 0 B 37 | X GIO16 27 1450 -300 100 L 50 50 0 0 B 38 | X GIO17 28 1450 -200 100 L 50 50 0 0 B 39 | X GIO5/VSPI_SS 29 1450 -100 100 L 50 50 0 0 B 40 | X GIO36 3 -250 600 100 R 50 50 0 0 I 41 | X GIO18/VSPI_SCK 30 1450 0 100 L 50 50 0 0 B 42 | X GIO19/VSPI_MISO 31 1450 100 100 L 50 50 0 0 B 43 | X GND 32 1450 200 100 L 50 50 0 0 W 44 | X GIO21/I2C_SDA 33 1450 300 100 L 50 50 0 0 B 45 | X GIO3 34 1450 400 100 L 50 50 0 0 B 46 | X GIO1 35 1450 500 100 L 50 50 0 0 B 47 | X GIO22/I2C_SCL 36 1450 600 100 L 50 50 0 0 B 48 | X GIO23/VSPI_MOSI 37 1450 700 100 L 50 50 0 0 B 49 | X GND 38 1450 800 100 L 50 50 0 0 W 50 | X GIO39 4 -250 500 100 R 50 50 0 0 I 51 | X GIO34 5 -250 400 100 R 50 50 0 0 I 52 | X GIO35 6 -250 300 100 R 50 50 0 0 I 53 | X GIO32 7 -250 200 100 R 50 50 0 0 B 54 | X GIO33 8 -250 100 100 R 50 50 0 0 B 55 | X GIO25 9 -250 0 100 R 50 50 0 0 B 56 | ENDDRAW 57 | ENDDEF 58 | # 59 | #End Library 60 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/CP_Radial_D4.0mm_P2.00mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Capacitor_THT:CP_Radial_D4.0mm_P2.00mm (layer F.Cu) (tedit 5AE50EF0) 2 | (descr "CP, Radial series, Radial, pin pitch=2.00mm, , diameter=4mm, Electrolytic Capacitor") 3 | (tags "CP Radial series Radial pin pitch 2.00mm diameter 4mm Electrolytic Capacitor") 4 | (fp_text reference C1 (at 1.016 3.048 -180) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value CP_.1Uf (at 1.016 -2.794 -180) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_circle (center 1 0) (end 3 0) (layer F.Fab) (width 0.1)) 11 | (fp_circle (center 1 0) (end 3.12 0) (layer F.SilkS) (width 0.12)) 12 | (fp_circle (center 1 0) (end 3.25 0) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -0.702554 -0.8675) (end -0.302554 -0.8675) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -0.502554 -1.0675) (end -0.502554 -0.6675) (layer F.Fab) (width 0.1)) 15 | (fp_line (start 1 -2.08) (end 1 2.08) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 1.04 -2.08) (end 1.04 2.08) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 1.08 -2.079) (end 1.08 2.079) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 1.12 -2.077) (end 1.12 2.077) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.16 -2.074) (end 1.16 2.074) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 1.2 -2.071) (end 1.2 -0.84) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start 1.2 0.84) (end 1.2 2.071) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start 1.24 -2.067) (end 1.24 -0.84) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start 1.24 0.84) (end 1.24 2.067) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start 1.28 -2.062) (end 1.28 -0.84) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start 1.28 0.84) (end 1.28 2.062) (layer F.SilkS) (width 0.12)) 26 | (fp_line (start 1.32 -2.056) (end 1.32 -0.84) (layer F.SilkS) (width 0.12)) 27 | (fp_line (start 1.32 0.84) (end 1.32 2.056) (layer F.SilkS) (width 0.12)) 28 | (fp_line (start 1.36 -2.05) (end 1.36 -0.84) (layer F.SilkS) (width 0.12)) 29 | (fp_line (start 1.36 0.84) (end 1.36 2.05) (layer F.SilkS) (width 0.12)) 30 | (fp_line (start 1.4 -2.042) (end 1.4 -0.84) (layer F.SilkS) (width 0.12)) 31 | (fp_line (start 1.4 0.84) (end 1.4 2.042) (layer F.SilkS) (width 0.12)) 32 | (fp_line (start 1.44 -2.034) (end 1.44 -0.84) (layer F.SilkS) (width 0.12)) 33 | (fp_line (start 1.44 0.84) (end 1.44 2.034) (layer F.SilkS) (width 0.12)) 34 | (fp_line (start 1.48 -2.025) (end 1.48 -0.84) (layer F.SilkS) (width 0.12)) 35 | (fp_line (start 1.48 0.84) (end 1.48 2.025) (layer F.SilkS) (width 0.12)) 36 | (fp_line (start 1.52 -2.016) (end 1.52 -0.84) (layer F.SilkS) (width 0.12)) 37 | (fp_line (start 1.52 0.84) (end 1.52 2.016) (layer F.SilkS) (width 0.12)) 38 | (fp_line (start 1.56 -2.005) (end 1.56 -0.84) (layer F.SilkS) (width 0.12)) 39 | (fp_line (start 1.56 0.84) (end 1.56 2.005) (layer F.SilkS) (width 0.12)) 40 | (fp_line (start 1.6 -1.994) (end 1.6 -0.84) (layer F.SilkS) (width 0.12)) 41 | (fp_line (start 1.6 0.84) (end 1.6 1.994) (layer F.SilkS) (width 0.12)) 42 | (fp_line (start 1.64 -1.982) (end 1.64 -0.84) (layer F.SilkS) (width 0.12)) 43 | (fp_line (start 1.64 0.84) (end 1.64 1.982) (layer F.SilkS) (width 0.12)) 44 | (fp_line (start 1.68 -1.968) (end 1.68 -0.84) (layer F.SilkS) (width 0.12)) 45 | (fp_line (start 1.68 0.84) (end 1.68 1.968) (layer F.SilkS) (width 0.12)) 46 | (fp_line (start 1.721 -1.954) (end 1.721 -0.84) (layer F.SilkS) (width 0.12)) 47 | (fp_line (start 1.721 0.84) (end 1.721 1.954) (layer F.SilkS) (width 0.12)) 48 | (fp_line (start 1.761 -1.94) (end 1.761 -0.84) (layer F.SilkS) (width 0.12)) 49 | (fp_line (start 1.761 0.84) (end 1.761 1.94) (layer F.SilkS) (width 0.12)) 50 | (fp_line (start 1.801 -1.924) (end 1.801 -0.84) (layer F.SilkS) (width 0.12)) 51 | (fp_line (start 1.801 0.84) (end 1.801 1.924) (layer F.SilkS) (width 0.12)) 52 | (fp_line (start 1.841 -1.907) (end 1.841 -0.84) (layer F.SilkS) (width 0.12)) 53 | (fp_line (start 1.841 0.84) (end 1.841 1.907) (layer F.SilkS) (width 0.12)) 54 | (fp_line (start 1.881 -1.889) (end 1.881 -0.84) (layer F.SilkS) (width 0.12)) 55 | (fp_line (start 1.881 0.84) (end 1.881 1.889) (layer F.SilkS) (width 0.12)) 56 | (fp_line (start 1.921 -1.87) (end 1.921 -0.84) (layer F.SilkS) (width 0.12)) 57 | (fp_line (start 1.921 0.84) (end 1.921 1.87) (layer F.SilkS) (width 0.12)) 58 | (fp_line (start 1.961 -1.851) (end 1.961 -0.84) (layer F.SilkS) (width 0.12)) 59 | (fp_line (start 1.961 0.84) (end 1.961 1.851) (layer F.SilkS) (width 0.12)) 60 | (fp_line (start 2.001 -1.83) (end 2.001 -0.84) (layer F.SilkS) (width 0.12)) 61 | (fp_line (start 2.001 0.84) (end 2.001 1.83) (layer F.SilkS) (width 0.12)) 62 | (fp_line (start 2.041 -1.808) (end 2.041 -0.84) (layer F.SilkS) (width 0.12)) 63 | (fp_line (start 2.041 0.84) (end 2.041 1.808) (layer F.SilkS) (width 0.12)) 64 | (fp_line (start 2.081 -1.785) (end 2.081 -0.84) (layer F.SilkS) (width 0.12)) 65 | (fp_line (start 2.081 0.84) (end 2.081 1.785) (layer F.SilkS) (width 0.12)) 66 | (fp_line (start 2.121 -1.76) (end 2.121 -0.84) (layer F.SilkS) (width 0.12)) 67 | (fp_line (start 2.121 0.84) (end 2.121 1.76) (layer F.SilkS) (width 0.12)) 68 | (fp_line (start 2.161 -1.735) (end 2.161 -0.84) (layer F.SilkS) (width 0.12)) 69 | (fp_line (start 2.161 0.84) (end 2.161 1.735) (layer F.SilkS) (width 0.12)) 70 | (fp_line (start 2.201 -1.708) (end 2.201 -0.84) (layer F.SilkS) (width 0.12)) 71 | (fp_line (start 2.201 0.84) (end 2.201 1.708) (layer F.SilkS) (width 0.12)) 72 | (fp_line (start 2.241 -1.68) (end 2.241 -0.84) (layer F.SilkS) (width 0.12)) 73 | (fp_line (start 2.241 0.84) (end 2.241 1.68) (layer F.SilkS) (width 0.12)) 74 | (fp_line (start 2.281 -1.65) (end 2.281 -0.84) (layer F.SilkS) (width 0.12)) 75 | (fp_line (start 2.281 0.84) (end 2.281 1.65) (layer F.SilkS) (width 0.12)) 76 | (fp_line (start 2.321 -1.619) (end 2.321 -0.84) (layer F.SilkS) (width 0.12)) 77 | (fp_line (start 2.321 0.84) (end 2.321 1.619) (layer F.SilkS) (width 0.12)) 78 | (fp_line (start 2.361 -1.587) (end 2.361 -0.84) (layer F.SilkS) (width 0.12)) 79 | (fp_line (start 2.361 0.84) (end 2.361 1.587) (layer F.SilkS) (width 0.12)) 80 | (fp_line (start 2.401 -1.552) (end 2.401 -0.84) (layer F.SilkS) (width 0.12)) 81 | (fp_line (start 2.401 0.84) (end 2.401 1.552) (layer F.SilkS) (width 0.12)) 82 | (fp_line (start 2.441 -1.516) (end 2.441 -0.84) (layer F.SilkS) (width 0.12)) 83 | (fp_line (start 2.441 0.84) (end 2.441 1.516) (layer F.SilkS) (width 0.12)) 84 | (fp_line (start 2.481 -1.478) (end 2.481 -0.84) (layer F.SilkS) (width 0.12)) 85 | (fp_line (start 2.481 0.84) (end 2.481 1.478) (layer F.SilkS) (width 0.12)) 86 | (fp_line (start 2.521 -1.438) (end 2.521 -0.84) (layer F.SilkS) (width 0.12)) 87 | (fp_line (start 2.521 0.84) (end 2.521 1.438) (layer F.SilkS) (width 0.12)) 88 | (fp_line (start 2.561 -1.396) (end 2.561 -0.84) (layer F.SilkS) (width 0.12)) 89 | (fp_line (start 2.561 0.84) (end 2.561 1.396) (layer F.SilkS) (width 0.12)) 90 | (fp_line (start 2.601 -1.351) (end 2.601 -0.84) (layer F.SilkS) (width 0.12)) 91 | (fp_line (start 2.601 0.84) (end 2.601 1.351) (layer F.SilkS) (width 0.12)) 92 | (fp_line (start 2.641 -1.304) (end 2.641 -0.84) (layer F.SilkS) (width 0.12)) 93 | (fp_line (start 2.641 0.84) (end 2.641 1.304) (layer F.SilkS) (width 0.12)) 94 | (fp_line (start 2.681 -1.254) (end 2.681 -0.84) (layer F.SilkS) (width 0.12)) 95 | (fp_line (start 2.681 0.84) (end 2.681 1.254) (layer F.SilkS) (width 0.12)) 96 | (fp_line (start 2.721 -1.2) (end 2.721 -0.84) (layer F.SilkS) (width 0.12)) 97 | (fp_line (start 2.721 0.84) (end 2.721 1.2) (layer F.SilkS) (width 0.12)) 98 | (fp_line (start 2.761 -1.142) (end 2.761 -0.84) (layer F.SilkS) (width 0.12)) 99 | (fp_line (start 2.761 0.84) (end 2.761 1.142) (layer F.SilkS) (width 0.12)) 100 | (fp_line (start 2.801 -1.08) (end 2.801 -0.84) (layer F.SilkS) (width 0.12)) 101 | (fp_line (start 2.801 0.84) (end 2.801 1.08) (layer F.SilkS) (width 0.12)) 102 | (fp_line (start 2.841 -1.013) (end 2.841 1.013) (layer F.SilkS) (width 0.12)) 103 | (fp_line (start 2.881 -0.94) (end 2.881 0.94) (layer F.SilkS) (width 0.12)) 104 | (fp_line (start 2.921 -0.859) (end 2.921 0.859) (layer F.SilkS) (width 0.12)) 105 | (fp_line (start 2.961 -0.768) (end 2.961 0.768) (layer F.SilkS) (width 0.12)) 106 | (fp_line (start 3.001 -0.664) (end 3.001 0.664) (layer F.SilkS) (width 0.12)) 107 | (fp_line (start 3.041 -0.537) (end 3.041 0.537) (layer F.SilkS) (width 0.12)) 108 | (fp_line (start 3.081 -0.37) (end 3.081 0.37) (layer F.SilkS) (width 0.12)) 109 | (fp_line (start -1.269801 -1.195) (end -0.869801 -1.195) (layer F.SilkS) (width 0.12)) 110 | (fp_line (start -1.069801 -1.395) (end -1.069801 -0.995) (layer F.SilkS) (width 0.12)) 111 | (fp_text user %R (at 1 0 -180) (layer F.Fab) 112 | (effects (font (size 0.8 0.8) (thickness 0.12))) 113 | ) 114 | (pad 1 thru_hole rect (at 0 0) (size 1.2 1.2) (drill 0.6) (layers *.Cu *.Mask)) 115 | (pad 2 thru_hole circle (at 2 0) (size 1.2 1.2) (drill 0.6) (layers *.Cu *.Mask)) 116 | (model ${KISYS3DMOD}/Capacitor_THT.3dshapes/CP_Radial_D4.0mm_P2.00mm.wrl 117 | (at (xyz 0 0 0)) 118 | (scale (xyz 1 1 1)) 119 | (rotate (xyz 0 0 0)) 120 | ) 121 | ) 122 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/ESP32_DEV_BOARD.kicad_mod: -------------------------------------------------------------------------------- 1 | (module ESP32_DEV_BOARD (layer F.Cu) (tedit 5E829AD0) 2 | (fp_text reference ESP32 (at -26.63 0 90) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value Val** (at 0 0) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start -25.63 15.469999) (end 25.63 15.47) (layer F.SilkS) (width 0.12)) 9 | (fp_line (start 25.63 15.47) (end 25.63 -15.469999) (layer F.SilkS) (width 0.12)) 10 | (fp_line (start 25.63 -15.469999) (end -25.63 -15.47) (layer F.SilkS) (width 0.12)) 11 | (fp_line (start -25.63 -15.47) (end -25.63 -5.156666) (layer F.SilkS) (width 0.12)) 12 | (fp_line (start -25.63 -5.156666) (end -25.27 -5.156666) (layer F.SilkS) (width 0.12)) 13 | (fp_line (start -25.27 -5.156666) (end -25.27 5.156666) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -25.27 5.156666) (end -25.63 5.156666) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -25.63 5.156666) (end -25.63 15.469999) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -25.38 -15.22) (end 25.38 -15.22) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start 25.38 -15.22) (end 25.38 15.22) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start 25.38 15.22) (end -25.38 15.22) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start -25.38 15.22) (end -25.38 -15.22) (layer F.CrtYd) (width 0.05)) 20 | (pad 0 thru_hole oval (at -24.13 -13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 21 | (pad 0 thru_hole oval (at -24.13 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 22 | (pad 38 thru_hole oval (at 24.13 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 23 | (pad 1 thru_hole circle (at -21.59 13.97) (size 2 2) (drill 1.02) (layers *.Cu *.Mask)) 24 | (pad 37 thru_hole oval (at 21.59 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 25 | (pad 2 thru_hole oval (at -19.05 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 26 | (pad 36 thru_hole oval (at 19.05 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 27 | (pad 3 thru_hole oval (at -16.51 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 28 | (pad 35 thru_hole oval (at 16.51 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 29 | (pad 4 thru_hole oval (at -13.97 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 30 | (pad 34 thru_hole oval (at 13.97 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 31 | (pad 5 thru_hole oval (at -11.43 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 32 | (pad 33 thru_hole oval (at 11.43 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 33 | (pad 6 thru_hole oval (at -8.89 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 34 | (pad 32 thru_hole oval (at 8.89 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 35 | (pad 7 thru_hole oval (at -6.35 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 36 | (pad 31 thru_hole oval (at 6.35 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 37 | (pad 8 thru_hole oval (at -3.81 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 38 | (pad 30 thru_hole oval (at 3.81 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 39 | (pad 9 thru_hole oval (at -1.27 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 40 | (pad 29 thru_hole oval (at 1.27 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 41 | (pad 10 thru_hole oval (at 1.27 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 42 | (pad 28 thru_hole oval (at -1.27 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 43 | (pad 11 thru_hole oval (at 3.81 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 44 | (pad 27 thru_hole oval (at -3.81 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 45 | (pad 12 thru_hole oval (at 6.35 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 46 | (pad 26 thru_hole oval (at -6.35 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 47 | (pad 13 thru_hole oval (at 8.89 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 48 | (pad 25 thru_hole oval (at -8.89 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 49 | (pad 14 thru_hole circle (at 11.43 13.97) (size 2 2) (drill 1.02) (layers *.Cu *.Mask)) 50 | (pad 24 thru_hole oval (at -11.43 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 51 | (pad 15 thru_hole oval (at 13.97 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 52 | (pad 23 thru_hole oval (at -13.97 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 53 | (pad 16 thru_hole oval (at 16.51 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 54 | (pad 22 thru_hole oval (at -16.51 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 55 | (pad 17 thru_hole oval (at 19.05 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 56 | (pad 21 thru_hole oval (at -19.05 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 57 | (pad 18 thru_hole oval (at 21.59 13.97) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 58 | (pad 20 thru_hole oval (at -21.59 -13.97 180) (size 1.5 2) (drill 1.02) (layers *.Cu *.Mask)) 59 | (pad 19 thru_hole circle (at 24.13 13.97) (size 2 2) (drill 1.02) (layers *.Cu *.Mask)) 60 | ) 61 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/LOGIC_LVL_CVTR_X4.kicad_mod: -------------------------------------------------------------------------------- 1 | (module LOGIC_LVL_CVTR_X4 (layer F.Cu) (tedit 5E2F008B) 2 | (fp_text reference REF** (at 7.62 -16.07) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value LOGIC_LVL_CVTR_X4 (at 7.62 1.27) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start -0.23 -15.07) (end -0.23 -0.170001) (layer F.SilkS) (width 0.12)) 9 | (fp_line (start -0.23 -0.170001) (end 15.47 -0.17) (layer F.SilkS) (width 0.12)) 10 | (fp_line (start 15.47 -0.17) (end 15.47 -15.069999) (layer F.SilkS) (width 0.12)) 11 | (fp_line (start 15.47 -15.069999) (end 10.236666 -15.07) (layer F.SilkS) (width 0.12)) 12 | (fp_line (start 10.236666 -15.07) (end 10.236666 -14.71) (layer F.SilkS) (width 0.12)) 13 | (fp_line (start 10.236666 -14.71) (end 5.003334 -14.71) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start 5.003334 -14.71) (end 5.003334 -15.07) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start 5.003334 -15.07) (end -0.23 -15.07) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 15.22 -14.82) (end 15.22 -0.42) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start 15.22 -0.42) (end 0.02 -0.42) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start 0.02 -0.42) (end 0.02 -14.82) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start 0.02 -14.82) (end 15.22 -14.82) (layer F.CrtYd) (width 0.05)) 20 | (pad 12 thru_hole oval (at 13.97 -13.97 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 21 | (pad 1 thru_hole oval (at 1.27 -13.97 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 22 | (pad 11 thru_hole oval (at 13.97 -11.43 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 23 | (pad 2 thru_hole oval (at 1.27 -11.43 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 24 | (pad 10 thru_hole oval (at 13.97 -8.89 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 25 | (pad 3 thru_hole oval (at 1.27 -8.89 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 26 | (pad 9 thru_hole oval (at 13.97 -6.35 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 27 | (pad 4 thru_hole oval (at 1.27 -6.35 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 28 | (pad 8 thru_hole oval (at 13.97 -3.81 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 29 | (pad 5 thru_hole oval (at 1.27 -3.81 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 30 | (pad 7 thru_hole oval (at 13.97 -1.27 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 31 | (pad 6 thru_hole oval (at 1.27 -1.27 270) (size 1.2 2) (drill 0.8) (layers *.Cu *.Mask)) 32 | ) 33 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinHeader_1x02_P2.54mm_Vertical.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical (layer F.Cu) (tedit 59FED5CC) 2 | (descr "Through hole straight pin header, 1x02, 2.54mm pitch, single row") 3 | (tags "Through hole pin header THT 1x02 2.54mm single row") 4 | (fp_text reference J2 (at -3.048 0.254) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value LED_CTRL (at 0 -2.54) (layer F.SilkS) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start -0.635 -1.27) (end 1.27 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start 1.27 -1.27) (end 1.27 3.81) (layer F.Fab) (width 0.1)) 12 | (fp_line (start 1.27 3.81) (end -1.27 3.81) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -1.27 3.81) (end -1.27 -0.635) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -1.27 -0.635) (end -0.635 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -1.33 3.87) (end 1.33 3.87) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -1.33 1.27) (end -1.33 3.87) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 1.33 1.27) (end 1.33 3.87) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.8 -1.8) (end -1.8 4.35) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start -1.8 4.35) (end 1.8 4.35) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start 1.8 4.35) (end 1.8 -1.8) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start 1.8 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 25 | (fp_text user %R (at 0 1.27 180) (layer F.Fab) 26 | (effects (font (size 1 1) (thickness 0.15))) 27 | ) 28 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 29 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 30 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x02_P2.54mm_Vertical.wrl 31 | (at (xyz 0 0 0)) 32 | (scale (xyz 1 1 1)) 33 | (rotate (xyz 0 0 0)) 34 | ) 35 | ) 36 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinHeader_2x02_P2.54mm_Vertical.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_Vertical (layer F.Cu) (tedit 59FED5CC) 2 | (descr "Through hole straight pin header, 2x02, 2.54mm pitch, double rows") 3 | (tags "Through hole pin header THT 2x02 2.54mm double row") 4 | (fp_text reference J2 (at 1.27 -2.33) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value SNOOZE_BUTTON (at -2.54 2.286 90) (layer F.SilkS) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start 0 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start 3.81 -1.27) (end 3.81 3.81) (layer F.Fab) (width 0.1)) 12 | (fp_line (start 3.81 3.81) (end -1.27 3.81) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -1.27 3.81) (end -1.27 0) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -1.27 0) (end 0 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -1.33 3.87) (end 3.87 3.87) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -1.33 1.27) (end -1.33 3.87) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 3.87 -1.33) (end 3.87 3.87) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.33 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.27 1.27) (end 1.27 -1.33) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 1.27 -1.33) (end 3.87 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -1.8 -1.8) (end -1.8 4.35) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.8 4.35) (end 4.35 4.35) (layer F.CrtYd) (width 0.05)) 25 | (fp_line (start 4.35 4.35) (end 4.35 -1.8) (layer F.CrtYd) (width 0.05)) 26 | (fp_line (start 4.35 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 27 | (fp_text user %R (at 1.27 1.27 90) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 2 thru_hole oval (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 3 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_2x02_P2.54mm_Vertical.wrl 35 | (at (xyz 0 0 0)) 36 | (scale (xyz 1 1 1)) 37 | (rotate (xyz 0 0 0)) 38 | ) 39 | ) 40 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinHeader_2x08_P2.54mm_Vertical.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_Vertical (layer F.Cu) (tedit 59FED5CC) 2 | (descr "Through hole straight pin header, 2x08, 2.54mm pitch, double rows") 3 | (tags "Through hole pin header THT 2x08 2.54mm double row") 4 | (fp_text reference J4 (at 5.334 9.144 -90) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value FRONT_PNL (at -2.794 8.636 -90) (layer F.SilkS) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_text user %R (at 1.27 8.89 -270) (layer F.Fab) 11 | (effects (font (size 1 1) (thickness 0.15))) 12 | ) 13 | (fp_line (start 4.35 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 14 | (fp_line (start 4.35 19.55) (end 4.35 -1.8) (layer F.CrtYd) (width 0.05)) 15 | (fp_line (start -1.8 19.55) (end 4.35 19.55) (layer F.CrtYd) (width 0.05)) 16 | (fp_line (start -1.8 -1.8) (end -1.8 19.55) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.27 -1.33) (end 3.87 -1.33) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 1.27 1.27) (end 1.27 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.33 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start 3.87 -1.33) (end 3.87 19.11) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -1.33 1.27) (end -1.33 19.11) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start -1.33 19.11) (end 3.87 19.11) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start -1.27 0) (end 0 -1.27) (layer F.Fab) (width 0.1)) 26 | (fp_line (start -1.27 19.05) (end -1.27 0) (layer F.Fab) (width 0.1)) 27 | (fp_line (start 3.81 19.05) (end -1.27 19.05) (layer F.Fab) (width 0.1)) 28 | (fp_line (start 3.81 -1.27) (end 3.81 19.05) (layer F.Fab) (width 0.1)) 29 | (fp_line (start 0 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.1)) 30 | (pad 16 thru_hole oval (at 2.54 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 15 thru_hole oval (at 0 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 14 thru_hole oval (at 2.54 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 13 thru_hole oval (at 0 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (pad 12 thru_hole oval (at 2.54 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 35 | (pad 11 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 36 | (pad 10 thru_hole oval (at 2.54 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 37 | (pad 9 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 38 | (pad 8 thru_hole oval (at 2.54 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 39 | (pad 7 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 40 | (pad 6 thru_hole oval (at 2.54 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 41 | (pad 5 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 42 | (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 43 | (pad 3 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 44 | (pad 2 thru_hole oval (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 45 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 46 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_2x08_P2.54mm_Vertical.wrl 47 | (at (xyz 0 0 0)) 48 | (scale (xyz 1 1 1)) 49 | (rotate (xyz 0 0 0)) 50 | ) 51 | ) 52 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinHeader_2x08_P2.54mm_Vertical_REV.kicad_mod: -------------------------------------------------------------------------------- 1 | (module PinHeader_2x08_P2.54mm_Vertical_REV (layer F.Cu) (tedit 5E2F0A9A) 2 | (descr "Through hole straight pin header, 2x08, 2.54mm pitch, double rows") 3 | (tags "Through hole pin header THT 2x08 2.54mm double row") 4 | (fp_text reference REF** (at 1.27 -2.33) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value PinHeader_2x08_P2.54mm_Vertical_REV (at 1.27 20.11) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start 0 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start 3.81 -1.27) (end 3.81 19.05) (layer F.Fab) (width 0.1)) 12 | (fp_line (start 3.81 19.05) (end -1.27 19.05) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -1.27 19.05) (end -1.27 0) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -1.27 0) (end 0 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -1.33 19.11) (end 3.87 19.11) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -1.33 1.27) (end -1.33 19.11) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 3.87 -1.33) (end 3.87 19.11) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.33 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.27 1.27) (end 1.27 -1.33) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 1.27 -1.33) (end 3.87 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.33 0) (end -1.33 -1.33) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -1.33 -1.33) (end 0 -1.33) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -1.8 -1.8) (end -1.8 19.55) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.8 19.55) (end 4.35 19.55) (layer F.CrtYd) (width 0.05)) 25 | (fp_line (start 4.35 19.55) (end 4.35 -1.8) (layer F.CrtYd) (width 0.05)) 26 | (fp_line (start 4.35 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 27 | (fp_text user %R (at 1.27 8.89 90) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (pad 2 thru_hole circle (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 1 thru_hole rect (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 4 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 3 thru_hole oval (at 2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (pad 6 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 35 | (pad 5 thru_hole oval (at 2.54 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 36 | (pad 8 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 37 | (pad 7 thru_hole oval (at 2.54 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 38 | (pad 10 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 39 | (pad 9 thru_hole oval (at 2.54 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 40 | (pad 12 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 41 | (pad 11 thru_hole oval (at 2.54 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 42 | (pad 14 thru_hole oval (at 0 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 43 | (pad 13 thru_hole oval (at 2.54 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 44 | (pad 16 thru_hole oval (at 0 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 45 | (pad 15 thru_hole oval (at 2.54 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 46 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_2x08_P2.54mm_Vertical.wrl 47 | (at (xyz 0 0 0)) 48 | (scale (xyz 1 1 1)) 49 | (rotate (xyz 0 0 0)) 50 | ) 51 | ) 52 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinSocket_1x06_P2.54mm_Vertical.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_Vertical (layer F.Cu) (tedit 5A19A430) 2 | (descr "Through hole straight socket strip, 1x06, 2.54mm pitch, single row (from Kicad 4.0.7), script generated") 3 | (tags "Through hole socket strip THT 1x06 2.54mm single row") 4 | (fp_text reference U2 (at 0 -2.77) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value DS3231_BREAKOUT (at 2.714001 6.313999 90) (layer F.SilkS) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start -1.27 -1.27) (end 0.635 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start 0.635 -1.27) (end 1.27 -0.635) (layer F.Fab) (width 0.1)) 12 | (fp_line (start 1.27 -0.635) (end 1.27 13.97) (layer F.Fab) (width 0.1)) 13 | (fp_line (start 1.27 13.97) (end -1.27 13.97) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -1.27 13.97) (end -1.27 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -1.33 1.27) (end -1.33 14.03) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start -1.33 14.03) (end 1.33 14.03) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 1.33 1.27) (end 1.33 14.03) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.33 -1.33) (end 1.33 0) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 0 -1.33) (end 1.33 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.8 -1.8) (end 1.75 -1.8) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start 1.75 -1.8) (end 1.75 14.45) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start 1.75 14.45) (end -1.8 14.45) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.8 14.45) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 25 | (fp_text user %R (at 0 6.35 -90) (layer F.Fab) 26 | (effects (font (size 1 1) (thickness 0.15))) 27 | ) 28 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 29 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 30 | (pad 3 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 4 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 5 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 6 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (model ${KISYS3DMOD}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x06_P2.54mm_Vertical.wrl 35 | (at (xyz 0 0 0)) 36 | (scale (xyz 1 1 1)) 37 | (rotate (xyz 0 0 0)) 38 | ) 39 | ) 40 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/PinSocket_1x07_P2.54mm_Vertical.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinSocket_2.54mm:PinSocket_1x07_P2.54mm_Vertical (layer F.Cu) (tedit 5A19A433) 2 | (descr "Through hole straight socket strip, 1x07, 2.54mm pitch, single row (from Kicad 4.0.7), script generated") 3 | (tags "Through hole socket strip THT 1x07 2.54mm single row") 4 | (fp_text reference U3 (at 0 -2.77) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value MAX98357A_BREAKOUT (at 2.714001 7.874 90) (layer F.SilkS) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start -1.27 -1.27) (end 0.635 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start 0.635 -1.27) (end 1.27 -0.635) (layer F.Fab) (width 0.1)) 12 | (fp_line (start 1.27 -0.635) (end 1.27 16.51) (layer F.Fab) (width 0.1)) 13 | (fp_line (start 1.27 16.51) (end -1.27 16.51) (layer F.Fab) (width 0.1)) 14 | (fp_line (start -1.27 16.51) (end -1.27 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -1.33 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start -1.33 1.27) (end -1.33 16.57) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start -1.33 16.57) (end 1.33 16.57) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 1.33 1.27) (end 1.33 16.57) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.33 -1.33) (end 1.33 0) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 0 -1.33) (end 1.33 -1.33) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.8 -1.8) (end 1.75 -1.8) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start 1.75 -1.8) (end 1.75 17) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start 1.75 17) (end -1.8 17) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.8 17) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 25 | (fp_text user %R (at 0 7.62 -90) (layer F.Fab) 26 | (effects (font (size 1 1) (thickness 0.15))) 27 | ) 28 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 29 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 30 | (pad 3 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 4 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 5 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 6 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (pad 7 thru_hole oval (at 0 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 35 | (model ${KISYS3DMOD}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x07_P2.54mm_Vertical.wrl 36 | (at (xyz 0 0 0)) 37 | (scale (xyz 1 1 1)) 38 | (rotate (xyz 0 0 0)) 39 | ) 40 | ) 41 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal (layer F.Cu) (tedit 5AE5139B) 2 | (descr "Resistor, Axial_DIN0207 series, Axial, Horizontal, pin pitch=10.16mm, 0.25W = 1/4W, length*diameter=6.3*2.5mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf") 3 | (tags "Resistor Axial_DIN0207 series Axial Horizontal pin pitch 10.16mm 0.25W = 1/4W length 6.3mm diameter 2.5mm") 4 | (fp_text reference R2 (at 5.08 -2.37) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value R_US_5K (at 5.08 2.37) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_text user %R (at 5.08 0) (layer F.Fab) 11 | (effects (font (size 1 1) (thickness 0.15))) 12 | ) 13 | (fp_line (start 11.21 -1.5) (end -1.05 -1.5) (layer F.CrtYd) (width 0.05)) 14 | (fp_line (start 11.21 1.5) (end 11.21 -1.5) (layer F.CrtYd) (width 0.05)) 15 | (fp_line (start -1.05 1.5) (end 11.21 1.5) (layer F.CrtYd) (width 0.05)) 16 | (fp_line (start -1.05 -1.5) (end -1.05 1.5) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start 9.12 0) (end 8.35 0) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 1.04 0) (end 1.81 0) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 8.35 -1.37) (end 1.81 -1.37) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 8.35 1.37) (end 8.35 -1.37) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start 1.81 1.37) (end 8.35 1.37) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start 1.81 -1.37) (end 1.81 1.37) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start 10.16 0) (end 8.23 0) (layer F.Fab) (width 0.1)) 24 | (fp_line (start 0 0) (end 1.93 0) (layer F.Fab) (width 0.1)) 25 | (fp_line (start 8.23 -1.25) (end 1.93 -1.25) (layer F.Fab) (width 0.1)) 26 | (fp_line (start 8.23 1.25) (end 8.23 -1.25) (layer F.Fab) (width 0.1)) 27 | (fp_line (start 1.93 1.25) (end 8.23 1.25) (layer F.Fab) (width 0.1)) 28 | (fp_line (start 1.93 -1.25) (end 1.93 1.25) (layer F.Fab) (width 0.1)) 29 | (pad 2 thru_hole oval (at 10.16 0) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 30 | (pad 1 thru_hole circle (at 0 0) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)) 31 | (model ${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal.wrl 32 | (at (xyz 0 0 0)) 33 | (scale (xyz 1 1 1)) 34 | (rotate (xyz 0 0 0)) 35 | ) 36 | ) 37 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/SW_PUSH_6mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Button_Switch_THT:SW_PUSH_6mm (layer F.Cu) (tedit 5A02FE31) 2 | (descr https://www.omron.com/ecb/products/pdf/en-b3f.pdf) 3 | (tags "tact sw push 6mm") 4 | (fp_text reference SW1 (at -2.8956 2.286) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value SW_Push_BOOT (at 2.667 -1.9812) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_text user %R (at 3.25 2.25) (layer F.Fab) 11 | (effects (font (size 1 1) (thickness 0.15))) 12 | ) 13 | (fp_line (start 3.25 -0.75) (end 6.25 -0.75) (layer F.Fab) (width 0.1)) 14 | (fp_line (start 6.25 -0.75) (end 6.25 5.25) (layer F.Fab) (width 0.1)) 15 | (fp_line (start 6.25 5.25) (end 0.25 5.25) (layer F.Fab) (width 0.1)) 16 | (fp_line (start 0.25 5.25) (end 0.25 -0.75) (layer F.Fab) (width 0.1)) 17 | (fp_line (start 0.25 -0.75) (end 3.25 -0.75) (layer F.Fab) (width 0.1)) 18 | (fp_line (start 7.75 6) (end 8 6) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start 8 6) (end 8 5.75) (layer F.CrtYd) (width 0.05)) 20 | (fp_line (start 7.75 -1.5) (end 8 -1.5) (layer F.CrtYd) (width 0.05)) 21 | (fp_line (start 8 -1.5) (end 8 -1.25) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start -1.5 -1.25) (end -1.5 -1.5) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start -1.5 -1.5) (end -1.25 -1.5) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.5 5.75) (end -1.5 6) (layer F.CrtYd) (width 0.05)) 25 | (fp_line (start -1.5 6) (end -1.25 6) (layer F.CrtYd) (width 0.05)) 26 | (fp_line (start -1.25 -1.5) (end 7.75 -1.5) (layer F.CrtYd) (width 0.05)) 27 | (fp_line (start -1.5 5.75) (end -1.5 -1.25) (layer F.CrtYd) (width 0.05)) 28 | (fp_line (start 7.75 6) (end -1.25 6) (layer F.CrtYd) (width 0.05)) 29 | (fp_line (start 8 -1.25) (end 8 5.75) (layer F.CrtYd) (width 0.05)) 30 | (fp_line (start 1 5.5) (end 5.5 5.5) (layer F.SilkS) (width 0.12)) 31 | (fp_line (start -0.25 1.5) (end -0.25 3) (layer F.SilkS) (width 0.12)) 32 | (fp_line (start 5.5 -1) (end 1 -1) (layer F.SilkS) (width 0.12)) 33 | (fp_line (start 6.75 3) (end 6.75 1.5) (layer F.SilkS) (width 0.12)) 34 | (fp_circle (center 3.25 2.25) (end 1.25 2.5) (layer F.Fab) (width 0.1)) 35 | (pad 2 thru_hole circle (at 0 4.5 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask)) 36 | (pad 1 thru_hole circle (at 0 0 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask)) 37 | (pad 2 thru_hole circle (at 6.5 4.5 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask)) 38 | (pad 1 thru_hole circle (at 6.5 0 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask)) 39 | (model ${KISYS3DMOD}/Button_Switch_THT.3dshapes/SW_PUSH_6mm.wrl 40 | (at (xyz 0 0 0)) 41 | (scale (xyz 1 1 1)) 42 | (rotate (xyz 0 0 0)) 43 | ) 44 | ) 45 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pretty/SW_SK22H03_2P2T_RA.kicad_mod: -------------------------------------------------------------------------------- 1 | (module SW_SK22H03_2P2T_RA (layer F.Cu) (tedit 5E5DC4F4) 2 | (fp_text reference SW2 (at -1.778 -2.032) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value SW_SPDT_POWER (at 7.62 -5.842) (layer F.SilkS) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_line (start 14.478 -4.826) (end 0.254 -4.826) (layer F.CrtYd) (width 0.12)) 9 | (fp_line (start 14.478 -0.254) (end 14.478 -4.826) (layer F.CrtYd) (width 0.12)) 10 | (fp_line (start 0.254 -0.254) (end 14.478 -0.254) (layer F.CrtYd) (width 0.12)) 11 | (fp_line (start 0.254 -4.826) (end 0.254 -0.254) (layer F.CrtYd) (width 0.12)) 12 | (fp_line (start 14.732 -5.08) (end 0 -5.08) (layer F.SilkS) (width 0.12)) 13 | (fp_line (start 14.732 0) (end 14.732 -5.08) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start 0 0) (end 14.732 0) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start 0 -5.08) (end 0 0) (layer F.SilkS) (width 0.12)) 16 | (pad "" np_thru_hole circle (at 13.462 -2.54) (size 1.7 1.7) (drill 1.2) (layers *.Cu *.Mask)) 17 | (pad "" np_thru_hole circle (at 1.27 -2.54) (size 1.7 1.7) (drill 1.2) (layers *.Cu *.Mask)) 18 | (pad 2 thru_hole circle (at 7.366 -3.81) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 19 | (pad 3 thru_hole circle (at 11.272 -3.81) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 20 | (pad 1 thru_hole circle (at 3.46 -3.81) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 21 | (pad 6 thru_hole circle (at 11.272 -1.27) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 22 | (pad 5 thru_hole circle (at 7.366 -1.27) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 23 | (pad 4 thru_hole circle (at 3.46 -1.27) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask)) 24 | ) 25 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/AlarmClock.pro: -------------------------------------------------------------------------------- 1 | update=2/1/2020 9:28:39 AM 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead= 19 | CopperLayerCount=4 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.4 27 | MinViaDrill=0.3 28 | MinMicroViaDiameter=0.2 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | ViaDiameter1=0.8 33 | ViaDrill1=0.4 34 | dPairWidth1=0.2 35 | dPairGap1=0.25 36 | dPairViaGap1=0.25 37 | SilkLineWidth=0.15 38 | SilkTextSizeV=1 39 | SilkTextSizeH=1 40 | SilkTextSizeThickness=0.15 41 | SilkTextItalic=0 42 | SilkTextUpright=1 43 | CopperLineWidth=0.2 44 | CopperTextSizeV=1.5 45 | CopperTextSizeH=1.5 46 | CopperTextThickness=0.3 47 | CopperTextItalic=0 48 | CopperTextUpright=1 49 | EdgeCutLineWidth=0.09999999999999999 50 | CourtyardLineWidth=0.12 51 | OthersLineWidth=0.15 52 | OthersTextSizeV=1 53 | OthersTextSizeH=1 54 | OthersTextSizeThickness=0.15 55 | OthersTextItalic=0 56 | OthersTextUpright=1 57 | SolderMaskClearance=0 58 | SolderMaskMinWidth=0 59 | SolderPasteClearance=0 60 | SolderPasteRatio=-0 61 | [pcbnew/Layer.F.Cu] 62 | Name=F.Cu 63 | Type=0 64 | Enabled=1 65 | [pcbnew/Layer.In1.Cu] 66 | Name=In1.Cu 67 | Type=0 68 | Enabled=1 69 | [pcbnew/Layer.In2.Cu] 70 | Name=In2.Cu 71 | Type=0 72 | Enabled=1 73 | [pcbnew/Layer.In3.Cu] 74 | Name=In3.Cu 75 | Type=0 76 | Enabled=0 77 | [pcbnew/Layer.In4.Cu] 78 | Name=In4.Cu 79 | Type=0 80 | Enabled=0 81 | [pcbnew/Layer.In5.Cu] 82 | Name=In5.Cu 83 | Type=0 84 | Enabled=0 85 | [pcbnew/Layer.In6.Cu] 86 | Name=In6.Cu 87 | Type=0 88 | Enabled=0 89 | [pcbnew/Layer.In7.Cu] 90 | Name=In7.Cu 91 | Type=0 92 | Enabled=0 93 | [pcbnew/Layer.In8.Cu] 94 | Name=In8.Cu 95 | Type=0 96 | Enabled=0 97 | [pcbnew/Layer.In9.Cu] 98 | Name=In9.Cu 99 | Type=0 100 | Enabled=0 101 | [pcbnew/Layer.In10.Cu] 102 | Name=In10.Cu 103 | Type=0 104 | Enabled=0 105 | [pcbnew/Layer.In11.Cu] 106 | Name=In11.Cu 107 | Type=0 108 | Enabled=0 109 | [pcbnew/Layer.In12.Cu] 110 | Name=In12.Cu 111 | Type=0 112 | Enabled=0 113 | [pcbnew/Layer.In13.Cu] 114 | Name=In13.Cu 115 | Type=0 116 | Enabled=0 117 | [pcbnew/Layer.In14.Cu] 118 | Name=In14.Cu 119 | Type=0 120 | Enabled=0 121 | [pcbnew/Layer.In15.Cu] 122 | Name=In15.Cu 123 | Type=0 124 | Enabled=0 125 | [pcbnew/Layer.In16.Cu] 126 | Name=In16.Cu 127 | Type=0 128 | Enabled=0 129 | [pcbnew/Layer.In17.Cu] 130 | Name=In17.Cu 131 | Type=0 132 | Enabled=0 133 | [pcbnew/Layer.In18.Cu] 134 | Name=In18.Cu 135 | Type=0 136 | Enabled=0 137 | [pcbnew/Layer.In19.Cu] 138 | Name=In19.Cu 139 | Type=0 140 | Enabled=0 141 | [pcbnew/Layer.In20.Cu] 142 | Name=In20.Cu 143 | Type=0 144 | Enabled=0 145 | [pcbnew/Layer.In21.Cu] 146 | Name=In21.Cu 147 | Type=0 148 | Enabled=0 149 | [pcbnew/Layer.In22.Cu] 150 | Name=In22.Cu 151 | Type=0 152 | Enabled=0 153 | [pcbnew/Layer.In23.Cu] 154 | Name=In23.Cu 155 | Type=0 156 | Enabled=0 157 | [pcbnew/Layer.In24.Cu] 158 | Name=In24.Cu 159 | Type=0 160 | Enabled=0 161 | [pcbnew/Layer.In25.Cu] 162 | Name=In25.Cu 163 | Type=0 164 | Enabled=0 165 | [pcbnew/Layer.In26.Cu] 166 | Name=In26.Cu 167 | Type=0 168 | Enabled=0 169 | [pcbnew/Layer.In27.Cu] 170 | Name=In27.Cu 171 | Type=0 172 | Enabled=0 173 | [pcbnew/Layer.In28.Cu] 174 | Name=In28.Cu 175 | Type=0 176 | Enabled=0 177 | [pcbnew/Layer.In29.Cu] 178 | Name=In29.Cu 179 | Type=0 180 | Enabled=0 181 | [pcbnew/Layer.In30.Cu] 182 | Name=In30.Cu 183 | Type=0 184 | Enabled=0 185 | [pcbnew/Layer.B.Cu] 186 | Name=B.Cu 187 | Type=0 188 | Enabled=1 189 | [pcbnew/Layer.B.Adhes] 190 | Enabled=1 191 | [pcbnew/Layer.F.Adhes] 192 | Enabled=1 193 | [pcbnew/Layer.B.Paste] 194 | Enabled=1 195 | [pcbnew/Layer.F.Paste] 196 | Enabled=1 197 | [pcbnew/Layer.B.SilkS] 198 | Enabled=1 199 | [pcbnew/Layer.F.SilkS] 200 | Enabled=1 201 | [pcbnew/Layer.B.Mask] 202 | Enabled=1 203 | [pcbnew/Layer.F.Mask] 204 | Enabled=1 205 | [pcbnew/Layer.Dwgs.User] 206 | Enabled=1 207 | [pcbnew/Layer.Cmts.User] 208 | Enabled=1 209 | [pcbnew/Layer.Eco1.User] 210 | Enabled=1 211 | [pcbnew/Layer.Eco2.User] 212 | Enabled=1 213 | [pcbnew/Layer.Edge.Cuts] 214 | Enabled=1 215 | [pcbnew/Layer.Margin] 216 | Enabled=1 217 | [pcbnew/Layer.B.CrtYd] 218 | Enabled=1 219 | [pcbnew/Layer.F.CrtYd] 220 | Enabled=1 221 | [pcbnew/Layer.B.Fab] 222 | Enabled=1 223 | [pcbnew/Layer.F.Fab] 224 | Enabled=1 225 | [pcbnew/Layer.Rescue] 226 | Enabled=0 227 | [pcbnew/Netclasses] 228 | [pcbnew/Netclasses/Default] 229 | Name=Default 230 | Clearance=0.2 231 | TrackWidth=0.25 232 | ViaDiameter=0.8 233 | ViaDrill=0.4 234 | uViaDiameter=0.3 235 | uViaDrill=0.1 236 | dPairWidth=0.2 237 | dPairGap=0.25 238 | dPairViaGap=0.25 239 | [schematic_editor] 240 | version=1 241 | PageLayoutDescrFile= 242 | PlotDirectoryName= 243 | SubpartIdSeparator=0 244 | SubpartFirstId=65 245 | NetFmtName= 246 | SpiceAjustPassiveValues=0 247 | LabSize=50 248 | ERC_TestSimilarLabels=1 249 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedBoard_gbr.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedBoard_gbr.zip -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-B_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T16:03:33-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 16:03:33* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T16:03:33-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 16:03:33* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.120000*% 14 | %ADD11C,0.150000*% 15 | G04 APERTURE END LIST* 16 | D10* 17 | X191916000Y-43482000D02* 18 | X191916000Y-44982000D01* 19 | X190666000Y-47482000D02* 20 | X186166000Y-47482000D01* 21 | X184916000Y-44982000D02* 22 | X184916000Y-43482000D01* 23 | X186166000Y-40982000D02* 24 | X190666000Y-40982000D01* 25 | D11* 26 | X183603733Y-44600761D02* 27 | X183460876Y-44648380D01* 28 | X183222780Y-44648380D01* 29 | X183127542Y-44600761D01* 30 | X183079923Y-44553142D01* 31 | X183032304Y-44457904D01* 32 | X183032304Y-44362666D01* 33 | X183079923Y-44267428D01* 34 | X183127542Y-44219809D01* 35 | X183222780Y-44172190D01* 36 | X183413257Y-44124571D01* 37 | X183508495Y-44076952D01* 38 | X183556114Y-44029333D01* 39 | X183603733Y-43934095D01* 40 | X183603733Y-43838857D01* 41 | X183556114Y-43743619D01* 42 | X183508495Y-43696000D01* 43 | X183413257Y-43648380D01* 44 | X183175161Y-43648380D01* 45 | X183032304Y-43696000D01* 46 | X182698971Y-43648380D02* 47 | X182460876Y-44648380D01* 48 | X182270400Y-43934095D01* 49 | X182079923Y-44648380D01* 50 | X181841828Y-43648380D01* 51 | X180937066Y-44648380D02* 52 | X181508495Y-44648380D01* 53 | X181222780Y-44648380D02* 54 | X181222780Y-43648380D01* 55 | X181318019Y-43791238D01* 56 | X181413257Y-43886476D01* 57 | X181508495Y-43934095D01* 58 | M02* 59 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T16:03:33-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 16:03:33* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.100000*% 13 | G04 APERTURE END LIST* 14 | D10* 15 | X196596000Y-89408000D02* 16 | X196596000Y-90170000D01* 17 | X91694000Y-89408000D02* 18 | X91694000Y-90170000D01* 19 | X91694000Y-89408000D02* 20 | X91694000Y-38608000D01* 21 | X196596000Y-38608000D02* 22 | X196596000Y-89408000D01* 23 | X91694000Y-38608000D02* 24 | X196596000Y-38608000D01* 25 | X192420666Y-78994000D02* 26 | G75* 27 | G03X192420666Y-78994000I-1666666J0D01* 28 | G01* 29 | X188254000Y-78994000D02* 30 | X193254000Y-78994000D01* 31 | X190754000Y-76494000D02* 32 | X190754000Y-81494000D01* 33 | X99456666Y-42418000D02* 34 | G75* 35 | G03X99456666Y-42418000I-1666666J0D01* 36 | G01* 37 | X95290000Y-42418000D02* 38 | X100290000Y-42418000D01* 39 | X97790000Y-39918000D02* 40 | X97790000Y-44918000D01* 41 | X196596000Y-140970000D02* 42 | X91694000Y-140970000D01* 43 | X91694000Y-140970000D02* 44 | X91694000Y-90170000D01* 45 | X196596000Y-90170000D02* 46 | X196596000Y-140970000D01* 47 | X100472666Y-94234000D02* 48 | G75* 49 | G03X100472666Y-94234000I-1666666J0D01* 50 | G01* 51 | X96306000Y-94234000D02* 52 | X101306000Y-94234000D01* 53 | X98806000Y-91734000D02* 54 | X98806000Y-96734000D01* 55 | X182768666Y-137160000D02* 56 | G75* 57 | G03X182768666Y-137160000I-1666666J0D01* 58 | G01* 59 | X178602000Y-137160000D02* 60 | X183602000Y-137160000D01* 61 | X181102000Y-134660000D02* 62 | X181102000Y-139660000D01* 63 | M02* 64 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-F_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T16:03:33-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 16:03:33* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 4:03:36 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T16:03:36-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,NonPlated,1,4,NPTH 7 | FMAT,2 8 | INCH 9 | T1C0.0472 10 | % 11 | G90 12 | G05 13 | T1 14 | X7.08Y-3.41 15 | X7.56Y-3.41 16 | T0 17 | M30 18 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr/CombinedPnl_pcb-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 4:03:36 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T16:03:36-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,Plated,1,4,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0236 11 | T3C0.0300 12 | T4C0.0315 13 | T5C0.0394 14 | T6C0.0402 15 | T7C0.0433 16 | % 17 | G90 18 | G05 19 | T1 20 | X4.31Y-2.96 21 | X4.35Y-2.2915 22 | X5.2Y-3.0 23 | X5.45Y-2.66 24 | X5.59Y-2.62 25 | X5.82Y-2.7015 26 | X6.17Y-2.04 27 | X6.48Y-1.9 28 | T2 29 | X6.8313Y-1.68 30 | X6.91Y-1.68 31 | T3 32 | X7.18Y-3.36 33 | X7.18Y-3.46 34 | X7.32Y-3.36 35 | X7.32Y-3.46 36 | X7.46Y-3.36 37 | X7.46Y-3.46 38 | T4 39 | X5.19Y-2.47 40 | X5.19Y-2.87 41 | X6.74Y-1.95 42 | X7.14Y-1.95 43 | X4.19Y-1.73 44 | X4.19Y-2.13 45 | X5.215Y-3.975 46 | X5.2937Y-3.975 47 | X5.84Y-4.65 48 | X5.84Y-4.75 49 | X5.84Y-4.85 50 | X5.84Y-4.95 51 | X5.84Y-5.05 52 | X5.84Y-5.15 53 | X6.34Y-4.65 54 | X6.34Y-4.75 55 | X6.34Y-4.85 56 | X6.34Y-4.95 57 | X6.34Y-5.05 58 | X6.34Y-5.15 59 | X4.46Y-1.7513 60 | X4.46Y-1.83 61 | T5 62 | X3.86Y-2.52 63 | X3.86Y-2.62 64 | X3.86Y-2.72 65 | X3.86Y-2.82 66 | X3.86Y-2.92 67 | X3.86Y-3.02 68 | X3.86Y-3.12 69 | X3.86Y-3.22 70 | X3.96Y-2.52 71 | X3.96Y-2.62 72 | X3.96Y-2.72 73 | X3.96Y-2.82 74 | X3.96Y-2.92 75 | X3.96Y-3.02 76 | X3.96Y-3.12 77 | X3.96Y-3.22 78 | X5.29Y-4.75 79 | X5.29Y-4.85 80 | X3.86Y-2.21 81 | X3.86Y-2.31 82 | X3.96Y-2.21 83 | X3.96Y-2.31 84 | X7.37Y-4.56 85 | X7.37Y-4.66 86 | X7.37Y-4.76 87 | X7.37Y-4.86 88 | X7.37Y-4.96 89 | X7.37Y-5.06 90 | X7.37Y-5.16 91 | X7.37Y-5.26 92 | X7.47Y-4.56 93 | X7.47Y-4.66 94 | X7.47Y-4.76 95 | X7.47Y-4.86 96 | X7.47Y-4.96 97 | X7.47Y-5.06 98 | X7.47Y-5.16 99 | X7.47Y-5.26 100 | X4.91Y-1.84 101 | X5.1069Y-1.84 102 | X3.86Y-1.93 103 | X3.86Y-2.03 104 | X3.96Y-1.93 105 | X3.96Y-2.03 106 | X6.095Y-3.98 107 | X6.195Y-3.98 108 | X6.295Y-3.98 109 | X6.395Y-3.98 110 | X6.495Y-3.98 111 | X6.595Y-3.98 112 | X5.86Y-1.69 113 | X5.86Y-1.79 114 | X5.96Y-1.69 115 | X5.96Y-1.79 116 | X6.06Y-1.69 117 | X6.06Y-1.79 118 | X6.16Y-1.69 119 | X6.16Y-1.79 120 | X6.26Y-1.69 121 | X6.26Y-1.79 122 | X6.36Y-1.69 123 | X6.36Y-1.79 124 | X6.46Y-1.69 125 | X6.46Y-1.79 126 | X6.56Y-1.69 127 | X6.56Y-1.79 128 | X4.3Y-3.9819 129 | X4.4Y-3.9819 130 | X4.5Y-3.9819 131 | X4.6Y-3.9819 132 | X4.7Y-3.9819 133 | X4.8Y-3.9819 134 | X4.9Y-3.9819 135 | T6 136 | X4.88Y-2.24 137 | X4.88Y-3.34 138 | X4.98Y-2.24 139 | X4.98Y-3.34 140 | X5.08Y-2.24 141 | X5.08Y-3.34 142 | X5.18Y-2.24 143 | X5.18Y-3.34 144 | X5.28Y-2.24 145 | X5.28Y-3.34 146 | X5.38Y-2.24 147 | X5.38Y-3.34 148 | X5.48Y-2.24 149 | X5.48Y-3.34 150 | X5.58Y-2.24 151 | X5.58Y-3.34 152 | X5.68Y-2.24 153 | X5.68Y-3.34 154 | X5.78Y-2.24 155 | X5.78Y-3.34 156 | X5.88Y-2.24 157 | X5.88Y-3.34 158 | X5.98Y-2.24 159 | X5.98Y-3.34 160 | X6.08Y-2.24 161 | X6.08Y-3.34 162 | X6.18Y-2.24 163 | X6.18Y-3.34 164 | X6.28Y-2.24 165 | X6.28Y-3.34 166 | X6.38Y-2.24 167 | X6.38Y-3.34 168 | X6.48Y-2.24 169 | X6.48Y-3.34 170 | X6.58Y-2.24 171 | X6.58Y-3.34 172 | X6.68Y-2.24 173 | X6.68Y-3.34 174 | X6.78Y-2.24 175 | X6.78Y-3.34 176 | T7 177 | X7.29Y-1.6528 178 | X7.29Y-1.83 179 | X7.5459Y-1.6528 180 | X7.5459Y-1.83 181 | T0 182 | M30 183 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedBoard_gbr_r1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedBoard_gbr_r1.zip -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-B_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-03-06T14:14:40-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r1,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-03-06 14:14:40* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-03-06T14:14:40-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r1,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-03-06 14:14:40* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.120000*% 14 | %ADD11C,0.150000*% 15 | G04 APERTURE END LIST* 16 | D10* 17 | X191500000Y-49000000D02* 18 | X191500000Y-50500000D01* 19 | X190250000Y-53000000D02* 20 | X185750000Y-53000000D01* 21 | X184500000Y-50500000D02* 22 | X184500000Y-49000000D01* 23 | X185750000Y-46500000D02* 24 | X190250000Y-46500000D01* 25 | D11* 26 | X189583333Y-54654761D02* 27 | X189440476Y-54702380D01* 28 | X189202380Y-54702380D01* 29 | X189107142Y-54654761D01* 30 | X189059523Y-54607142D01* 31 | X189011904Y-54511904D01* 32 | X189011904Y-54416666D01* 33 | X189059523Y-54321428D01* 34 | X189107142Y-54273809D01* 35 | X189202380Y-54226190D01* 36 | X189392857Y-54178571D01* 37 | X189488095Y-54130952D01* 38 | X189535714Y-54083333D01* 39 | X189583333Y-53988095D01* 40 | X189583333Y-53892857D01* 41 | X189535714Y-53797619D01* 42 | X189488095Y-53750000D01* 43 | X189392857Y-53702380D01* 44 | X189154761Y-53702380D01* 45 | X189011904Y-53750000D01* 46 | X188678571Y-53702380D02* 47 | X188440476Y-54702380D01* 48 | X188250000Y-53988095D01* 49 | X188059523Y-54702380D01* 50 | X187821428Y-53702380D01* 51 | X186916666Y-54702380D02* 52 | X187488095Y-54702380D01* 53 | X187202380Y-54702380D02* 54 | X187202380Y-53702380D01* 55 | X187297619Y-53845238D01* 56 | X187392857Y-53940476D01* 57 | X187488095Y-53988095D01* 58 | M02* 59 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-03-06T14:14:40-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r1,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-03-06 14:14:40* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.100000*% 13 | G04 APERTURE END LIST* 14 | D10* 15 | X196596000Y-89408000D02* 16 | X196596000Y-90170000D01* 17 | X91694000Y-89408000D02* 18 | X91694000Y-90170000D01* 19 | X91694000Y-89408000D02* 20 | X91694000Y-38608000D01* 21 | X196596000Y-38608000D02* 22 | X196596000Y-89408000D01* 23 | X91694000Y-38608000D02* 24 | X196596000Y-38608000D01* 25 | X196596000Y-140970000D02* 26 | X91694000Y-140970000D01* 27 | X91694000Y-140970000D02* 28 | X91694000Y-90170000D01* 29 | X196596000Y-90170000D02* 30 | X196596000Y-140970000D01* 31 | M02* 32 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-F_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-03-06T14:14:40-05:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r1,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-03-06 14:14:40* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 3/6/2020 2:14:38 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-03-06T14:14:38-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,NonPlated,1,4,NPTH 7 | FMAT,2 8 | INCH 9 | T1C0.0472 10 | T2C0.1063 11 | % 12 | G90 13 | G05 14 | T1 15 | X7.0677Y-3.3941 16 | X7.5477Y-3.3941 17 | T2 18 | X3.8386Y-3.6909 19 | X4.1181Y-3.378 20 | X7.5039Y-3.1201 21 | X7.5039Y-3.6909 22 | X7.5039Y-1.6457 23 | X7.2126Y-5.4252 24 | X3.8425Y-5.4252 25 | X3.8425Y-1.6457 26 | T0 27 | M30 28 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r1/CombinedPnl_pcb-r1-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 3/6/2020 2:14:38 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-03-06T14:14:38-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,Plated,1,4,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0236 11 | T3C0.0300 12 | T4C0.0315 13 | T5C0.0394 14 | T6C0.0402 15 | T7C0.0433 16 | % 17 | G90 18 | G05 19 | T1 20 | X4.31Y-2.96 21 | X4.35Y-2.2915 22 | X5.2Y-3.0 23 | X5.45Y-2.66 24 | X5.59Y-2.62 25 | X5.82Y-2.7015 26 | X6.17Y-2.04 27 | X6.48Y-1.9 28 | T2 29 | X6.9055Y-1.6457 30 | X6.9055Y-1.7244 31 | T3 32 | X7.1539Y-3.3441 33 | X7.1539Y-3.4441 34 | X7.3077Y-3.3441 35 | X7.3077Y-3.4441 36 | X7.4615Y-3.3441 37 | X7.4615Y-3.4441 38 | T4 39 | X5.19Y-2.47 40 | X5.19Y-2.87 41 | X6.6669Y-1.95 42 | X7.0669Y-1.95 43 | X4.498Y-2.126 44 | X4.6949Y-2.126 45 | X7.1358Y-3.9567 46 | X7.3327Y-3.9567 47 | X4.7638Y-1.6437 48 | X4.7638Y-1.8406 49 | X4.19Y-1.73 50 | X4.19Y-2.13 51 | X5.215Y-3.975 52 | X5.2937Y-3.975 53 | X5.8374Y-4.6508 54 | X5.8374Y-4.7508 55 | X5.8374Y-4.8508 56 | X5.8374Y-4.9508 57 | X5.8374Y-5.0508 58 | X5.8374Y-5.1508 59 | X6.3374Y-4.6508 60 | X6.3374Y-4.7508 61 | X6.3374Y-4.8508 62 | X6.3374Y-4.9508 63 | X6.3374Y-5.0508 64 | X6.3374Y-5.1508 65 | X4.46Y-1.7513 66 | X4.46Y-1.83 67 | T5 68 | X3.86Y-1.93 69 | X3.86Y-2.03 70 | X3.96Y-1.93 71 | X3.96Y-2.03 72 | X5.0098Y-1.811 73 | X5.2067Y-1.811 74 | X7.37Y-4.56 75 | X7.37Y-4.66 76 | X7.37Y-4.76 77 | X7.37Y-4.86 78 | X7.37Y-4.96 79 | X7.37Y-5.06 80 | X7.37Y-5.16 81 | X7.37Y-5.26 82 | X7.47Y-4.56 83 | X7.47Y-4.66 84 | X7.47Y-4.76 85 | X7.47Y-4.86 86 | X7.47Y-4.96 87 | X7.47Y-5.06 88 | X7.47Y-5.16 89 | X7.47Y-5.26 90 | X3.86Y-2.52 91 | X3.86Y-2.62 92 | X3.86Y-2.72 93 | X3.86Y-2.82 94 | X3.86Y-2.92 95 | X3.86Y-3.02 96 | X3.86Y-3.12 97 | X3.86Y-3.22 98 | X3.96Y-2.52 99 | X3.96Y-2.62 100 | X3.96Y-2.72 101 | X3.96Y-2.82 102 | X3.96Y-2.92 103 | X3.96Y-3.02 104 | X3.96Y-3.12 105 | X3.96Y-3.22 106 | X5.29Y-4.75 107 | X5.29Y-4.85 108 | X4.3Y-3.9819 109 | X4.4Y-3.9819 110 | X4.5Y-3.9819 111 | X4.6Y-3.9819 112 | X4.7Y-3.9819 113 | X4.8Y-3.9819 114 | X4.9Y-3.9819 115 | X6.095Y-3.98 116 | X6.195Y-3.98 117 | X6.295Y-3.98 118 | X6.395Y-3.98 119 | X6.495Y-3.98 120 | X6.595Y-3.98 121 | X5.86Y-1.69 122 | X5.86Y-1.79 123 | X5.96Y-1.69 124 | X5.96Y-1.79 125 | X6.06Y-1.69 126 | X6.06Y-1.79 127 | X6.16Y-1.69 128 | X6.16Y-1.79 129 | X6.26Y-1.69 130 | X6.26Y-1.79 131 | X6.36Y-1.69 132 | X6.36Y-1.79 133 | X6.46Y-1.69 134 | X6.46Y-1.79 135 | X6.56Y-1.69 136 | X6.56Y-1.79 137 | X3.86Y-2.21 138 | X3.86Y-2.31 139 | X3.96Y-2.21 140 | X3.96Y-2.31 141 | T6 142 | X4.8827Y-2.235 143 | X4.8827Y-3.2803 144 | X4.9827Y-2.235 145 | X4.9827Y-3.2803 146 | X5.0827Y-2.235 147 | X5.0827Y-3.2803 148 | X5.1827Y-2.235 149 | X5.1827Y-3.2803 150 | X5.2827Y-2.235 151 | X5.2827Y-3.2803 152 | X5.3827Y-2.235 153 | X5.3827Y-3.2803 154 | X5.4827Y-2.235 155 | X5.4827Y-3.2803 156 | X5.5827Y-2.235 157 | X5.5827Y-3.2803 158 | X5.6827Y-2.235 159 | X5.6827Y-3.2803 160 | X5.7827Y-2.235 161 | X5.7827Y-3.2803 162 | X5.8827Y-2.235 163 | X5.8827Y-3.2803 164 | X5.9827Y-2.235 165 | X5.9827Y-3.2803 166 | X6.0827Y-2.235 167 | X6.0827Y-3.2803 168 | X6.1827Y-2.235 169 | X6.1827Y-3.2803 170 | X6.2827Y-2.235 171 | X6.2827Y-3.2803 172 | X6.3827Y-2.235 173 | X6.3827Y-3.2803 174 | X6.4827Y-2.235 175 | X6.4827Y-3.2803 176 | X6.5827Y-2.235 177 | X6.5827Y-3.2803 178 | X6.6827Y-2.235 179 | X6.6827Y-3.2803 180 | X6.7827Y-2.235 181 | X6.7827Y-3.2803 182 | T7 183 | X7.2736Y-1.8701 184 | X7.2736Y-2.0472 185 | X7.5295Y-1.8701 186 | X7.5295Y-2.0472 187 | T0 188 | M30 189 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedBoard_gbr_r2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedBoard_gbr_r2.zip -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-B_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-05-02T21:00:29-04:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r2,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-05-02 21:00:29* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-05-02T21:00:29-04:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r2,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-05-02 21:00:29* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.120000*% 14 | %ADD11C,0.150000*% 15 | G04 APERTURE END LIST* 16 | D10* 17 | X133750000Y-43736000D02* 18 | X133750000Y-45236000D01* 19 | X132500000Y-47736000D02* 20 | X128000000Y-47736000D01* 21 | X126750000Y-45236000D02* 22 | X126750000Y-43736000D01* 23 | X128000000Y-41236000D02* 24 | X132500000Y-41236000D01* 25 | D11* 26 | X131833333Y-49390761D02* 27 | X131690476Y-49438380D01* 28 | X131452380Y-49438380D01* 29 | X131357142Y-49390761D01* 30 | X131309523Y-49343142D01* 31 | X131261904Y-49247904D01* 32 | X131261904Y-49152666D01* 33 | X131309523Y-49057428D01* 34 | X131357142Y-49009809D01* 35 | X131452380Y-48962190D01* 36 | X131642857Y-48914571D01* 37 | X131738095Y-48866952D01* 38 | X131785714Y-48819333D01* 39 | X131833333Y-48724095D01* 40 | X131833333Y-48628857D01* 41 | X131785714Y-48533619D01* 42 | X131738095Y-48486000D01* 43 | X131642857Y-48438380D01* 44 | X131404761Y-48438380D01* 45 | X131261904Y-48486000D01* 46 | X130928571Y-48438380D02* 47 | X130690476Y-49438380D01* 48 | X130500000Y-48724095D01* 49 | X130309523Y-49438380D01* 50 | X130071428Y-48438380D01* 51 | X129166666Y-49438380D02* 52 | X129738095Y-49438380D01* 53 | X129452380Y-49438380D02* 54 | X129452380Y-48438380D01* 55 | X129547619Y-48581238D01* 56 | X129642857Y-48676476D01* 57 | X129738095Y-48724095D01* 58 | M02* 59 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-05-02T21:00:29-04:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r2,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-05-02 21:00:29* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.100000*% 13 | G04 APERTURE END LIST* 14 | D10* 15 | X196596000Y-89408000D02* 16 | X196596000Y-90170000D01* 17 | X91694000Y-89408000D02* 18 | X91694000Y-90170000D01* 19 | X91694000Y-89408000D02* 20 | X91694000Y-38608000D01* 21 | X196596000Y-38608000D02* 22 | X196596000Y-89408000D01* 23 | X91694000Y-38608000D02* 24 | X196596000Y-38608000D01* 25 | X196596000Y-140970000D02* 26 | X91694000Y-140970000D01* 27 | X91694000Y-140970000D02* 28 | X91694000Y-90170000D01* 29 | X196596000Y-90170000D02* 30 | X196596000Y-140970000D01* 31 | M02* 32 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-F_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-05-02T21:00:29-04:00* 3 | G04 #@! TF.ProjectId,CombinedPnl_pcb-r2,436f6d62-696e-4656-9450-6e6c5f706362,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-05-02 21:00:29* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 5/2/2020 9:00:21 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-05-02T21:00:21-04:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,NonPlated,1,4,NPTH 7 | FMAT,2 8 | INCH 9 | T1C0.0472 10 | T2C0.1063 11 | % 12 | G90 13 | G05 14 | T1 15 | X7.0677Y-3.3941 16 | X7.5477Y-3.3941 17 | T2 18 | X3.8425Y-1.6457 19 | X4.1181Y-3.378 20 | X7.5039Y-1.6457 21 | X3.8386Y-3.6909 22 | X3.8425Y-5.4252 23 | X7.5039Y-3.1201 24 | X7.2126Y-5.4252 25 | X7.5039Y-3.6909 26 | T0 27 | M30 28 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedBoard_gbr_r2/CombinedPnl_pcb-r2-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 5/2/2020 9:00:21 PM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-05-02T21:00:21-04:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,Plated,1,4,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0236 11 | T3C0.0300 12 | T4C0.0315 13 | T5C0.0394 14 | T6C0.0402 15 | T7C0.0433 16 | % 17 | G90 18 | G05 19 | T1 20 | X5.2323Y-2.3583 21 | X5.283Y-2.03 22 | X5.6791Y-1.9823 23 | X5.9173Y-1.9291 24 | X5.9823Y-1.9311 25 | X6.0374Y-1.9311 26 | X6.378Y-2.5157 27 | X6.3799Y-2.4449 28 | X6.5256Y-2.0236 29 | X6.5827Y-2.4409 30 | T2 31 | X7.4094Y-1.9429 32 | X7.4094Y-2.0217 33 | T3 34 | X7.1539Y-3.3441 35 | X7.1539Y-3.4441 36 | X7.3077Y-3.3441 37 | X7.3077Y-3.4441 38 | X7.4615Y-3.3441 39 | X7.4615Y-3.4441 40 | T4 41 | X7.1358Y-3.9567 42 | X7.3327Y-3.9567 43 | X4.6063Y-2.8563 44 | X4.6063Y-3.0531 45 | X7.1713Y-1.687 46 | X7.1713Y-1.7657 47 | X5.215Y-3.975 48 | X5.2937Y-3.975 49 | X5.0Y-2.52 50 | X5.0Y-2.92 51 | X4.3425Y-3.187 52 | X4.3425Y-3.3839 53 | X5.8374Y-4.6508 54 | X5.8374Y-4.7508 55 | X5.8374Y-4.8508 56 | X5.8374Y-4.9508 57 | X5.8374Y-5.0508 58 | X5.8374Y-5.1508 59 | X6.3374Y-4.6508 60 | X6.3374Y-4.7508 61 | X6.3374Y-4.8508 62 | X6.3374Y-4.9508 63 | X6.3374Y-5.0508 64 | X6.3374Y-5.1508 65 | X5.9327Y-2.7874 66 | X6.3327Y-2.7874 67 | X6.7972Y-2.0217 68 | X7.1972Y-2.0217 69 | T5 70 | X5.29Y-4.75 71 | X5.29Y-4.85 72 | X3.86Y-1.93 73 | X3.86Y-2.03 74 | X3.96Y-1.93 75 | X3.96Y-2.03 76 | X7.37Y-4.56 77 | X7.37Y-4.66 78 | X7.37Y-4.76 79 | X7.37Y-4.86 80 | X7.37Y-4.96 81 | X7.37Y-5.06 82 | X7.37Y-5.16 83 | X7.37Y-5.26 84 | X7.47Y-4.56 85 | X7.47Y-4.66 86 | X7.47Y-4.76 87 | X7.47Y-4.86 88 | X7.47Y-4.96 89 | X7.47Y-5.06 90 | X7.47Y-5.16 91 | X7.47Y-5.26 92 | X3.86Y-2.52 93 | X3.86Y-2.62 94 | X3.86Y-2.72 95 | X3.86Y-2.82 96 | X3.86Y-2.92 97 | X3.86Y-3.02 98 | X3.86Y-3.12 99 | X3.86Y-3.22 100 | X3.96Y-2.52 101 | X3.96Y-2.62 102 | X3.96Y-2.72 103 | X3.96Y-2.82 104 | X3.96Y-2.92 105 | X3.96Y-3.02 106 | X3.96Y-3.12 107 | X3.96Y-3.22 108 | X6.085Y-3.98 109 | X6.185Y-3.98 110 | X6.285Y-3.98 111 | X6.385Y-3.98 112 | X6.485Y-3.98 113 | X6.585Y-3.98 114 | X6.18Y-1.69 115 | X6.18Y-1.79 116 | X6.28Y-1.69 117 | X6.28Y-1.79 118 | X6.38Y-1.69 119 | X6.38Y-1.79 120 | X6.48Y-1.69 121 | X6.48Y-1.79 122 | X6.58Y-1.69 123 | X6.58Y-1.79 124 | X6.68Y-1.69 125 | X6.68Y-1.79 126 | X6.78Y-1.69 127 | X6.78Y-1.79 128 | X6.88Y-1.69 129 | X6.88Y-1.79 130 | X3.86Y-2.22 131 | X3.86Y-2.32 132 | X3.96Y-2.22 133 | X3.96Y-2.32 134 | X4.3Y-3.9819 135 | X4.4Y-3.9819 136 | X4.5Y-3.9819 137 | X4.6Y-3.9819 138 | X4.7Y-3.9819 139 | X4.8Y-3.9819 140 | X4.9Y-3.9819 141 | X4.2835Y-1.689 142 | X4.2835Y-1.8858 143 | T6 144 | X4.8827Y-2.235 145 | X4.8827Y-3.2803 146 | X4.9827Y-2.235 147 | X4.9827Y-3.2798 148 | X5.0827Y-2.235 149 | X5.0827Y-3.2798 150 | X5.1827Y-2.235 151 | X5.1827Y-3.2798 152 | X5.2827Y-2.235 153 | X5.2827Y-3.2798 154 | X5.3827Y-2.235 155 | X5.3827Y-3.2798 156 | X5.4827Y-2.235 157 | X5.4827Y-3.2798 158 | X5.5827Y-2.235 159 | X5.5827Y-3.2798 160 | X5.6827Y-2.235 161 | X5.6827Y-3.2798 162 | X5.7827Y-2.235 163 | X5.7827Y-3.2798 164 | X5.8827Y-2.235 165 | X5.8827Y-3.2798 166 | X5.9827Y-2.235 167 | X5.9827Y-3.2798 168 | X6.0827Y-2.235 169 | X6.0827Y-3.2798 170 | X6.1827Y-2.235 171 | X6.1827Y-3.2798 172 | X6.2827Y-2.235 173 | X6.2827Y-3.2798 174 | X6.3827Y-2.235 175 | X6.3827Y-3.2798 176 | X6.4827Y-2.235 177 | X6.4827Y-3.2798 178 | X6.5827Y-2.235 179 | X6.5827Y-3.2798 180 | X6.6827Y-2.235 181 | X6.6827Y-3.2798 182 | X6.7827Y-2.235 183 | X6.7827Y-3.2798 184 | T7 185 | X5.0Y-1.6628 186 | X5.0Y-1.84 187 | X5.2559Y-1.6628 188 | X5.2559Y-1.84 189 | T0 190 | M30 191 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedPnl_pcb-r0.pro: -------------------------------------------------------------------------------- 1 | update=22/05/2015 07:44:53 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedPnl_pcb-r1.pro: -------------------------------------------------------------------------------- 1 | update=3/2/2020 10:52:19 PM 2 | version=1 3 | last_client=pcbnew 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead=Secondary_Board.net 19 | CopperLayerCount=4 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.4 27 | MinViaDrill=0.3 28 | MinMicroViaDiameter=0.2 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | TrackWidth2=0.25 33 | TrackWidth3=0.5 34 | TrackWidth4=0.75 35 | TrackWidth5=1 36 | TrackWidth6=1.5 37 | ViaDiameter1=0.8 38 | ViaDrill1=0.4 39 | dPairWidth1=0.2 40 | dPairGap1=0.25 41 | dPairViaGap1=0.25 42 | SilkLineWidth=0.12 43 | SilkTextSizeV=1 44 | SilkTextSizeH=1 45 | SilkTextSizeThickness=0.15 46 | SilkTextItalic=0 47 | SilkTextUpright=1 48 | CopperLineWidth=0.2 49 | CopperTextSizeV=1.5 50 | CopperTextSizeH=1.5 51 | CopperTextThickness=0.3 52 | CopperTextItalic=0 53 | CopperTextUpright=1 54 | EdgeCutLineWidth=0.05 55 | CourtyardLineWidth=0.05 56 | OthersLineWidth=0.15 57 | OthersTextSizeV=1 58 | OthersTextSizeH=1 59 | OthersTextSizeThickness=0.15 60 | OthersTextItalic=0 61 | OthersTextUpright=1 62 | SolderMaskClearance=0.051 63 | SolderMaskMinWidth=0.25 64 | SolderPasteClearance=0 65 | SolderPasteRatio=0 66 | [pcbnew/Layer.F.Cu] 67 | Name=F.Cu 68 | Type=0 69 | Enabled=1 70 | [pcbnew/Layer.In1.Cu] 71 | Name=PWR 72 | Type=1 73 | Enabled=1 74 | [pcbnew/Layer.In2.Cu] 75 | Name=GND 76 | Type=1 77 | Enabled=1 78 | [pcbnew/Layer.In3.Cu] 79 | Name=In3.Cu 80 | Type=0 81 | Enabled=0 82 | [pcbnew/Layer.In4.Cu] 83 | Name=In4.Cu 84 | Type=0 85 | Enabled=0 86 | [pcbnew/Layer.In5.Cu] 87 | Name=In5.Cu 88 | Type=0 89 | Enabled=0 90 | [pcbnew/Layer.In6.Cu] 91 | Name=In6.Cu 92 | Type=0 93 | Enabled=0 94 | [pcbnew/Layer.In7.Cu] 95 | Name=In7.Cu 96 | Type=0 97 | Enabled=0 98 | [pcbnew/Layer.In8.Cu] 99 | Name=In8.Cu 100 | Type=0 101 | Enabled=0 102 | [pcbnew/Layer.In9.Cu] 103 | Name=In9.Cu 104 | Type=0 105 | Enabled=0 106 | [pcbnew/Layer.In10.Cu] 107 | Name=In10.Cu 108 | Type=0 109 | Enabled=0 110 | [pcbnew/Layer.In11.Cu] 111 | Name=In11.Cu 112 | Type=0 113 | Enabled=0 114 | [pcbnew/Layer.In12.Cu] 115 | Name=In12.Cu 116 | Type=0 117 | Enabled=0 118 | [pcbnew/Layer.In13.Cu] 119 | Name=In13.Cu 120 | Type=0 121 | Enabled=0 122 | [pcbnew/Layer.In14.Cu] 123 | Name=In14.Cu 124 | Type=0 125 | Enabled=0 126 | [pcbnew/Layer.In15.Cu] 127 | Name=In15.Cu 128 | Type=0 129 | Enabled=0 130 | [pcbnew/Layer.In16.Cu] 131 | Name=In16.Cu 132 | Type=0 133 | Enabled=0 134 | [pcbnew/Layer.In17.Cu] 135 | Name=In17.Cu 136 | Type=0 137 | Enabled=0 138 | [pcbnew/Layer.In18.Cu] 139 | Name=In18.Cu 140 | Type=0 141 | Enabled=0 142 | [pcbnew/Layer.In19.Cu] 143 | Name=In19.Cu 144 | Type=0 145 | Enabled=0 146 | [pcbnew/Layer.In20.Cu] 147 | Name=In20.Cu 148 | Type=0 149 | Enabled=0 150 | [pcbnew/Layer.In21.Cu] 151 | Name=In21.Cu 152 | Type=0 153 | Enabled=0 154 | [pcbnew/Layer.In22.Cu] 155 | Name=In22.Cu 156 | Type=0 157 | Enabled=0 158 | [pcbnew/Layer.In23.Cu] 159 | Name=In23.Cu 160 | Type=0 161 | Enabled=0 162 | [pcbnew/Layer.In24.Cu] 163 | Name=In24.Cu 164 | Type=0 165 | Enabled=0 166 | [pcbnew/Layer.In25.Cu] 167 | Name=In25.Cu 168 | Type=0 169 | Enabled=0 170 | [pcbnew/Layer.In26.Cu] 171 | Name=In26.Cu 172 | Type=0 173 | Enabled=0 174 | [pcbnew/Layer.In27.Cu] 175 | Name=In27.Cu 176 | Type=0 177 | Enabled=0 178 | [pcbnew/Layer.In28.Cu] 179 | Name=In28.Cu 180 | Type=0 181 | Enabled=0 182 | [pcbnew/Layer.In29.Cu] 183 | Name=In29.Cu 184 | Type=0 185 | Enabled=0 186 | [pcbnew/Layer.In30.Cu] 187 | Name=In30.Cu 188 | Type=0 189 | Enabled=0 190 | [pcbnew/Layer.B.Cu] 191 | Name=B.Cu 192 | Type=0 193 | Enabled=1 194 | [pcbnew/Layer.B.Adhes] 195 | Enabled=1 196 | [pcbnew/Layer.F.Adhes] 197 | Enabled=1 198 | [pcbnew/Layer.B.Paste] 199 | Enabled=1 200 | [pcbnew/Layer.F.Paste] 201 | Enabled=1 202 | [pcbnew/Layer.B.SilkS] 203 | Enabled=1 204 | [pcbnew/Layer.F.SilkS] 205 | Enabled=1 206 | [pcbnew/Layer.B.Mask] 207 | Enabled=1 208 | [pcbnew/Layer.F.Mask] 209 | Enabled=1 210 | [pcbnew/Layer.Dwgs.User] 211 | Enabled=1 212 | [pcbnew/Layer.Cmts.User] 213 | Enabled=1 214 | [pcbnew/Layer.Eco1.User] 215 | Enabled=1 216 | [pcbnew/Layer.Eco2.User] 217 | Enabled=1 218 | [pcbnew/Layer.Edge.Cuts] 219 | Enabled=1 220 | [pcbnew/Layer.Margin] 221 | Enabled=1 222 | [pcbnew/Layer.B.CrtYd] 223 | Enabled=1 224 | [pcbnew/Layer.F.CrtYd] 225 | Enabled=1 226 | [pcbnew/Layer.B.Fab] 227 | Enabled=1 228 | [pcbnew/Layer.F.Fab] 229 | Enabled=1 230 | [pcbnew/Layer.Rescue] 231 | Enabled=0 232 | [pcbnew/Netclasses] 233 | [pcbnew/Netclasses/Default] 234 | Name=Default 235 | Clearance=0.2 236 | TrackWidth=0.25 237 | ViaDiameter=0.8 238 | ViaDrill=0.4 239 | uViaDiameter=0.3 240 | uViaDrill=0.1 241 | dPairWidth=0.2 242 | dPairGap=0.25 243 | dPairViaGap=0.25 244 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedPnl_pcb-r2.pro: -------------------------------------------------------------------------------- 1 | update=22/05/2015 07:44:53 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/CombinedPnl_pcb.pro: -------------------------------------------------------------------------------- 1 | update=22/05/2015 07:44:53 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/Main Board.pro: -------------------------------------------------------------------------------- 1 | update=1/26/2020 11:09:14 PM 2 | version=1 3 | last_client=pcbnew 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=Main Board.net 29 | CopperLayerCount=4 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.08889999999999999 36 | MinViaDiameter=0.45 37 | MinViaDrill=0.2 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | TrackWidth2=0.25 43 | TrackWidth3=0.5 44 | TrackWidth4=0.75 45 | TrackWidth5=1 46 | TrackWidth6=1.5 47 | ViaDiameter1=0.8 48 | ViaDrill1=0.4 49 | dPairWidth1=0.2 50 | dPairGap1=0.25 51 | dPairViaGap1=0.25 52 | SilkLineWidth=0.15 53 | SilkTextSizeV=1 54 | SilkTextSizeH=1 55 | SilkTextSizeThickness=0.15 56 | SilkTextItalic=0 57 | SilkTextUpright=1 58 | CopperLineWidth=0.2 59 | CopperTextSizeV=1.5 60 | CopperTextSizeH=1.5 61 | CopperTextThickness=0.3 62 | CopperTextItalic=0 63 | CopperTextUpright=1 64 | EdgeCutLineWidth=0.09999999999999999 65 | CourtyardLineWidth=0.12 66 | OthersLineWidth=0.15 67 | OthersTextSizeV=1 68 | OthersTextSizeH=1 69 | OthersTextSizeThickness=0.15 70 | OthersTextItalic=0 71 | OthersTextUpright=1 72 | SolderMaskClearance=0 73 | SolderMaskMinWidth=0 74 | SolderPasteClearance=0 75 | SolderPasteRatio=-0 76 | [pcbnew/Layer.F.Cu] 77 | Name=F.Cu 78 | Type=0 79 | Enabled=1 80 | [pcbnew/Layer.In1.Cu] 81 | Name=Power 82 | Type=1 83 | Enabled=1 84 | [pcbnew/Layer.In2.Cu] 85 | Name=GND 86 | Type=1 87 | Enabled=1 88 | [pcbnew/Layer.In3.Cu] 89 | Name=In3.Cu 90 | Type=0 91 | Enabled=0 92 | [pcbnew/Layer.In4.Cu] 93 | Name=In4.Cu 94 | Type=0 95 | Enabled=0 96 | [pcbnew/Layer.In5.Cu] 97 | Name=In5.Cu 98 | Type=0 99 | Enabled=0 100 | [pcbnew/Layer.In6.Cu] 101 | Name=In6.Cu 102 | Type=0 103 | Enabled=0 104 | [pcbnew/Layer.In7.Cu] 105 | Name=In7.Cu 106 | Type=0 107 | Enabled=0 108 | [pcbnew/Layer.In8.Cu] 109 | Name=In8.Cu 110 | Type=0 111 | Enabled=0 112 | [pcbnew/Layer.In9.Cu] 113 | Name=In9.Cu 114 | Type=0 115 | Enabled=0 116 | [pcbnew/Layer.In10.Cu] 117 | Name=In10.Cu 118 | Type=0 119 | Enabled=0 120 | [pcbnew/Layer.In11.Cu] 121 | Name=In11.Cu 122 | Type=0 123 | Enabled=0 124 | [pcbnew/Layer.In12.Cu] 125 | Name=In12.Cu 126 | Type=0 127 | Enabled=0 128 | [pcbnew/Layer.In13.Cu] 129 | Name=In13.Cu 130 | Type=0 131 | Enabled=0 132 | [pcbnew/Layer.In14.Cu] 133 | Name=In14.Cu 134 | Type=0 135 | Enabled=0 136 | [pcbnew/Layer.In15.Cu] 137 | Name=In15.Cu 138 | Type=0 139 | Enabled=0 140 | [pcbnew/Layer.In16.Cu] 141 | Name=In16.Cu 142 | Type=0 143 | Enabled=0 144 | [pcbnew/Layer.In17.Cu] 145 | Name=In17.Cu 146 | Type=0 147 | Enabled=0 148 | [pcbnew/Layer.In18.Cu] 149 | Name=In18.Cu 150 | Type=0 151 | Enabled=0 152 | [pcbnew/Layer.In19.Cu] 153 | Name=In19.Cu 154 | Type=0 155 | Enabled=0 156 | [pcbnew/Layer.In20.Cu] 157 | Name=In20.Cu 158 | Type=0 159 | Enabled=0 160 | [pcbnew/Layer.In21.Cu] 161 | Name=In21.Cu 162 | Type=0 163 | Enabled=0 164 | [pcbnew/Layer.In22.Cu] 165 | Name=In22.Cu 166 | Type=0 167 | Enabled=0 168 | [pcbnew/Layer.In23.Cu] 169 | Name=In23.Cu 170 | Type=0 171 | Enabled=0 172 | [pcbnew/Layer.In24.Cu] 173 | Name=In24.Cu 174 | Type=0 175 | Enabled=0 176 | [pcbnew/Layer.In25.Cu] 177 | Name=In25.Cu 178 | Type=0 179 | Enabled=0 180 | [pcbnew/Layer.In26.Cu] 181 | Name=In26.Cu 182 | Type=0 183 | Enabled=0 184 | [pcbnew/Layer.In27.Cu] 185 | Name=In27.Cu 186 | Type=0 187 | Enabled=0 188 | [pcbnew/Layer.In28.Cu] 189 | Name=In28.Cu 190 | Type=0 191 | Enabled=0 192 | [pcbnew/Layer.In29.Cu] 193 | Name=In29.Cu 194 | Type=0 195 | Enabled=0 196 | [pcbnew/Layer.In30.Cu] 197 | Name=In30.Cu 198 | Type=0 199 | Enabled=0 200 | [pcbnew/Layer.B.Cu] 201 | Name=B.Cu 202 | Type=0 203 | Enabled=1 204 | [pcbnew/Layer.B.Adhes] 205 | Enabled=1 206 | [pcbnew/Layer.F.Adhes] 207 | Enabled=1 208 | [pcbnew/Layer.B.Paste] 209 | Enabled=1 210 | [pcbnew/Layer.F.Paste] 211 | Enabled=1 212 | [pcbnew/Layer.B.SilkS] 213 | Enabled=1 214 | [pcbnew/Layer.F.SilkS] 215 | Enabled=1 216 | [pcbnew/Layer.B.Mask] 217 | Enabled=1 218 | [pcbnew/Layer.F.Mask] 219 | Enabled=1 220 | [pcbnew/Layer.Dwgs.User] 221 | Enabled=1 222 | [pcbnew/Layer.Cmts.User] 223 | Enabled=1 224 | [pcbnew/Layer.Eco1.User] 225 | Enabled=1 226 | [pcbnew/Layer.Eco2.User] 227 | Enabled=1 228 | [pcbnew/Layer.Edge.Cuts] 229 | Enabled=1 230 | [pcbnew/Layer.Margin] 231 | Enabled=1 232 | [pcbnew/Layer.B.CrtYd] 233 | Enabled=1 234 | [pcbnew/Layer.F.CrtYd] 235 | Enabled=1 236 | [pcbnew/Layer.B.Fab] 237 | Enabled=1 238 | [pcbnew/Layer.F.Fab] 239 | Enabled=1 240 | [pcbnew/Layer.Rescue] 241 | Enabled=0 242 | [pcbnew/Netclasses] 243 | [pcbnew/Netclasses/Default] 244 | Name=Default 245 | Clearance=0.2 246 | TrackWidth=0.25 247 | ViaDiameter=0.8 248 | ViaDrill=0.4 249 | uViaDiameter=0.3 250 | uViaDrill=0.1 251 | dPairWidth=0.2 252 | dPairGap=0.25 253 | dPairViaGap=0.25 254 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-B_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L4,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,2.000000*% 14 | %ADD11O,1.500000X2.000000*% 15 | %ADD12C,1.524000*% 16 | %ADD13O,1.700000X1.700000*% 17 | %ADD14R,1.700000X1.700000*% 18 | %ADD15R,1.200000X1.200000*% 19 | %ADD16C,1.200000*% 20 | %ADD17R,2.000000X2.000000*% 21 | %ADD18R,1.600000X1.600000*% 22 | %ADD19C,1.600000*% 23 | %ADD20O,1.600000X1.600000*% 24 | %ADD21C,0.800000*% 25 | %ADD22C,0.250000*% 26 | G04 APERTURE END LIST* 27 | D10* 28 | X154178000Y-86868000D03* 29 | D11* 30 | X154178000Y-58928000D03* 31 | X151638000Y-86868000D03* 32 | X151638000Y-58928000D03* 33 | X149098000Y-86868000D03* 34 | X149098000Y-58928000D03* 35 | X146558000Y-86868000D03* 36 | X146558000Y-58928000D03* 37 | X144018000Y-86868000D03* 38 | X144018000Y-58928000D03* 39 | D10* 40 | X141478000Y-86868000D03* 41 | D11* 42 | X141478000Y-58928000D03* 43 | X138938000Y-86868000D03* 44 | X138938000Y-58928000D03* 45 | X136398000Y-86868000D03* 46 | X136398000Y-58928000D03* 47 | X133858000Y-86868000D03* 48 | X133858000Y-58928000D03* 49 | X131318000Y-86868000D03* 50 | X131318000Y-58928000D03* 51 | X128778000Y-86868000D03* 52 | X128778000Y-58928000D03* 53 | X126238000Y-86868000D03* 54 | X126238000Y-58928000D03* 55 | X123698000Y-86868000D03* 56 | X123698000Y-58928000D03* 57 | X121158000Y-86868000D03* 58 | X121158000Y-58928000D03* 59 | X118618000Y-86868000D03* 60 | X118618000Y-58928000D03* 61 | X116078000Y-86868000D03* 62 | X116078000Y-58928000D03* 63 | X113538000Y-86868000D03* 64 | X113538000Y-58928000D03* 65 | X110998000Y-86868000D03* 66 | X110998000Y-58928000D03* 67 | D10* 68 | X108458000Y-86868000D03* 69 | D11* 70 | X108458000Y-58928000D03* 71 | X105918000Y-86868000D03* 72 | X105918000Y-58928000D03* 73 | D12* 74 | X164338000Y-89916000D03* 75 | X167894000Y-89916000D03* 76 | X171450000Y-89916000D03* 77 | X164338000Y-87376000D03* 78 | X171450000Y-87376000D03* 79 | X167894000Y-87376000D03* 80 | X161798000Y-88646000D03* 81 | X173990000Y-88646000D03* 82 | D13* 83 | X130810000Y-47498000D03* 84 | X130810000Y-44958000D03* 85 | X133350000Y-47498000D03* 86 | X133350000Y-44958000D03* 87 | X135890000Y-47498000D03* 88 | X135890000Y-44958000D03* 89 | X138430000Y-47498000D03* 90 | X138430000Y-44958000D03* 91 | X140970000Y-47498000D03* 92 | X140970000Y-44958000D03* 93 | X143510000Y-47498000D03* 94 | X143510000Y-44958000D03* 95 | X146050000Y-47498000D03* 96 | X146050000Y-44958000D03* 97 | X148590000Y-47498000D03* 98 | D14* 99 | X148590000Y-44958000D03* 100 | X82550000Y-83820000D03* 101 | D13* 102 | X80010000Y-83820000D03* 103 | X82550000Y-81280000D03* 104 | X80010000Y-81280000D03* 105 | X82550000Y-78740000D03* 106 | X80010000Y-78740000D03* 107 | X82550000Y-76200000D03* 108 | X80010000Y-76200000D03* 109 | X82550000Y-73660000D03* 110 | X80010000Y-73660000D03* 111 | X82550000Y-71120000D03* 112 | X80010000Y-71120000D03* 113 | X82550000Y-68580000D03* 114 | X80010000Y-68580000D03* 115 | X82550000Y-66040000D03* 116 | X80010000Y-66040000D03* 117 | D15* 118 | X157480000Y-44704000D03* 119 | D16* 120 | X155480000Y-44704000D03* 121 | D17* 122 | X106680000Y-48768000D03* 123 | D10* 124 | X111680000Y-48768000D03* 125 | D18* 126 | X95250000Y-48514000D03* 127 | D19* 128 | X95250000Y-46514000D03* 129 | D14* 130 | X80010000Y-51054000D03* 131 | D13* 132 | X82550000Y-51054000D03* 133 | X80010000Y-53594000D03* 134 | X82550000Y-53594000D03* 135 | X82550000Y-60706000D03* 136 | X80010000Y-60706000D03* 137 | X82550000Y-58166000D03* 138 | D14* 139 | X80010000Y-58166000D03* 140 | D19* 141 | X163322000Y-51562000D03* 142 | D20* 143 | X153162000Y-51562000D03* 144 | X88392000Y-45974000D03* 145 | D19* 146 | X88392000Y-56134000D03* 147 | X113792000Y-74930000D03* 148 | D20* 149 | X113792000Y-64770000D03* 150 | D10* 151 | X167132000Y-44014000D03* 152 | X167132000Y-48514000D03* 153 | X173632000Y-44014000D03* 154 | X173632000Y-48514000D03* 155 | D21* 156 | X120396000Y-69596012D03* 157 | X129793996Y-70648990D03* 158 | X123952000Y-68580000D03* 159 | X114046000Y-78232000D03* 160 | X92456000Y-60234990D03* 161 | X150876000Y-48768000D03* 162 | X144780000Y-42418000D03* 163 | X91440000Y-77216000D03* 164 | X138684000Y-53848000D03* 165 | D22* 166 | X85784081Y-71628000D02* 167 | X133096000Y-71628000D01* 168 | X82550000Y-73660000D02* 169 | X83752081Y-73660000D01* 170 | X83752081Y-73660000D02* 171 | X85784081Y-71628000D01* 172 | X144018000Y-82550000D02* 173 | X133096000Y-71628000D01* 174 | X144018000Y-86868000D02* 175 | X144018000Y-82550000D01* 176 | X81280000Y-74930000D02* 177 | X84328000Y-74930000D01* 178 | X80010000Y-73660000D02* 179 | X81280000Y-74930000D01* 180 | X84328000Y-74930000D02* 181 | X86614000Y-72644000D01* 182 | X86614000Y-72644000D02* 183 | X115062000Y-72644000D01* 184 | X123698000Y-85618000D02* 185 | X123698000Y-81534000D01* 186 | X123698000Y-86868000D02* 187 | X123698000Y-85618000D01* 188 | X115062000Y-72644000D02* 189 | X123698000Y-81534000D01* 190 | X84073988Y-69596012D02* 191 | X119830315Y-69596012D01* 192 | X119830315Y-69596012D02* 193 | X120396000Y-69596012D01* 194 | X82550000Y-71120000D02* 195 | X84073988Y-69596012D01* 196 | X129228311Y-70648990D02* 197 | X129793996Y-70648990D01* 198 | X83820000Y-72390000D02* 199 | X85561010Y-70648990D01* 200 | X80010000Y-71120000D02* 201 | X81280000Y-72390000D01* 202 | X85561010Y-70648990D02* 203 | X129228311Y-70648990D01* 204 | X81280000Y-72390000D02* 205 | X83820000Y-72390000D01* 206 | X82550000Y-68580000D02* 207 | X123952000Y-68580000D01* 208 | X113538000Y-60178000D02* 209 | X113538000Y-58928000D01* 210 | X80010000Y-68580000D02* 211 | X81280000Y-67310000D01* 212 | X81280000Y-67310000D02* 213 | X81280000Y-65278000D01* 214 | X81280000Y-65278000D02* 215 | X84582000Y-61976000D01* 216 | X111740000Y-61976000D02* 217 | X113538000Y-60178000D01* 218 | X84582000Y-61976000D02* 219 | X111740000Y-61976000D01* 220 | X82550000Y-66040000D02* 221 | X103886000Y-66040000D01* 222 | X103886000Y-66040000D02* 223 | X106680000Y-63246000D01* 224 | X121158000Y-60178000D02* 225 | X121158000Y-58928000D01* 226 | X118090000Y-63246000D02* 227 | X121158000Y-60178000D01* 228 | X115570000Y-63246000D02* 229 | X118090000Y-63246000D01* 230 | X106680000Y-63246000D02* 231 | X115570000Y-63246000D01* 232 | X88392000Y-45974000D02* 233 | X92456000Y-50038000D01* 234 | X92456000Y-50038000D02* 235 | X92456000Y-60234990D01* 236 | X116078000Y-80264000D02* 237 | X114046000Y-78232000D01* 238 | X116078000Y-86868000D02* 239 | X116078000Y-80264000D01* 240 | X150876000Y-48768000D02* 241 | X150876000Y-43942000D01* 242 | X150876000Y-43942000D02* 243 | X149352000Y-42418000D01* 244 | X145345685Y-42418000D02* 245 | X144780000Y-42418000D01* 246 | X149352000Y-42418000D02* 247 | X145345685Y-42418000D01* 248 | X110490000Y-77216000D02* 249 | X91440000Y-77216000D01* 250 | X113538000Y-86868000D02* 251 | X113538000Y-80264000D01* 252 | X113538000Y-80264000D02* 253 | X110490000Y-77216000D01* 254 | X114923370Y-74930000D02* 255 | X113792000Y-74930000D01* 256 | X118618000Y-86868000D02* 257 | X118618000Y-85618000D01* 258 | X118618000Y-85618000D02* 259 | X118618000Y-78740000D01* 260 | X118618000Y-78740000D02* 261 | X114923370Y-74930000D01* 262 | X129649787Y-43180000D02* 263 | X136652000Y-43180000D01* 264 | X146050000Y-44958000D02* 265 | X144272000Y-43180000D01* 266 | X144272000Y-43180000D02* 267 | X140208000Y-43180000D01* 268 | X140208000Y-43180000D02* 269 | X138430000Y-43180000D01* 270 | X138430000Y-43180000D02* 271 | X136652000Y-43180000D01* 272 | X110998000Y-57678000D02* 273 | X113812000Y-54864000D01* 274 | X113812000Y-54864000D02* 275 | X117856000Y-54864000D01* 276 | X110998000Y-58928000D02* 277 | X110998000Y-57678000D01* 278 | X117856000Y-54864000D02* 279 | X129649787Y-43180000D01* 280 | X138430000Y-44958000D02* 281 | X136652000Y-43180000D01* 282 | X139279999Y-44108001D02* 283 | X140208000Y-43180000D01* 284 | X138430000Y-44958000D02* 285 | X139279999Y-44108001D01* 286 | X141819999Y-46648001D02* 287 | X143510000Y-44958000D01* 288 | X140970000Y-47498000D02* 289 | X141819999Y-46648001D01* 290 | X128778000Y-57678000D02* 291 | X128778000Y-58928000D01* 292 | X132208001Y-54247999D02* 293 | X128778000Y-57678000D01* 294 | X138284001Y-54247999D02* 295 | X132208001Y-54247999D01* 296 | X138684000Y-53848000D02* 297 | X138284001Y-54247999D01* 298 | X143510000Y-49276000D02* 299 | X143510000Y-47498000D01* 300 | X140716000Y-52070000D02* 301 | X143510000Y-49276000D01* 302 | X131846000Y-52070000D02* 303 | X140716000Y-52070000D01* 304 | X126238000Y-58928000D02* 305 | X126238000Y-57678000D01* 306 | X126238000Y-57678000D02* 307 | X131846000Y-52070000D01* 308 | X167132000Y-49928213D02* 309 | X167132000Y-48514000D01* 310 | X161434213Y-55626000D02* 311 | X167132000Y-49928213D01* 312 | X141478000Y-58928000D02* 313 | X141478000Y-57678000D01* 314 | X143530000Y-55626000D02* 315 | X161434213Y-55626000D01* 316 | X141478000Y-57678000D02* 317 | X143530000Y-55626000D01* 318 | X157480000Y-47244000D02* 319 | X157480000Y-44704000D01* 320 | X153162000Y-51562000D02* 321 | X157480000Y-47244000D01* 322 | X145054000Y-51562000D02* 323 | X138938000Y-57678000D01* 324 | X138938000Y-57678000D02* 325 | X138938000Y-58928000D01* 326 | X153162000Y-51562000D02* 327 | X145054000Y-51562000D01* 328 | M02* 329 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-B_Mask.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Soldermask,Bot* 6 | G04 #@! TF.FilePolarity,Negative* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,2.000000*% 14 | %ADD11O,1.500000X2.000000*% 15 | %ADD12C,1.524000*% 16 | %ADD13O,1.700000X1.700000*% 17 | %ADD14R,1.700000X1.700000*% 18 | %ADD15R,1.200000X1.200000*% 19 | %ADD16C,1.200000*% 20 | %ADD17R,2.000000X2.000000*% 21 | %ADD18R,1.600000X1.600000*% 22 | %ADD19C,1.600000*% 23 | %ADD20O,1.600000X1.600000*% 24 | G04 APERTURE END LIST* 25 | D10* 26 | X154178000Y-86868000D03* 27 | D11* 28 | X154178000Y-58928000D03* 29 | X151638000Y-86868000D03* 30 | X151638000Y-58928000D03* 31 | X149098000Y-86868000D03* 32 | X149098000Y-58928000D03* 33 | X146558000Y-86868000D03* 34 | X146558000Y-58928000D03* 35 | X144018000Y-86868000D03* 36 | X144018000Y-58928000D03* 37 | D10* 38 | X141478000Y-86868000D03* 39 | D11* 40 | X141478000Y-58928000D03* 41 | X138938000Y-86868000D03* 42 | X138938000Y-58928000D03* 43 | X136398000Y-86868000D03* 44 | X136398000Y-58928000D03* 45 | X133858000Y-86868000D03* 46 | X133858000Y-58928000D03* 47 | X131318000Y-86868000D03* 48 | X131318000Y-58928000D03* 49 | X128778000Y-86868000D03* 50 | X128778000Y-58928000D03* 51 | X126238000Y-86868000D03* 52 | X126238000Y-58928000D03* 53 | X123698000Y-86868000D03* 54 | X123698000Y-58928000D03* 55 | X121158000Y-86868000D03* 56 | X121158000Y-58928000D03* 57 | X118618000Y-86868000D03* 58 | X118618000Y-58928000D03* 59 | X116078000Y-86868000D03* 60 | X116078000Y-58928000D03* 61 | X113538000Y-86868000D03* 62 | X113538000Y-58928000D03* 63 | X110998000Y-86868000D03* 64 | X110998000Y-58928000D03* 65 | D10* 66 | X108458000Y-86868000D03* 67 | D11* 68 | X108458000Y-58928000D03* 69 | X105918000Y-86868000D03* 70 | X105918000Y-58928000D03* 71 | D12* 72 | X164338000Y-89916000D03* 73 | X167894000Y-89916000D03* 74 | X171450000Y-89916000D03* 75 | X164338000Y-87376000D03* 76 | X171450000Y-87376000D03* 77 | X167894000Y-87376000D03* 78 | X161798000Y-88646000D03* 79 | X173990000Y-88646000D03* 80 | D13* 81 | X130810000Y-47498000D03* 82 | X130810000Y-44958000D03* 83 | X133350000Y-47498000D03* 84 | X133350000Y-44958000D03* 85 | X135890000Y-47498000D03* 86 | X135890000Y-44958000D03* 87 | X138430000Y-47498000D03* 88 | X138430000Y-44958000D03* 89 | X140970000Y-47498000D03* 90 | X140970000Y-44958000D03* 91 | X143510000Y-47498000D03* 92 | X143510000Y-44958000D03* 93 | X146050000Y-47498000D03* 94 | X146050000Y-44958000D03* 95 | X148590000Y-47498000D03* 96 | D14* 97 | X148590000Y-44958000D03* 98 | X82550000Y-83820000D03* 99 | D13* 100 | X80010000Y-83820000D03* 101 | X82550000Y-81280000D03* 102 | X80010000Y-81280000D03* 103 | X82550000Y-78740000D03* 104 | X80010000Y-78740000D03* 105 | X82550000Y-76200000D03* 106 | X80010000Y-76200000D03* 107 | X82550000Y-73660000D03* 108 | X80010000Y-73660000D03* 109 | X82550000Y-71120000D03* 110 | X80010000Y-71120000D03* 111 | X82550000Y-68580000D03* 112 | X80010000Y-68580000D03* 113 | X82550000Y-66040000D03* 114 | X80010000Y-66040000D03* 115 | D15* 116 | X157480000Y-44704000D03* 117 | D16* 118 | X155480000Y-44704000D03* 119 | D17* 120 | X106680000Y-48768000D03* 121 | D10* 122 | X111680000Y-48768000D03* 123 | D18* 124 | X95250000Y-48514000D03* 125 | D19* 126 | X95250000Y-46514000D03* 127 | D14* 128 | X80010000Y-51054000D03* 129 | D13* 130 | X82550000Y-51054000D03* 131 | X80010000Y-53594000D03* 132 | X82550000Y-53594000D03* 133 | X82550000Y-60706000D03* 134 | X80010000Y-60706000D03* 135 | X82550000Y-58166000D03* 136 | D14* 137 | X80010000Y-58166000D03* 138 | D19* 139 | X163322000Y-51562000D03* 140 | D20* 141 | X153162000Y-51562000D03* 142 | X88392000Y-45974000D03* 143 | D19* 144 | X88392000Y-56134000D03* 145 | X113792000Y-74930000D03* 146 | D20* 147 | X113792000Y-64770000D03* 148 | D10* 149 | X167132000Y-44014000D03* 150 | X167132000Y-48514000D03* 151 | X173632000Y-44014000D03* 152 | X173632000Y-48514000D03* 153 | M02* 154 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-B_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,0.120000*% 14 | %ADD11C,0.150000*% 15 | G04 APERTURE END LIST* 16 | D10* 17 | X168132000Y-43014000D02* 18 | X172632000Y-43014000D01* 19 | X166882000Y-47014000D02* 20 | X166882000Y-45514000D01* 21 | X172632000Y-49514000D02* 22 | X168132000Y-49514000D01* 23 | X173882000Y-45514000D02* 24 | X173882000Y-47014000D01* 25 | D11* 26 | X165569733Y-46632761D02* 27 | X165426876Y-46680380D01* 28 | X165188780Y-46680380D01* 29 | X165093542Y-46632761D01* 30 | X165045923Y-46585142D01* 31 | X164998304Y-46489904D01* 32 | X164998304Y-46394666D01* 33 | X165045923Y-46299428D01* 34 | X165093542Y-46251809D01* 35 | X165188780Y-46204190D01* 36 | X165379257Y-46156571D01* 37 | X165474495Y-46108952D01* 38 | X165522114Y-46061333D01* 39 | X165569733Y-45966095D01* 40 | X165569733Y-45870857D01* 41 | X165522114Y-45775619D01* 42 | X165474495Y-45728000D01* 43 | X165379257Y-45680380D01* 44 | X165141161Y-45680380D01* 45 | X164998304Y-45728000D01* 46 | X164664971Y-45680380D02* 47 | X164426876Y-46680380D01* 48 | X164236400Y-45966095D01* 49 | X164045923Y-46680380D01* 50 | X163807828Y-45680380D01* 51 | X162903066Y-46680380D02* 52 | X163474495Y-46680380D01* 53 | X163188780Y-46680380D02* 54 | X163188780Y-45680380D01* 55 | X163284019Y-45823238D01* 56 | X163379257Y-45918476D01* 57 | X163474495Y-45966095D01* 58 | M02* 59 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.100000*% 13 | G04 APERTURE END LIST* 14 | D10* 15 | X178562000Y-40640000D02* 16 | X178562000Y-91440000D01* 17 | X73660000Y-40640000D02* 18 | X178562000Y-40640000D01* 19 | X73660000Y-91440000D02* 20 | X73660000Y-40640000D01* 21 | X178562000Y-91440000D02* 22 | X73660000Y-91440000D01* 23 | X174386666Y-81026000D02* 24 | G75* 25 | G03X174386666Y-81026000I-1666666J0D01* 26 | G01* 27 | X170220000Y-81026000D02* 28 | X175220000Y-81026000D01* 29 | X172720000Y-78526000D02* 30 | X172720000Y-83526000D01* 31 | X81422666Y-44450000D02* 32 | G75* 33 | G03X81422666Y-44450000I-1666666J0D01* 34 | G01* 35 | X77256000Y-44450000D02* 36 | X82256000Y-44450000D01* 37 | X79756000Y-41950000D02* 38 | X79756000Y-46950000D01* 39 | M02* 40 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-F_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:27-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L1,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:27* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,2.000000*% 14 | %ADD11O,1.500000X2.000000*% 15 | %ADD12C,1.524000*% 16 | %ADD13O,1.700000X1.700000*% 17 | %ADD14R,1.700000X1.700000*% 18 | %ADD15R,1.200000X1.200000*% 19 | %ADD16C,1.200000*% 20 | %ADD17R,2.000000X2.000000*% 21 | %ADD18R,1.600000X1.600000*% 22 | %ADD19C,1.600000*% 23 | %ADD20O,1.600000X1.600000*% 24 | %ADD21C,0.800000*% 25 | %ADD22C,0.250000*% 26 | %ADD23C,0.500000*% 27 | G04 APERTURE END LIST* 28 | D10* 29 | X154178000Y-86868000D03* 30 | D11* 31 | X154178000Y-58928000D03* 32 | X151638000Y-86868000D03* 33 | X151638000Y-58928000D03* 34 | X149098000Y-86868000D03* 35 | X149098000Y-58928000D03* 36 | X146558000Y-86868000D03* 37 | X146558000Y-58928000D03* 38 | X144018000Y-86868000D03* 39 | X144018000Y-58928000D03* 40 | D10* 41 | X141478000Y-86868000D03* 42 | D11* 43 | X141478000Y-58928000D03* 44 | X138938000Y-86868000D03* 45 | X138938000Y-58928000D03* 46 | X136398000Y-86868000D03* 47 | X136398000Y-58928000D03* 48 | X133858000Y-86868000D03* 49 | X133858000Y-58928000D03* 50 | X131318000Y-86868000D03* 51 | X131318000Y-58928000D03* 52 | X128778000Y-86868000D03* 53 | X128778000Y-58928000D03* 54 | X126238000Y-86868000D03* 55 | X126238000Y-58928000D03* 56 | X123698000Y-86868000D03* 57 | X123698000Y-58928000D03* 58 | X121158000Y-86868000D03* 59 | X121158000Y-58928000D03* 60 | X118618000Y-86868000D03* 61 | X118618000Y-58928000D03* 62 | X116078000Y-86868000D03* 63 | X116078000Y-58928000D03* 64 | X113538000Y-86868000D03* 65 | X113538000Y-58928000D03* 66 | X110998000Y-86868000D03* 67 | X110998000Y-58928000D03* 68 | D10* 69 | X108458000Y-86868000D03* 70 | D11* 71 | X108458000Y-58928000D03* 72 | X105918000Y-86868000D03* 73 | X105918000Y-58928000D03* 74 | D12* 75 | X164338000Y-89916000D03* 76 | X167894000Y-89916000D03* 77 | X171450000Y-89916000D03* 78 | X164338000Y-87376000D03* 79 | X171450000Y-87376000D03* 80 | X167894000Y-87376000D03* 81 | X161798000Y-88646000D03* 82 | X173990000Y-88646000D03* 83 | D13* 84 | X130810000Y-47498000D03* 85 | X130810000Y-44958000D03* 86 | X133350000Y-47498000D03* 87 | X133350000Y-44958000D03* 88 | X135890000Y-47498000D03* 89 | X135890000Y-44958000D03* 90 | X138430000Y-47498000D03* 91 | X138430000Y-44958000D03* 92 | X140970000Y-47498000D03* 93 | X140970000Y-44958000D03* 94 | X143510000Y-47498000D03* 95 | X143510000Y-44958000D03* 96 | X146050000Y-47498000D03* 97 | X146050000Y-44958000D03* 98 | X148590000Y-47498000D03* 99 | D14* 100 | X148590000Y-44958000D03* 101 | X82550000Y-83820000D03* 102 | D13* 103 | X80010000Y-83820000D03* 104 | X82550000Y-81280000D03* 105 | X80010000Y-81280000D03* 106 | X82550000Y-78740000D03* 107 | X80010000Y-78740000D03* 108 | X82550000Y-76200000D03* 109 | X80010000Y-76200000D03* 110 | X82550000Y-73660000D03* 111 | X80010000Y-73660000D03* 112 | X82550000Y-71120000D03* 113 | X80010000Y-71120000D03* 114 | X82550000Y-68580000D03* 115 | X80010000Y-68580000D03* 116 | X82550000Y-66040000D03* 117 | X80010000Y-66040000D03* 118 | D15* 119 | X157480000Y-44704000D03* 120 | D16* 121 | X155480000Y-44704000D03* 122 | D17* 123 | X106680000Y-48768000D03* 124 | D10* 125 | X111680000Y-48768000D03* 126 | D18* 127 | X95250000Y-48514000D03* 128 | D19* 129 | X95250000Y-46514000D03* 130 | D14* 131 | X80010000Y-51054000D03* 132 | D13* 133 | X82550000Y-51054000D03* 134 | X80010000Y-53594000D03* 135 | X82550000Y-53594000D03* 136 | X82550000Y-60706000D03* 137 | X80010000Y-60706000D03* 138 | X82550000Y-58166000D03* 139 | D14* 140 | X80010000Y-58166000D03* 141 | D19* 142 | X163322000Y-51562000D03* 143 | D20* 144 | X153162000Y-51562000D03* 145 | X88392000Y-45974000D03* 146 | D19* 147 | X88392000Y-56134000D03* 148 | X113792000Y-74930000D03* 149 | D20* 150 | X113792000Y-64770000D03* 151 | D10* 152 | X167132000Y-44014000D03* 153 | X167132000Y-48514000D03* 154 | X173632000Y-44014000D03* 155 | X173632000Y-48514000D03* 156 | D21* 157 | X120396000Y-69596012D03* 158 | X129793996Y-70648990D03* 159 | X123952000Y-68580000D03* 160 | X114046000Y-78232000D03* 161 | X92456000Y-60234990D03* 162 | X150876000Y-48768000D03* 163 | X144780000Y-42418000D03* 164 | X91440000Y-77216000D03* 165 | X138684000Y-53848000D03* 166 | D22* 167 | X149690000Y-44958000D02* 168 | X153246000Y-48514000D01* 169 | X148590000Y-44958000D02* 170 | X149690000Y-44958000D01* 171 | X160274000Y-48514000D02* 172 | X163322000Y-51562000D01* 173 | X153246000Y-48514000D02* 174 | X160274000Y-48514000D01* 175 | D23* 176 | X130810000Y-44958000D02* 177 | X133350000Y-47498000D01* 178 | D22* 179 | X120396000Y-76708000D02* 180 | X120396000Y-69596012D01* 181 | X126238000Y-82550000D02* 182 | X126238000Y-86868000D01* 183 | X120396000Y-76708000D02* 184 | X126238000Y-82550000D01* 185 | X129793996Y-81025996D02* 186 | X129793996Y-70648990D01* 187 | X131318000Y-82550000D02* 188 | X131318000Y-86868000D01* 189 | X129793996Y-81025996D02* 190 | X131318000Y-82550000D01* 191 | X123952000Y-76474000D02* 192 | X123952000Y-69145685D01* 193 | X123952000Y-69145685D02* 194 | X123952000Y-68580000D01* 195 | X128778000Y-86868000D02* 196 | X128778000Y-81534000D01* 197 | X128778000Y-81534000D02* 198 | X123952000Y-76474000D01* 199 | X80010000Y-49954000D02* 200 | X83990000Y-45974000D01* 201 | X87260630Y-45974000D02* 202 | X88392000Y-45974000D01* 203 | X83990000Y-45974000D02* 204 | X87260630Y-45974000D01* 205 | X80010000Y-51054000D02* 206 | X80010000Y-49954000D01* 207 | X114046000Y-78232000D02* 208 | X110453010Y-78232000D01* 209 | X92855999Y-60634989D02* 210 | X92456000Y-60234990D01* 211 | X110453010Y-78232000D02* 212 | X92855999Y-60634989D01* 213 | X144214315Y-42418000D02* 214 | X144780000Y-42418000D01* 215 | X82550000Y-53594000D02* 216 | X83566000Y-53594000D01* 217 | X94742000Y-42418000D02* 218 | X124206000Y-42418000D01* 219 | X83566000Y-53594000D02* 220 | X94742000Y-42418000D01* 221 | X146558000Y-53086000D02* 222 | X146558000Y-58928000D01* 223 | X150876000Y-48768000D02* 224 | X146558000Y-53086000D01* 225 | X141819999Y-44108001D02* 226 | X143510000Y-42418000D01* 227 | X140970000Y-44958000D02* 228 | X141819999Y-44108001D01* 229 | X140970000Y-42418000D02* 230 | X143510000Y-42418000D01* 231 | X143510000Y-42418000D02* 232 | X144214315Y-42418000D01* 233 | X140120001Y-44108001D02* 234 | X138430000Y-42418000D01* 235 | X140970000Y-44958000D02* 236 | X140120001Y-44108001D01* 237 | X124206000Y-42418000D02* 238 | X138430000Y-42418000D01* 239 | X138430000Y-42418000D02* 240 | X140970000Y-42418000D01* 241 | X91440000Y-67056000D02* 242 | X82550000Y-58166000D01* 243 | X91440000Y-77216000D02* 244 | X91440000Y-67056000D01* 245 | X113792000Y-70358000D02* 246 | X113792000Y-74930000D01* 247 | X124968000Y-53340000D02* 248 | X124968000Y-60198000D01* 249 | X130810000Y-47498000D02* 250 | X124968000Y-53340000D01* 251 | X124968000Y-60198000D02* 252 | X123444000Y-61722000D01* 253 | X123444000Y-61722000D02* 254 | X122428000Y-61722000D01* 255 | X122428000Y-61722000D02* 256 | X113792000Y-70358000D01* 257 | X133858000Y-53086000D02* 258 | X133858000Y-58928000D01* 259 | X135890000Y-47498000D02* 260 | X135890000Y-51054000D01* 261 | X135890000Y-51054000D02* 262 | X133858000Y-53086000D01* 263 | X110998000Y-85618000D02* 264 | X110998000Y-86868000D01* 265 | X115316000Y-70358000D02* 266 | X115316000Y-81300000D01* 267 | X123952000Y-65532000D02* 268 | X120142000Y-65532000D01* 269 | X134620000Y-46228000D02* 270 | X134620000Y-50803853D01* 271 | X120142000Y-65532000D02* 272 | X115316000Y-70358000D01* 273 | X135890000Y-44958000D02* 274 | X134620000Y-46228000D01* 275 | X134620000Y-50803853D02* 276 | X127508000Y-57915853D01* 277 | X127508000Y-57915853D02* 278 | X127508000Y-61976000D01* 279 | X115316000Y-81300000D02* 280 | X110998000Y-85618000D01* 281 | X127508000Y-61976000D02* 282 | X123952000Y-65532000D01* 283 | X110998000Y-88118000D02* 284 | X110998000Y-86868000D01* 285 | X166624000Y-88646000D02* 286 | X163576000Y-88646000D01* 287 | X167894000Y-87376000D02* 288 | X166624000Y-88646000D01* 289 | X163576000Y-88646000D02* 290 | X162306000Y-89916000D01* 291 | X112796000Y-89916000D02* 292 | X110998000Y-88118000D01* 293 | X162306000Y-89916000D02* 294 | X112796000Y-89916000D01* 295 | X138430000Y-47498000D02* 296 | X138430000Y-49784000D01* 297 | X136398000Y-51816000D02* 298 | X136398000Y-58928000D01* 299 | X138430000Y-49784000D02* 300 | X136398000Y-51816000D01* 301 | X140970000Y-51562000D02* 302 | X140208000Y-52324000D01* 303 | X140970000Y-47498000D02* 304 | X140970000Y-51562000D01* 305 | X140208000Y-52324000D02* 306 | X138684000Y-53848000D01* 307 | X147320000Y-46228000D02* 308 | X147740001Y-46648001D01* 309 | X147740001Y-46648001D02* 310 | X148590000Y-47498000D01* 311 | X143510000Y-47498000D02* 312 | X144780000Y-46228000D01* 313 | X144780000Y-46228000D02* 314 | X147320000Y-46228000D01* 315 | X146050000Y-47498000D02* 316 | X146050000Y-51308000D01* 317 | X144018000Y-53340000D02* 318 | X144018000Y-58928000D01* 319 | X146050000Y-51308000D02* 320 | X144018000Y-53340000D01* 321 | X168546213Y-48514000D02* 322 | X173632000Y-48514000D01* 323 | X167132000Y-48514000D02* 324 | X168546213Y-48514000D01* 325 | M02* 326 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-F_Mask.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Soldermask,Top* 6 | G04 #@! TF.FilePolarity,Negative* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10C,2.000000*% 14 | %ADD11O,1.500000X2.000000*% 15 | %ADD12C,1.524000*% 16 | %ADD13O,1.700000X1.700000*% 17 | %ADD14R,1.700000X1.700000*% 18 | %ADD15R,1.200000X1.200000*% 19 | %ADD16C,1.200000*% 20 | %ADD17R,2.000000X2.000000*% 21 | %ADD18R,1.600000X1.600000*% 22 | %ADD19C,1.600000*% 23 | %ADD20O,1.600000X1.600000*% 24 | G04 APERTURE END LIST* 25 | D10* 26 | X154178000Y-86868000D03* 27 | D11* 28 | X154178000Y-58928000D03* 29 | X151638000Y-86868000D03* 30 | X151638000Y-58928000D03* 31 | X149098000Y-86868000D03* 32 | X149098000Y-58928000D03* 33 | X146558000Y-86868000D03* 34 | X146558000Y-58928000D03* 35 | X144018000Y-86868000D03* 36 | X144018000Y-58928000D03* 37 | D10* 38 | X141478000Y-86868000D03* 39 | D11* 40 | X141478000Y-58928000D03* 41 | X138938000Y-86868000D03* 42 | X138938000Y-58928000D03* 43 | X136398000Y-86868000D03* 44 | X136398000Y-58928000D03* 45 | X133858000Y-86868000D03* 46 | X133858000Y-58928000D03* 47 | X131318000Y-86868000D03* 48 | X131318000Y-58928000D03* 49 | X128778000Y-86868000D03* 50 | X128778000Y-58928000D03* 51 | X126238000Y-86868000D03* 52 | X126238000Y-58928000D03* 53 | X123698000Y-86868000D03* 54 | X123698000Y-58928000D03* 55 | X121158000Y-86868000D03* 56 | X121158000Y-58928000D03* 57 | X118618000Y-86868000D03* 58 | X118618000Y-58928000D03* 59 | X116078000Y-86868000D03* 60 | X116078000Y-58928000D03* 61 | X113538000Y-86868000D03* 62 | X113538000Y-58928000D03* 63 | X110998000Y-86868000D03* 64 | X110998000Y-58928000D03* 65 | D10* 66 | X108458000Y-86868000D03* 67 | D11* 68 | X108458000Y-58928000D03* 69 | X105918000Y-86868000D03* 70 | X105918000Y-58928000D03* 71 | D12* 72 | X164338000Y-89916000D03* 73 | X167894000Y-89916000D03* 74 | X171450000Y-89916000D03* 75 | X164338000Y-87376000D03* 76 | X171450000Y-87376000D03* 77 | X167894000Y-87376000D03* 78 | X161798000Y-88646000D03* 79 | X173990000Y-88646000D03* 80 | D13* 81 | X130810000Y-47498000D03* 82 | X130810000Y-44958000D03* 83 | X133350000Y-47498000D03* 84 | X133350000Y-44958000D03* 85 | X135890000Y-47498000D03* 86 | X135890000Y-44958000D03* 87 | X138430000Y-47498000D03* 88 | X138430000Y-44958000D03* 89 | X140970000Y-47498000D03* 90 | X140970000Y-44958000D03* 91 | X143510000Y-47498000D03* 92 | X143510000Y-44958000D03* 93 | X146050000Y-47498000D03* 94 | X146050000Y-44958000D03* 95 | X148590000Y-47498000D03* 96 | D14* 97 | X148590000Y-44958000D03* 98 | X82550000Y-83820000D03* 99 | D13* 100 | X80010000Y-83820000D03* 101 | X82550000Y-81280000D03* 102 | X80010000Y-81280000D03* 103 | X82550000Y-78740000D03* 104 | X80010000Y-78740000D03* 105 | X82550000Y-76200000D03* 106 | X80010000Y-76200000D03* 107 | X82550000Y-73660000D03* 108 | X80010000Y-73660000D03* 109 | X82550000Y-71120000D03* 110 | X80010000Y-71120000D03* 111 | X82550000Y-68580000D03* 112 | X80010000Y-68580000D03* 113 | X82550000Y-66040000D03* 114 | X80010000Y-66040000D03* 115 | D15* 116 | X157480000Y-44704000D03* 117 | D16* 118 | X155480000Y-44704000D03* 119 | D17* 120 | X106680000Y-48768000D03* 121 | D10* 122 | X111680000Y-48768000D03* 123 | D18* 124 | X95250000Y-48514000D03* 125 | D19* 126 | X95250000Y-46514000D03* 127 | D14* 128 | X80010000Y-51054000D03* 129 | D13* 130 | X82550000Y-51054000D03* 131 | X80010000Y-53594000D03* 132 | X82550000Y-53594000D03* 133 | X82550000Y-60706000D03* 134 | X80010000Y-60706000D03* 135 | X82550000Y-58166000D03* 136 | D14* 137 | X80010000Y-58166000D03* 138 | D19* 139 | X163322000Y-51562000D03* 140 | D20* 141 | X153162000Y-51562000D03* 142 | X88392000Y-45974000D03* 143 | D19* 144 | X88392000Y-56134000D03* 145 | X113792000Y-74930000D03* 146 | D20* 147 | X113792000Y-64770000D03* 148 | D10* 149 | X167132000Y-44014000D03* 150 | X167132000Y-48514000D03* 151 | X173632000Y-44014000D03* 152 | X173632000Y-48514000D03* 153 | M02* 154 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-F_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:44:28-05:00* 3 | G04 #@! TF.ProjectId,Main Board,4d61696e-2042-46f6-9172-642e6b696361,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:44:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 11:44:30 AM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T11:44:30-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,NonPlated,1,4,NPTH 7 | FMAT,2 8 | INCH 9 | T1C0.0300 10 | % 11 | G90 12 | G05 13 | T1 14 | X6.37Y-3.49 15 | X6.85Y-3.49 16 | T0 17 | M30 18 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/Main Board-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 11:44:30 AM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T11:44:30-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,Plated,1,4,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0236 11 | T3C0.0300 12 | T4C0.0315 13 | T5C0.0394 14 | T6C0.0402 15 | T7C0.0433 16 | % 17 | G90 18 | G05 19 | T1 20 | X3.6Y-3.04 21 | X3.64Y-2.3715 22 | X4.49Y-3.08 23 | X4.74Y-2.74 24 | X4.88Y-2.7 25 | X5.11Y-2.7815 26 | X5.46Y-2.12 27 | X5.7Y-1.67 28 | X5.94Y-1.92 29 | T2 30 | X6.1213Y-1.76 31 | X6.2Y-1.76 32 | T3 33 | X6.47Y-3.44 34 | X6.47Y-3.54 35 | X6.61Y-3.44 36 | X6.61Y-3.54 37 | X6.75Y-3.44 38 | X6.75Y-3.54 39 | T4 40 | X4.48Y-2.55 41 | X4.48Y-2.95 42 | X3.48Y-1.81 43 | X3.48Y-2.21 44 | X6.03Y-2.03 45 | X6.43Y-2.03 46 | X3.75Y-1.8313 47 | X3.75Y-1.91 48 | T5 49 | X3.15Y-2.29 50 | X3.15Y-2.39 51 | X3.25Y-2.29 52 | X3.25Y-2.39 53 | X3.15Y-2.6 54 | X3.15Y-2.7 55 | X3.15Y-2.8 56 | X3.15Y-2.9 57 | X3.15Y-3.0 58 | X3.15Y-3.1 59 | X3.15Y-3.2 60 | X3.15Y-3.3 61 | X3.25Y-2.6 62 | X3.25Y-2.7 63 | X3.25Y-2.8 64 | X3.25Y-2.9 65 | X3.25Y-3.0 66 | X3.25Y-3.1 67 | X3.25Y-3.2 68 | X3.25Y-3.3 69 | X4.2Y-1.92 70 | X4.3969Y-1.92 71 | X3.15Y-2.01 72 | X3.15Y-2.11 73 | X3.25Y-2.01 74 | X3.25Y-2.11 75 | X5.15Y-1.77 76 | X5.15Y-1.87 77 | X5.25Y-1.77 78 | X5.25Y-1.87 79 | X5.35Y-1.77 80 | X5.35Y-1.87 81 | X5.45Y-1.77 82 | X5.45Y-1.87 83 | X5.55Y-1.77 84 | X5.55Y-1.87 85 | X5.65Y-1.77 86 | X5.65Y-1.87 87 | X5.75Y-1.77 88 | X5.75Y-1.87 89 | X5.85Y-1.77 90 | X5.85Y-1.87 91 | T6 92 | X4.17Y-2.32 93 | X4.17Y-3.42 94 | X4.27Y-2.32 95 | X4.27Y-3.42 96 | X4.37Y-2.32 97 | X4.37Y-3.42 98 | X4.47Y-2.32 99 | X4.47Y-3.42 100 | X4.57Y-2.32 101 | X4.57Y-3.42 102 | X4.67Y-2.32 103 | X4.67Y-3.42 104 | X4.77Y-2.32 105 | X4.77Y-3.42 106 | X4.87Y-2.32 107 | X4.87Y-3.42 108 | X4.97Y-2.32 109 | X4.97Y-3.42 110 | X5.07Y-2.32 111 | X5.07Y-3.42 112 | X5.17Y-2.32 113 | X5.17Y-3.42 114 | X5.27Y-2.32 115 | X5.27Y-3.42 116 | X5.37Y-2.32 117 | X5.37Y-3.42 118 | X5.47Y-2.32 119 | X5.47Y-3.42 120 | X5.57Y-2.32 121 | X5.57Y-3.42 122 | X5.67Y-2.32 123 | X5.67Y-3.42 124 | X5.77Y-2.32 125 | X5.77Y-3.42 126 | X5.87Y-2.32 127 | X5.87Y-3.42 128 | X5.97Y-2.32 129 | X5.97Y-3.42 130 | X6.07Y-2.32 131 | X6.07Y-3.42 132 | T7 133 | X6.58Y-1.7328 134 | X6.58Y-1.91 135 | X6.8359Y-1.7328 136 | X6.8359Y-1.91 137 | T0 138 | M30 139 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/MainBoard_gbr/MainBoard_gbr.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/KiKadProject/AlarmClock/MainBoard_gbr/MainBoard_gbr.zip -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/SecondaryBoard_gbr.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/KiKadProject/AlarmClock/SecondaryBoard_gbr/SecondaryBoard_gbr.zip -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-B_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L2,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.700000X1.700000*% 14 | %ADD11R,1.700000X1.700000*% 15 | %ADD12C,1.700000*% 16 | %ADD13R,1.600000X1.600000*% 17 | %ADD14C,1.600000*% 18 | %ADD15O,2.000000X1.200000*% 19 | %ADD16C,0.800000*% 20 | %ADD17C,0.500000*% 21 | %ADD18C,0.250000*% 22 | G04 APERTURE END LIST* 23 | D10* 24 | X171958000Y-101854000D03* 25 | X174498000Y-101854000D03* 26 | X171958000Y-104394000D03* 27 | X174498000Y-104394000D03* 28 | X171958000Y-106934000D03* 29 | X174498000Y-106934000D03* 30 | X171958000Y-109474000D03* 31 | X174498000Y-109474000D03* 32 | X171958000Y-112014000D03* 33 | X174498000Y-112014000D03* 34 | X171958000Y-114554000D03* 35 | X174498000Y-114554000D03* 36 | X171958000Y-117094000D03* 37 | X174498000Y-117094000D03* 38 | D11* 39 | X171958000Y-119634000D03* 40 | D12* 41 | X174498000Y-119634000D03* 42 | D13* 43 | X170942000Y-88646000D03* 44 | D14* 45 | X172942000Y-88646000D03* 46 | D11* 47 | X119126000Y-106680000D03* 48 | D10* 49 | X119126000Y-109220000D03* 50 | D15* 51 | X145796000Y-104140000D03* 52 | X133096000Y-104140000D03* 53 | X145796000Y-106680000D03* 54 | X133096000Y-106680000D03* 55 | X145796000Y-109220000D03* 56 | X133096000Y-109220000D03* 57 | X145796000Y-111760000D03* 58 | X133096000Y-111760000D03* 59 | X145796000Y-114300000D03* 60 | X133096000Y-114300000D03* 61 | X145796000Y-116840000D03* 62 | X133096000Y-116840000D03* 63 | D11* 64 | X127671001Y-87169001D03* 65 | D10* 66 | X130211001Y-87169001D03* 67 | X132751001Y-87169001D03* 68 | X135291001Y-87169001D03* 69 | X137831001Y-87169001D03* 70 | X140371001Y-87169001D03* 71 | D11* 72 | X93980000Y-87169001D03* 73 | D10* 74 | X96520000Y-87169001D03* 75 | X99060000Y-87169001D03* 76 | X101600000Y-87169001D03* 77 | X104140000Y-87169001D03* 78 | X106680000Y-87169001D03* 79 | X109220000Y-87169001D03* 80 | D16* 81 | X136144000Y-81280000D03* 82 | X146304000Y-83820000D03* 83 | D17* 84 | X174498000Y-112014000D02* 85 | X171958000Y-112014000D01* 86 | X136100002Y-81280000D02* 87 | X130211001Y-87169001D01* 88 | X136144000Y-81280000D02* 89 | X136100002Y-81280000D01* 90 | X171958000Y-112014000D02* 91 | X165100000Y-112014000D01* 92 | X157226000Y-104140000D02* 93 | X145796000Y-104140000D01* 94 | X165100000Y-112014000D02* 95 | X157226000Y-104140000D01* 96 | X157480000Y-81280000D02* 97 | X136144000Y-81280000D01* 98 | X170942000Y-88646000D02* 99 | X164846000Y-88646000D01* 100 | X164846000Y-88646000D02* 101 | X157480000Y-81280000D01* 102 | X176276000Y-97536000D02* 103 | X170942000Y-92202000D01* 104 | X170942000Y-92202000D02* 105 | X170942000Y-88646000D01* 106 | X174498000Y-112014000D02* 107 | X176276000Y-110236000D01* 108 | X176276000Y-110236000D02* 109 | X176276000Y-97536000D01* 110 | X174498000Y-119634000D02* 111 | X171958000Y-119634000D01* 112 | X174498000Y-114554000D02* 113 | X171958000Y-114554000D01* 114 | X172942000Y-87514630D02* 115 | X164929370Y-79502000D01* 116 | X172942000Y-88646000D02* 117 | X172942000Y-87514630D01* 118 | X104187001Y-79502000D02* 119 | X96520000Y-87169001D01* 120 | X127671001Y-87169001D02* 121 | X127671001Y-83148999D01* 122 | X164929370Y-79502000D02* 123 | X131318000Y-79502000D01* 124 | X127671001Y-83148999D02* 125 | X131318000Y-79502000D01* 126 | X131318000Y-79502000D02* 127 | X104187001Y-79502000D01* 128 | X171958000Y-114554000D02* 129 | X165100000Y-114554000D01* 130 | X157226000Y-106680000D02* 131 | X145796000Y-106680000D01* 132 | X165100000Y-114554000D02* 133 | X157226000Y-106680000D01* 134 | X175848000Y-119634000D02* 135 | X174498000Y-119634000D01* 136 | X177546000Y-117936000D02* 137 | X175848000Y-119634000D01* 138 | X177546000Y-114804059D02* 139 | X177546000Y-117936000D01* 140 | X173741999Y-89445999D02* 141 | X172942000Y-88646000D01* 142 | X177546000Y-112776000D02* 143 | X177546000Y-93250000D01* 144 | X177546000Y-93250000D02* 145 | X173741999Y-89445999D01* 146 | X177546000Y-112776000D02* 147 | X177546000Y-114804059D01* 148 | X175768000Y-114554000D02* 149 | X177546000Y-112776000D01* 150 | X174498000Y-114554000D02* 151 | X175768000Y-114554000D01* 152 | X174498000Y-117094000D02* 153 | X171958000Y-117094000D01* 154 | X144780000Y-115570000D02* 155 | X133350000Y-104140000D01* 156 | X160274000Y-115570000D02* 157 | X144780000Y-115570000D01* 158 | X133350000Y-104140000D02* 159 | X133096000Y-104140000D01* 160 | X171958000Y-117094000D02* 161 | X161798000Y-117094000D01* 162 | X161798000Y-117094000D02* 163 | X160274000Y-115570000D01* 164 | D18* 165 | X146304000Y-83820000D02* 166 | X146304000Y-83820000D01* 167 | X154178000Y-91694000D02* 168 | X146304000Y-83820000D01* 169 | X171958000Y-104394000D02* 170 | X166878000Y-104394000D01* 171 | X166878000Y-104394000D02* 172 | X154178000Y-91694000D01* 173 | X136141000Y-88019000D02* 174 | X135291001Y-87169001D01* 175 | X173228000Y-105664000D02* 176 | X164846000Y-105664000D01* 177 | X174498000Y-104394000D02* 178 | X173228000Y-105664000D01* 179 | X153670000Y-94488000D02* 180 | X142610000Y-94488000D01* 181 | X142610000Y-94488000D02* 182 | X136141000Y-88019000D01* 183 | X164846000Y-105664000D02* 184 | X153670000Y-94488000D01* 185 | M02* 186 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-B_Mask.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Soldermask,Bot* 6 | G04 #@! TF.FilePolarity,Negative* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.700000X1.700000*% 14 | %ADD11R,1.700000X1.700000*% 15 | %ADD12C,1.700000*% 16 | %ADD13R,1.600000X1.600000*% 17 | %ADD14C,1.600000*% 18 | %ADD15O,2.000000X1.200000*% 19 | G04 APERTURE END LIST* 20 | D10* 21 | X171958000Y-101854000D03* 22 | X174498000Y-101854000D03* 23 | X171958000Y-104394000D03* 24 | X174498000Y-104394000D03* 25 | X171958000Y-106934000D03* 26 | X174498000Y-106934000D03* 27 | X171958000Y-109474000D03* 28 | X174498000Y-109474000D03* 29 | X171958000Y-112014000D03* 30 | X174498000Y-112014000D03* 31 | X171958000Y-114554000D03* 32 | X174498000Y-114554000D03* 33 | X171958000Y-117094000D03* 34 | X174498000Y-117094000D03* 35 | D11* 36 | X171958000Y-119634000D03* 37 | D12* 38 | X174498000Y-119634000D03* 39 | D13* 40 | X170942000Y-88646000D03* 41 | D14* 42 | X172942000Y-88646000D03* 43 | D11* 44 | X119126000Y-106680000D03* 45 | D10* 46 | X119126000Y-109220000D03* 47 | D15* 48 | X145796000Y-104140000D03* 49 | X133096000Y-104140000D03* 50 | X145796000Y-106680000D03* 51 | X133096000Y-106680000D03* 52 | X145796000Y-109220000D03* 53 | X133096000Y-109220000D03* 54 | X145796000Y-111760000D03* 55 | X133096000Y-111760000D03* 56 | X145796000Y-114300000D03* 57 | X133096000Y-114300000D03* 58 | X145796000Y-116840000D03* 59 | X133096000Y-116840000D03* 60 | D11* 61 | X127671001Y-87169001D03* 62 | D10* 63 | X130211001Y-87169001D03* 64 | X132751001Y-87169001D03* 65 | X135291001Y-87169001D03* 66 | X137831001Y-87169001D03* 67 | X140371001Y-87169001D03* 68 | D11* 69 | X93980000Y-87169001D03* 70 | D10* 71 | X96520000Y-87169001D03* 72 | X99060000Y-87169001D03* 73 | X101600000Y-87169001D03* 74 | X104140000Y-87169001D03* 75 | X106680000Y-87169001D03* 76 | X109220000Y-87169001D03* 77 | M02* 78 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-B_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-B_SilkS.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Legend,Bot* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-Edge_Cuts.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Profile,NP* 6 | %FSLAX46Y46*% 7 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 8 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 9 | %MOMM*% 10 | %LPD*% 11 | G04 APERTURE LIST* 12 | %ADD10C,0.100000*% 13 | G04 APERTURE END LIST* 14 | D10* 15 | X167528666Y-123190000D02* 16 | G75* 17 | G03X167528666Y-123190000I-1666666J0D01* 18 | G01* 19 | X163362000Y-123190000D02* 20 | X168362000Y-123190000D01* 21 | X165862000Y-120690000D02* 22 | X165862000Y-125690000D01* 23 | X85232666Y-80264000D02* 24 | G75* 25 | G03X85232666Y-80264000I-1666666J0D01* 26 | G01* 27 | X81066000Y-80264000D02* 28 | X86066000Y-80264000D01* 29 | X83566000Y-77764000D02* 30 | X83566000Y-82764000D01* 31 | X181356000Y-76200000D02* 32 | X181356000Y-127000000D01* 33 | X76454000Y-76200000D02* 34 | X181356000Y-76200000D01* 35 | X76454000Y-127000000D02* 36 | X76454000Y-76200000D01* 37 | X181356000Y-127000000D02* 38 | X76454000Y-127000000D01* 39 | M02* 40 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-F_Cu.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:27-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Copper,L1,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:27* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.700000X1.700000*% 14 | %ADD11R,1.700000X1.700000*% 15 | %ADD12C,1.700000*% 16 | %ADD13R,1.600000X1.600000*% 17 | %ADD14C,1.600000*% 18 | %ADD15O,2.000000X1.200000*% 19 | %ADD16C,0.800000*% 20 | %ADD17C,0.500000*% 21 | %ADD18C,0.250000*% 22 | G04 APERTURE END LIST* 23 | D10* 24 | X171958000Y-101854000D03* 25 | X174498000Y-101854000D03* 26 | X171958000Y-104394000D03* 27 | X174498000Y-104394000D03* 28 | X171958000Y-106934000D03* 29 | X174498000Y-106934000D03* 30 | X171958000Y-109474000D03* 31 | X174498000Y-109474000D03* 32 | X171958000Y-112014000D03* 33 | X174498000Y-112014000D03* 34 | X171958000Y-114554000D03* 35 | X174498000Y-114554000D03* 36 | X171958000Y-117094000D03* 37 | X174498000Y-117094000D03* 38 | D11* 39 | X171958000Y-119634000D03* 40 | D12* 41 | X174498000Y-119634000D03* 42 | D13* 43 | X170942000Y-88646000D03* 44 | D14* 45 | X172942000Y-88646000D03* 46 | D11* 47 | X119126000Y-106680000D03* 48 | D10* 49 | X119126000Y-109220000D03* 50 | D15* 51 | X145796000Y-104140000D03* 52 | X133096000Y-104140000D03* 53 | X145796000Y-106680000D03* 54 | X133096000Y-106680000D03* 55 | X145796000Y-109220000D03* 56 | X133096000Y-109220000D03* 57 | X145796000Y-111760000D03* 58 | X133096000Y-111760000D03* 59 | X145796000Y-114300000D03* 60 | X133096000Y-114300000D03* 61 | X145796000Y-116840000D03* 62 | X133096000Y-116840000D03* 63 | D11* 64 | X127671001Y-87169001D03* 65 | D10* 66 | X130211001Y-87169001D03* 67 | X132751001Y-87169001D03* 68 | X135291001Y-87169001D03* 69 | X137831001Y-87169001D03* 70 | X140371001Y-87169001D03* 71 | D11* 72 | X93980000Y-87169001D03* 73 | D10* 74 | X96520000Y-87169001D03* 75 | X99060000Y-87169001D03* 76 | X101600000Y-87169001D03* 77 | X104140000Y-87169001D03* 78 | X106680000Y-87169001D03* 79 | X109220000Y-87169001D03* 80 | D16* 81 | X136144000Y-81280000D03* 82 | X146304000Y-83820000D03* 83 | D17* 84 | X107489001Y-81280000D02* 85 | X101600000Y-87169001D01* 86 | X136144000Y-81280000D02* 87 | X107489001Y-81280000D01* 88 | X93980000Y-85819001D02* 89 | X93980000Y-87169001D01* 90 | X98519001Y-81280000D02* 91 | X93980000Y-85819001D01* 92 | X107489001Y-81280000D02* 93 | X98519001Y-81280000D01* 94 | X144296000Y-106680000D02* 95 | X133096000Y-106680000D01* 96 | X145796000Y-106680000D02* 97 | X144296000Y-106680000D01* 98 | X131846000Y-106680000D02* 99 | X119126000Y-106680000D01* 100 | D18* 101 | X133096000Y-106680000D02* 102 | X131846000Y-106680000D01* 103 | X151384000Y-109220000D02* 104 | X145796000Y-109220000D01* 105 | X152908000Y-110744000D02* 106 | X151384000Y-109220000D01* 107 | X170688000Y-110744000D02* 108 | X171958000Y-109474000D01* 109 | X152908000Y-110744000D02* 110 | X170688000Y-110744000D01* 111 | X99909999Y-88019000D02* 112 | X99060000Y-87169001D01* 113 | X173228000Y-108204000D02* 114 | X163830000Y-108204000D01* 115 | X174498000Y-109474000D02* 116 | X173228000Y-108204000D01* 117 | X113236999Y-101346000D02* 118 | X99909999Y-88019000D01* 119 | X163830000Y-108204000D02* 120 | X156972000Y-101346000D01* 121 | X156972000Y-101346000D02* 122 | X113236999Y-101346000D01* 123 | X171108001Y-106084001D02* 124 | X163488001Y-106084001D01* 125 | X171958000Y-106934000D02* 126 | X171108001Y-106084001D01* 127 | X163488001Y-106084001D02* 128 | X157480000Y-100076000D01* 129 | X117046999Y-100076000D02* 130 | X104140000Y-87169001D01* 131 | X157480000Y-100076000D02* 132 | X117046999Y-100076000D01* 133 | X110069999Y-88019000D02* 134 | X109220000Y-87169001D01* 135 | X120856999Y-98806000D02* 136 | X110069999Y-88019000D01* 137 | X163830000Y-98806000D02* 138 | X120856999Y-98806000D01* 139 | X173228000Y-105664000D02* 140 | X173228000Y-103924998D01* 141 | X174498000Y-106934000D02* 142 | X173228000Y-105664000D01* 143 | X172427002Y-103124000D02* 144 | X168148000Y-103124000D01* 145 | X173228000Y-103924998D02* 146 | X172427002Y-103124000D01* 147 | X168148000Y-103124000D02* 148 | X163830000Y-98806000D01* 149 | X107529999Y-86319002D02* 150 | X106680000Y-87169001D01* 151 | X146304000Y-83820000D02* 152 | X110029001Y-83820000D01* 153 | X110029001Y-83820000D02* 154 | X107529999Y-86319002D01* 155 | X133601000Y-88019000D02* 156 | X132751001Y-87169001D01* 157 | X141848000Y-96266000D02* 158 | X133601000Y-88019000D01* 159 | X168910000Y-96266000D02* 160 | X141848000Y-96266000D01* 161 | X171958000Y-99314000D02* 162 | X168910000Y-96266000D01* 163 | X171958000Y-101854000D02* 164 | X171958000Y-99314000D01* 165 | X133096000Y-109220000D02* 166 | X119126000Y-109220000D01* 167 | M02* 168 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-F_Mask.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Soldermask,Top* 6 | G04 #@! TF.FilePolarity,Negative* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | %ADD10O,1.700000X1.700000*% 14 | %ADD11R,1.700000X1.700000*% 15 | %ADD12C,1.700000*% 16 | %ADD13R,1.600000X1.600000*% 17 | %ADD14C,1.600000*% 18 | %ADD15O,2.000000X1.200000*% 19 | G04 APERTURE END LIST* 20 | D10* 21 | X171958000Y-101854000D03* 22 | X174498000Y-101854000D03* 23 | X171958000Y-104394000D03* 24 | X174498000Y-104394000D03* 25 | X171958000Y-106934000D03* 26 | X174498000Y-106934000D03* 27 | X171958000Y-109474000D03* 28 | X174498000Y-109474000D03* 29 | X171958000Y-112014000D03* 30 | X174498000Y-112014000D03* 31 | X171958000Y-114554000D03* 32 | X174498000Y-114554000D03* 33 | X171958000Y-117094000D03* 34 | X174498000Y-117094000D03* 35 | D11* 36 | X171958000Y-119634000D03* 37 | D12* 38 | X174498000Y-119634000D03* 39 | D13* 40 | X170942000Y-88646000D03* 41 | D14* 42 | X172942000Y-88646000D03* 43 | D11* 44 | X119126000Y-106680000D03* 45 | D10* 46 | X119126000Y-109220000D03* 47 | D15* 48 | X145796000Y-104140000D03* 49 | X133096000Y-104140000D03* 50 | X145796000Y-106680000D03* 51 | X133096000Y-106680000D03* 52 | X145796000Y-109220000D03* 53 | X133096000Y-109220000D03* 54 | X145796000Y-111760000D03* 55 | X133096000Y-111760000D03* 56 | X145796000Y-114300000D03* 57 | X133096000Y-114300000D03* 58 | X145796000Y-116840000D03* 59 | X133096000Y-116840000D03* 60 | D11* 61 | X127671001Y-87169001D03* 62 | D10* 63 | X130211001Y-87169001D03* 64 | X132751001Y-87169001D03* 65 | X135291001Y-87169001D03* 66 | X137831001Y-87169001D03* 67 | X140371001Y-87169001D03* 68 | D11* 69 | X93980000Y-87169001D03* 70 | D10* 71 | X96520000Y-87169001D03* 72 | X99060000Y-87169001D03* 73 | X101600000Y-87169001D03* 74 | X104140000Y-87169001D03* 75 | X106680000Y-87169001D03* 76 | X109220000Y-87169001D03* 77 | M02* 78 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-F_Paste.gbr: -------------------------------------------------------------------------------- 1 | G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,(5.1.5)-3* 2 | G04 #@! TF.CreationDate,2020-01-27T11:23:28-05:00* 3 | G04 #@! TF.ProjectId,Secondary_Board,5365636f-6e64-4617-9279-5f426f617264,rev?* 4 | G04 #@! TF.SameCoordinates,Original* 5 | G04 #@! TF.FileFunction,Paste,Top* 6 | G04 #@! TF.FilePolarity,Positive* 7 | %FSLAX46Y46*% 8 | G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)* 9 | G04 Created by KiCad (PCBNEW (5.1.5)-3) date 2020-01-27 11:23:28* 10 | %MOMM*% 11 | %LPD*% 12 | G04 APERTURE LIST* 13 | G04 APERTURE END LIST* 14 | M02* 15 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-NPTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 11:23:30 AM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T11:23:30-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,NonPlated,1,2,NPTH 7 | FMAT,2 8 | INCH 9 | % 10 | G90 11 | G05 12 | T0 13 | M30 14 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/SecondaryBoard_gbr/Secondary_Board-PTH.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad (5.1.5)-3} date 1/27/2020 11:23:30 AM 3 | ; FORMAT={-:-/ absolute / inch / decimal} 4 | ; #@! TF.CreationDate,2020-01-27T11:23:30-05:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,(5.1.5)-3 6 | ; #@! TF.FileFunction,Plated,1,2,PTH 7 | FMAT,2 8 | INCH 9 | T1C0.0157 10 | T2C0.0315 11 | T3C0.0394 12 | % 13 | G90 14 | G05 15 | T1 16 | X5.36Y-3.2 17 | X5.76Y-3.3 18 | T2 19 | X5.24Y-4.1 20 | X5.24Y-4.2 21 | X5.24Y-4.3 22 | X5.24Y-4.4 23 | X5.24Y-4.5 24 | X5.24Y-4.6 25 | X5.74Y-4.1 26 | X5.74Y-4.2 27 | X5.74Y-4.3 28 | X5.74Y-4.4 29 | X5.74Y-4.5 30 | X5.74Y-4.6 31 | X6.73Y-3.49 32 | X6.8087Y-3.49 33 | T3 34 | X4.69Y-4.2 35 | X4.69Y-4.3 36 | X6.77Y-4.01 37 | X6.77Y-4.11 38 | X6.77Y-4.21 39 | X6.77Y-4.31 40 | X6.77Y-4.41 41 | X6.77Y-4.51 42 | X6.77Y-4.61 43 | X6.77Y-4.71 44 | X6.87Y-4.01 45 | X6.87Y-4.11 46 | X6.87Y-4.21 47 | X6.87Y-4.31 48 | X6.87Y-4.41 49 | X6.87Y-4.51 50 | X6.87Y-4.61 51 | X6.87Y-4.71 52 | X3.7Y-3.4319 53 | X3.8Y-3.4319 54 | X3.9Y-3.4319 55 | X4.0Y-3.4319 56 | X4.1Y-3.4319 57 | X4.2Y-3.4319 58 | X4.3Y-3.4319 59 | X5.0264Y-3.4319 60 | X5.1264Y-3.4319 61 | X5.2264Y-3.4319 62 | X5.3264Y-3.4319 63 | X5.4264Y-3.4319 64 | X5.5264Y-3.4319 65 | T0 66 | M30 67 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/Secondary_Board-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # Connector_Generic_Conn_01x02 5 | # 6 | DEF Connector_Generic_Conn_01x02 J 0 40 Y N 1 F N 7 | F0 "J" 0 100 50 H V C CNN 8 | F1 "Connector_Generic_Conn_01x02" 0 -200 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | Connector*:*_1x??_* 13 | $ENDFPLIST 14 | DRAW 15 | S -50 -95 0 -105 1 1 6 N 16 | S -50 5 0 -5 1 1 6 N 17 | S -50 50 50 -150 1 1 10 f 18 | X Pin_1 1 -200 0 150 R 50 50 1 1 P 19 | X Pin_2 2 -200 -100 150 R 50 50 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # Connector_Generic_Conn_01x15 24 | # 25 | DEF Connector_Generic_Conn_01x15 J 0 40 Y N 1 F N 26 | F0 "J" 0 800 50 H V C CNN 27 | F1 "Connector_Generic_Conn_01x15" 0 -800 50 H V C CNN 28 | F2 "" 0 0 50 H I C CNN 29 | F3 "" 0 0 50 H I C CNN 30 | $FPLIST 31 | Connector*:*_1x??_* 32 | $ENDFPLIST 33 | DRAW 34 | S -50 -695 0 -705 1 1 6 N 35 | S -50 -595 0 -605 1 1 6 N 36 | S -50 -495 0 -505 1 1 6 N 37 | S -50 -395 0 -405 1 1 6 N 38 | S -50 -295 0 -305 1 1 6 N 39 | S -50 -195 0 -205 1 1 6 N 40 | S -50 -95 0 -105 1 1 6 N 41 | S -50 5 0 -5 1 1 6 N 42 | S -50 105 0 95 1 1 6 N 43 | S -50 205 0 195 1 1 6 N 44 | S -50 305 0 295 1 1 6 N 45 | S -50 405 0 395 1 1 6 N 46 | S -50 505 0 495 1 1 6 N 47 | S -50 605 0 595 1 1 6 N 48 | S -50 705 0 695 1 1 6 N 49 | S -50 750 50 -750 1 1 10 f 50 | X Pin_1 1 -200 700 150 R 50 50 1 1 P 51 | X Pin_10 10 -200 -200 150 R 50 50 1 1 P 52 | X Pin_11 11 -200 -300 150 R 50 50 1 1 P 53 | X Pin_12 12 -200 -400 150 R 50 50 1 1 P 54 | X Pin_13 13 -200 -500 150 R 50 50 1 1 P 55 | X Pin_14 14 -200 -600 150 R 50 50 1 1 P 56 | X Pin_15 15 -200 -700 150 R 50 50 1 1 P 57 | X Pin_2 2 -200 600 150 R 50 50 1 1 P 58 | X Pin_3 3 -200 500 150 R 50 50 1 1 P 59 | X Pin_4 4 -200 400 150 R 50 50 1 1 P 60 | X Pin_5 5 -200 300 150 R 50 50 1 1 P 61 | X Pin_6 6 -200 200 150 R 50 50 1 1 P 62 | X Pin_7 7 -200 100 150 R 50 50 1 1 P 63 | X Pin_8 8 -200 0 150 R 50 50 1 1 P 64 | X Pin_9 9 -200 -100 150 R 50 50 1 1 P 65 | ENDDRAW 66 | ENDDEF 67 | # 68 | # Device_C 69 | # 70 | DEF Device_C C 0 10 N Y 1 F N 71 | F0 "C" 25 100 50 H V L CNN 72 | F1 "Device_C" 25 -100 50 H V L CNN 73 | F2 "" 38 -150 50 H I C CNN 74 | F3 "" 0 0 50 H I C CNN 75 | $FPLIST 76 | C_* 77 | $ENDFPLIST 78 | DRAW 79 | P 2 0 1 20 -80 -30 80 -30 N 80 | P 2 0 1 20 -80 30 80 30 N 81 | X ~ 1 0 150 110 D 50 50 1 1 P 82 | X ~ 2 0 -150 110 U 50 50 1 1 P 83 | ENDDRAW 84 | ENDDEF 85 | # 86 | # Device_CP1 87 | # 88 | DEF Device_CP1 C 0 10 N N 1 F N 89 | F0 "C" 25 100 50 H V L CNN 90 | F1 "Device_CP1" 25 -100 50 H V L CNN 91 | F2 "" 0 0 50 H I C CNN 92 | F3 "" 0 0 50 H I C CNN 93 | $FPLIST 94 | CP_* 95 | $ENDFPLIST 96 | DRAW 97 | A 0 -150 128 1287 513 0 1 20 N -80 -50 80 -50 98 | P 2 0 1 20 -80 30 80 30 N 99 | P 2 0 1 0 -70 90 -30 90 N 100 | P 2 0 1 0 -50 70 -50 110 N 101 | X ~ 1 0 150 110 D 50 50 1 1 P 102 | X ~ 2 0 -150 130 U 50 50 1 1 P 103 | ENDDRAW 104 | ENDDEF 105 | # 106 | # User_DS3231_BREAKOUT 107 | # 108 | DEF User_DS3231_BREAKOUT U 0 40 Y Y 1 F N 109 | F0 "U" 50 500 50 H V C CNN 110 | F1 "User_DS3231_BREAKOUT" 250 150 50 V V C CNN 111 | F2 "" 0 0 50 H I C CNN 112 | F3 "" 0 0 50 H I C CNN 113 | DRAW 114 | S -150 550 300 -250 0 1 0 N 115 | X GND 1 -250 400 100 R 50 50 0 0 W 116 | X VCC 2 -250 300 100 R 50 50 0 0 W 117 | X SDA 3 -250 200 100 R 50 50 0 0 B 118 | X SCL 4 -250 100 100 R 50 50 0 0 B 119 | X SQW 5 -250 0 100 R 50 50 0 0 O 120 | X 32K 6 -250 -100 100 R 50 50 0 0 O 121 | ENDDRAW 122 | ENDDEF 123 | # 124 | # User_LOGIC_LVL_CVTR_4X 125 | # 126 | DEF User_LOGIC_LVL_CVTR_4X U 0 40 Y Y 1 F N 127 | F0 "U" -50 600 50 H V C CNN 128 | F1 "User_LOGIC_LVL_CVTR_4X" 0 200 50 V V C CNN 129 | F2 "" 0 0 50 H I C CNN 130 | F3 "" 0 0 50 H I C CNN 131 | DRAW 132 | S -450 650 450 -200 0 1 0 N 133 | X 5V 1 -550 550 100 R 50 50 0 0 W 134 | X 3P1 10 550 350 100 L 50 50 0 0 B 135 | X GND 11 550 450 100 L 50 50 0 0 W 136 | X 3_3V 12 550 550 100 L 50 50 0 0 W 137 | X GND 2 -550 450 100 R 50 50 0 0 W 138 | X 5P1 3 -550 350 100 R 50 50 0 0 B 139 | X 5P2 4 -550 250 100 R 50 50 0 0 B 140 | X 5P3 5 -550 150 100 R 50 50 0 0 B 141 | X 5P4 6 -550 50 100 R 50 50 0 0 B 142 | X 3P4 7 550 50 100 L 50 50 0 0 B 143 | X 3P3 8 550 150 100 L 50 50 0 0 B 144 | X 3P2 9 550 250 100 L 50 50 0 0 B 145 | ENDDRAW 146 | ENDDEF 147 | # 148 | # User_MAX98357A_BREAKOUT 149 | # 150 | DEF User_MAX98357A_BREAKOUT U 0 40 Y Y 1 F N 151 | F0 "U" -50 850 50 H V C CNN 152 | F1 "User_MAX98357A_BREAKOUT" 200 450 50 V V C CNN 153 | F2 "" 0 0 50 H I C CNN 154 | F3 "" 0 0 50 H I C CNN 155 | DRAW 156 | S -250 900 700 0 0 1 0 N 157 | X SPKR+ + 800 650 100 L 50 50 0 0 O 158 | X SPKR- - 800 250 100 L 50 50 0 0 O 159 | X VIN 1 -350 750 100 R 50 50 0 0 W 160 | X GND 2 -350 650 100 R 50 50 0 0 W 161 | X SD 3 -350 550 100 R 50 50 0 0 I 162 | X GAIN 4 -350 450 100 R 50 50 0 0 I 163 | X DIN 5 -350 350 100 R 50 50 0 0 I 164 | X BCLK 6 -350 250 100 R 50 50 0 0 I 165 | X LRC 7 -350 150 100 R 50 50 0 0 I 166 | ENDDRAW 167 | ENDDEF 168 | # 169 | # power_+3.3V 170 | # 171 | DEF power_+3.3V #PWR 0 0 Y Y 1 F P 172 | F0 "#PWR" 0 -150 50 H I C CNN 173 | F1 "power_+3.3V" 0 140 50 H V C CNN 174 | F2 "" 0 0 50 H I C CNN 175 | F3 "" 0 0 50 H I C CNN 176 | ALIAS +3.3V 177 | DRAW 178 | P 2 0 1 0 -30 50 0 100 N 179 | P 2 0 1 0 0 0 0 100 N 180 | P 2 0 1 0 0 100 30 50 N 181 | X +3V3 1 0 0 0 U 50 50 1 1 W N 182 | ENDDRAW 183 | ENDDEF 184 | # 185 | # power_+5V 186 | # 187 | DEF power_+5V #PWR 0 0 Y Y 1 F P 188 | F0 "#PWR" 0 -150 50 H I C CNN 189 | F1 "power_+5V" 0 140 50 H V C CNN 190 | F2 "" 0 0 50 H I C CNN 191 | F3 "" 0 0 50 H I C CNN 192 | DRAW 193 | P 2 0 1 0 -30 50 0 100 N 194 | P 2 0 1 0 0 0 0 100 N 195 | P 2 0 1 0 0 100 30 50 N 196 | X +5V 1 0 0 0 U 50 50 1 1 W N 197 | ENDDRAW 198 | ENDDEF 199 | # 200 | # power_GND 201 | # 202 | DEF power_GND #PWR 0 0 Y Y 1 F P 203 | F0 "#PWR" 0 -250 50 H I C CNN 204 | F1 "power_GND" 0 -150 50 H V C CNN 205 | F2 "" 0 0 50 H I C CNN 206 | F3 "" 0 0 50 H I C CNN 207 | DRAW 208 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 209 | X GND 1 0 0 0 D 50 50 1 1 W N 210 | ENDDRAW 211 | ENDDEF 212 | # 213 | #End Library 214 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/Secondary_Board.pro: -------------------------------------------------------------------------------- 1 | update=1/27/2020 10:37:44 AM 2 | version=1 3 | last_client=pcbnew 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [schematic_editor] 16 | version=1 17 | PageLayoutDescrFile= 18 | PlotDirectoryName= 19 | SubpartIdSeparator=0 20 | SubpartFirstId=65 21 | NetFmtName=Pcbnew 22 | SpiceAjustPassiveValues=0 23 | LabSize=50 24 | ERC_TestSimilarLabels=1 25 | [pcbnew] 26 | version=1 27 | PageLayoutDescrFile= 28 | LastNetListRead=Secondary_Board.net 29 | CopperLayerCount=2 30 | BoardThickness=1.6 31 | AllowMicroVias=0 32 | AllowBlindVias=0 33 | RequireCourtyardDefinitions=0 34 | ProhibitOverlappingCourtyards=1 35 | MinTrackWidth=0.2 36 | MinViaDiameter=0.4 37 | MinViaDrill=0.3 38 | MinMicroViaDiameter=0.2 39 | MinMicroViaDrill=0.09999999999999999 40 | MinHoleToHole=0.25 41 | TrackWidth1=0.25 42 | TrackWidth2=0.25 43 | TrackWidth3=0.5 44 | TrackWidth4=1 45 | ViaDiameter1=0.8 46 | ViaDrill1=0.4 47 | dPairWidth1=0.2 48 | dPairGap1=0.25 49 | dPairViaGap1=0.25 50 | SilkLineWidth=0.15 51 | SilkTextSizeV=1 52 | SilkTextSizeH=1 53 | SilkTextSizeThickness=0.15 54 | SilkTextItalic=0 55 | SilkTextUpright=1 56 | CopperLineWidth=0.2 57 | CopperTextSizeV=1.5 58 | CopperTextSizeH=1.5 59 | CopperTextThickness=0.3 60 | CopperTextItalic=0 61 | CopperTextUpright=1 62 | EdgeCutLineWidth=0.09999999999999999 63 | CourtyardLineWidth=0.12 64 | OthersLineWidth=0.15 65 | OthersTextSizeV=1 66 | OthersTextSizeH=1 67 | OthersTextSizeThickness=0.15 68 | OthersTextItalic=0 69 | OthersTextUpright=1 70 | SolderMaskClearance=0 71 | SolderMaskMinWidth=0 72 | SolderPasteClearance=0 73 | SolderPasteRatio=-0 74 | [pcbnew/Layer.F.Cu] 75 | Name=F.Cu 76 | Type=0 77 | Enabled=1 78 | [pcbnew/Layer.In1.Cu] 79 | Name=In1.Cu 80 | Type=0 81 | Enabled=0 82 | [pcbnew/Layer.In2.Cu] 83 | Name=In2.Cu 84 | Type=0 85 | Enabled=0 86 | [pcbnew/Layer.In3.Cu] 87 | Name=In3.Cu 88 | Type=0 89 | Enabled=0 90 | [pcbnew/Layer.In4.Cu] 91 | Name=In4.Cu 92 | Type=0 93 | Enabled=0 94 | [pcbnew/Layer.In5.Cu] 95 | Name=In5.Cu 96 | Type=0 97 | Enabled=0 98 | [pcbnew/Layer.In6.Cu] 99 | Name=In6.Cu 100 | Type=0 101 | Enabled=0 102 | [pcbnew/Layer.In7.Cu] 103 | Name=In7.Cu 104 | Type=0 105 | Enabled=0 106 | [pcbnew/Layer.In8.Cu] 107 | Name=In8.Cu 108 | Type=0 109 | Enabled=0 110 | [pcbnew/Layer.In9.Cu] 111 | Name=In9.Cu 112 | Type=0 113 | Enabled=0 114 | [pcbnew/Layer.In10.Cu] 115 | Name=In10.Cu 116 | Type=0 117 | Enabled=0 118 | [pcbnew/Layer.In11.Cu] 119 | Name=In11.Cu 120 | Type=0 121 | Enabled=0 122 | [pcbnew/Layer.In12.Cu] 123 | Name=In12.Cu 124 | Type=0 125 | Enabled=0 126 | [pcbnew/Layer.In13.Cu] 127 | Name=In13.Cu 128 | Type=0 129 | Enabled=0 130 | [pcbnew/Layer.In14.Cu] 131 | Name=In14.Cu 132 | Type=0 133 | Enabled=0 134 | [pcbnew/Layer.In15.Cu] 135 | Name=In15.Cu 136 | Type=0 137 | Enabled=0 138 | [pcbnew/Layer.In16.Cu] 139 | Name=In16.Cu 140 | Type=0 141 | Enabled=0 142 | [pcbnew/Layer.In17.Cu] 143 | Name=In17.Cu 144 | Type=0 145 | Enabled=0 146 | [pcbnew/Layer.In18.Cu] 147 | Name=In18.Cu 148 | Type=0 149 | Enabled=0 150 | [pcbnew/Layer.In19.Cu] 151 | Name=In19.Cu 152 | Type=0 153 | Enabled=0 154 | [pcbnew/Layer.In20.Cu] 155 | Name=In20.Cu 156 | Type=0 157 | Enabled=0 158 | [pcbnew/Layer.In21.Cu] 159 | Name=In21.Cu 160 | Type=0 161 | Enabled=0 162 | [pcbnew/Layer.In22.Cu] 163 | Name=In22.Cu 164 | Type=0 165 | Enabled=0 166 | [pcbnew/Layer.In23.Cu] 167 | Name=In23.Cu 168 | Type=0 169 | Enabled=0 170 | [pcbnew/Layer.In24.Cu] 171 | Name=In24.Cu 172 | Type=0 173 | Enabled=0 174 | [pcbnew/Layer.In25.Cu] 175 | Name=In25.Cu 176 | Type=0 177 | Enabled=0 178 | [pcbnew/Layer.In26.Cu] 179 | Name=In26.Cu 180 | Type=0 181 | Enabled=0 182 | [pcbnew/Layer.In27.Cu] 183 | Name=In27.Cu 184 | Type=0 185 | Enabled=0 186 | [pcbnew/Layer.In28.Cu] 187 | Name=In28.Cu 188 | Type=0 189 | Enabled=0 190 | [pcbnew/Layer.In29.Cu] 191 | Name=In29.Cu 192 | Type=0 193 | Enabled=0 194 | [pcbnew/Layer.In30.Cu] 195 | Name=In30.Cu 196 | Type=0 197 | Enabled=0 198 | [pcbnew/Layer.B.Cu] 199 | Name=B.Cu 200 | Type=0 201 | Enabled=1 202 | [pcbnew/Layer.B.Adhes] 203 | Enabled=1 204 | [pcbnew/Layer.F.Adhes] 205 | Enabled=1 206 | [pcbnew/Layer.B.Paste] 207 | Enabled=1 208 | [pcbnew/Layer.F.Paste] 209 | Enabled=1 210 | [pcbnew/Layer.B.SilkS] 211 | Enabled=1 212 | [pcbnew/Layer.F.SilkS] 213 | Enabled=1 214 | [pcbnew/Layer.B.Mask] 215 | Enabled=1 216 | [pcbnew/Layer.F.Mask] 217 | Enabled=1 218 | [pcbnew/Layer.Dwgs.User] 219 | Enabled=1 220 | [pcbnew/Layer.Cmts.User] 221 | Enabled=1 222 | [pcbnew/Layer.Eco1.User] 223 | Enabled=1 224 | [pcbnew/Layer.Eco2.User] 225 | Enabled=1 226 | [pcbnew/Layer.Edge.Cuts] 227 | Enabled=1 228 | [pcbnew/Layer.Margin] 229 | Enabled=1 230 | [pcbnew/Layer.B.CrtYd] 231 | Enabled=1 232 | [pcbnew/Layer.F.CrtYd] 233 | Enabled=1 234 | [pcbnew/Layer.B.Fab] 235 | Enabled=1 236 | [pcbnew/Layer.F.Fab] 237 | Enabled=1 238 | [pcbnew/Layer.Rescue] 239 | Enabled=0 240 | [pcbnew/Netclasses] 241 | [pcbnew/Netclasses/Default] 242 | Name=Default 243 | Clearance=0.2 244 | TrackWidth=0.25 245 | ViaDiameter=0.8 246 | ViaDrill=0.4 247 | uViaDiameter=0.3 248 | uViaDrill=0.1 249 | dPairWidth=0.2 250 | dPairGap=0.25 251 | dPairViaGap=0.25 252 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/fp-info-cache: -------------------------------------------------------------------------------- 1 | 0 2 | -------------------------------------------------------------------------------- /KiKadProject/AlarmClock/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name AlarmClock-rescue)(type Legacy)(uri ${KIPRJMOD}/AlarmClock-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /LedMgmt.ino: -------------------------------------------------------------------------------- 1 | // ledManager file 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | #include 7 | 8 | void ledMgr( void * parameter) { 9 | 10 | #define LED_CTRL_LOOP_FREQUENCY 15 11 | 12 | TickType_t xLastWakeTime; 13 | 14 | bool lastReadState; 15 | bool lastRoomState; 16 | bool lastNightState; 17 | bool lastSunriseActive1; 18 | bool lastSunriseActive2; 19 | bool lastSunriseActive3; 20 | uint16_t loopcount = 0; 21 | 22 | const float sunriseTime = 900; // seconds to start sunrise time 23 | const HsbColor blackColor(0, 0, 0); 24 | 25 | const HsbColor sunriseStartColor = HsbColor(0.0f, 0.9f, 0.07f); 26 | const HsbColor sunriseEndColor = HsbColor(0.1f, 0.6f, 0.6f); 27 | 28 | vTaskDelay(500 / portTICK_PERIOD_MS);// let other tasks get going 29 | Serial.println("ledMgr: ledMgr running..."); 30 | 31 | ledMaster.ledInit(); 32 | 33 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 34 | Serial.println("dispMgr: Unable to add displayMgr to taskWDT!"); 35 | } 36 | 37 | //setup section 38 | strip.Begin(); 39 | strip.Show(); 40 | 41 | int loopPeriod = round(1000 / LED_CTRL_LOOP_FREQUENCY); // run the master display loop at 15Hz 42 | const TickType_t xFrequency = loopPeriod / portTICK_PERIOD_MS; 43 | xLastWakeTime = xTaskGetTickCount(); 44 | for (;;) { 45 | loopcount++; 46 | if (loopcount >= 1000) { 47 | loopcount = 0; 48 | } 49 | 50 | // main loop 51 | if (loopcount % LED_CTRL_LOOP_FREQUENCY == 0 ) { // check the alarms once a second 52 | time_t tn = now(); 53 | if (alarm1.isSunriseActive() && ledMaster.getRoomLightState() == false) { 54 | lastSunriseActive1 = true; 55 | uint32_t timeRemain = alarm1.secondsToAlarm(tn); 56 | if (timeRemain <= sunriseTime) { 57 | //Serial.println("ledMgr: timeRemain: " + String(timeRemain)); 58 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 59 | //Serial.println("ledMgr: progress: " + String(progress)); 60 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 61 | ledMaster.setActiveSunriseRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 62 | ledMaster.sunriseLightOn(); 63 | } 64 | } 65 | else if (alarm2.isSunriseActive() && ledMaster.getRoomLightState() == false) { 66 | lastSunriseActive2 = true; 67 | uint32_t timeRemain = alarm2.secondsToAlarm(tn); 68 | if (timeRemain <= sunriseTime) { 69 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 70 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 71 | ledMaster.setActiveSunriseRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 72 | ledMaster.sunriseLightOn(); 73 | } 74 | } 75 | else if (alarm3.isSunriseActive() && ledMaster.getRoomLightState() == false) { 76 | lastSunriseActive3 = true; 77 | uint32_t timeRemain = alarm3.secondsToAlarm(tn); 78 | if (timeRemain <= sunriseTime) { 79 | float progress = (sunriseTime - (float)timeRemain) / sunriseTime; 80 | HsbColor sunriseColor = HsbColor::LinearBlend(sunriseStartColor, sunriseEndColor, progress); 81 | ledMaster.setActiveSunriseRoomLightColorHSB(sunriseColor.H, sunriseColor.S, sunriseColor.B); 82 | ledMaster.sunriseLightOn(); 83 | } 84 | } 85 | 86 | // handle if someone turns off the sunrise alarm function 87 | if (alarm1.isSunriseActive() == false && lastSunriseActive1 == true && ledMaster.getRoomLightState() == false) { 88 | lastSunriseActive1 = false; 89 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 90 | ledMaster.sunriseLightOff(); 91 | } 92 | if (alarm2.isSunriseActive() == false && lastSunriseActive2 == true && ledMaster.getRoomLightState() == false) { 93 | lastSunriseActive2 = false; 94 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 95 | ledMaster.sunriseLightOff(); 96 | } 97 | if (alarm3.isSunriseActive() == false && lastSunriseActive3 == true && ledMaster.getRoomLightState() == false) { 98 | lastSunriseActive3 = false; 99 | ledMaster.setActiveRoomLightColorHSB(blackColor.H, blackColor.S, blackColor.B); 100 | ledMaster.sunriseLightOff(); 101 | } 102 | } 103 | 104 | if (loopcount % (10 * LED_CTRL_LOOP_FREQUENCY) == 0 ) { // send a message once every 10 sec. just to be safe 105 | ledMaster.Dirty(); 106 | vTaskDelay(2 / portTICK_PERIOD_MS); // This is just to feed the IDLE watchdog 107 | } 108 | 109 | if (esp_task_wdt_reset() != ESP_OK) { 110 | Serial.println("Unable to reset ledMgr taskWDT!"); 111 | } 112 | 113 | ledMaster.updateStrip(); 114 | 115 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); 116 | } 117 | } 118 | 119 | // This task actually updates the led strip 120 | void ledDriver( void * parameter) { 121 | 122 | TickType_t xLastWakeTime; 123 | 124 | uint16_t loopcount = 0; 125 | 126 | vTaskDelay(600 / portTICK_PERIOD_MS);// let other tasks get going 127 | Serial.println("ledDriver: ledMgr running..."); 128 | 129 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 130 | Serial.println("dispMgr: Unable to add displayMgr to taskWDT!"); 131 | } 132 | 133 | const TickType_t xFrequency = 33 / portTICK_PERIOD_MS; // run the master display loop at about 30Hz 134 | xLastWakeTime = xTaskGetTickCount(); 135 | for (;;) { 136 | if (ledMaster.CanShow() && ledMaster.IsDirty()) { 137 | if (xSemaphoreTake(ledMutex, (TickType_t) 10) == pdTRUE ) { 138 | disp.setSpriteEnable(false); 139 | taskENTER_CRITICAL(&criticalMutex); 140 | ledMaster.Show(); 141 | taskEXIT_CRITICAL(&criticalMutex); 142 | xSemaphoreGive(ledMutex); 143 | disp.setSpriteEnable(true); 144 | } 145 | } 146 | if (esp_task_wdt_reset() != ESP_OK) { 147 | Serial.println("Unable to reset ledMgr taskWDT!"); 148 | } 149 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); 150 | } 151 | } 152 | -------------------------------------------------------------------------------- /Photos/DSC01659.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01659.jpg -------------------------------------------------------------------------------- /Photos/DSC01660.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01660.jpg -------------------------------------------------------------------------------- /Photos/DSC01661.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01661.jpg -------------------------------------------------------------------------------- /Photos/DSC01662.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01662.jpg -------------------------------------------------------------------------------- /Photos/DSC01663.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01663.jpg -------------------------------------------------------------------------------- /Photos/DSC01664.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01664.jpg -------------------------------------------------------------------------------- /Photos/DSC01665.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01665.jpg -------------------------------------------------------------------------------- /Photos/DSC01666.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01666.jpg -------------------------------------------------------------------------------- /Photos/DSC01667.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01667.jpg -------------------------------------------------------------------------------- /Photos/DSC01668.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Photos/DSC01668.jpg -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Alarm-Clock 2 | An ESP32 based alarm clock 3 | 4 | This is a bedside alarm clock and light controller I developed. IT relies on a number of external libraries: 5 | 6 | OpenWeather by Bodmer 7 | TFT_eSPI by Bodmer 8 | JSON_Decoder by Bodmer 9 | (Thanks Bodmer. This project would not be possible without you) 10 | ESP8266Audio by Earle F. Pillhower III 11 | NeoPixelBus by Makuna 12 | DS3232RTC by Jack Christensen 13 | Time by Paul Stoffregen 14 | The ESP32 Board support Package for Arduino by espressif 15 | 16 | Thanks and credit to all of them. A few of these files are from Bodmer's libraries. They are included as that is how he intended for them to be employed in the project. 17 | 18 | Also included in the KiCad Project directory are the PCB layout files and schematics I used to build my clock. 19 | -------------------------------------------------------------------------------- /SPIFFS_Support.h: -------------------------------------------------------------------------------- 1 | /*==================================================================================== 2 | This sketch contains support functions for the ESP6266 SPIFFS filing system 3 | 4 | Created by Bodmer 15th Jan 2017 5 | ==================================================================================*/ 6 | void listDir(fs::FS &fs, const char * dirname, uint8_t levels); 7 | 8 | // ------------------------------------------------------------------------- 9 | // List SPIFFS files in a neat format for ESP8266 or ESP32 10 | // ------------------------------------------------------------------------- 11 | void listFiles(void) { 12 | Serial.println(); 13 | Serial.println("SPIFFS files found:"); 14 | 15 | #ifdef ESP32 16 | listDir(SPIFFS, "/", true); 17 | #else 18 | fs::Dir dir = SPIFFS.openDir("/"); // Root directory 19 | String line = "====================================="; 20 | 21 | Serial.println(line); 22 | Serial.println(" File name Size"); 23 | Serial.println(line); 24 | 25 | while (dir.next()) { 26 | String fileName = dir.fileName(); 27 | Serial.print(fileName); 28 | // File path can be 31 characters maximum in SPIFFS 29 | int spaces = 33 - fileName.length(); // Tabulate nicely 30 | if (spaces < 1) spaces = 1; 31 | while (spaces--) Serial.print(" "); 32 | fs::File f = dir.openFile("r"); 33 | Serial.print(f.size()); Serial.println(" bytes"); 34 | yield(); 35 | } 36 | 37 | Serial.println(line); 38 | #endif 39 | Serial.println(); 40 | delay(1000); 41 | } 42 | 43 | #ifdef ESP32 44 | void listDir(fs::FS &fs, const char * dirname, uint8_t levels) { 45 | Serial.printf("Listing directory: %s\n", dirname); 46 | 47 | fs::File root = fs.open(dirname); 48 | if (!root) { 49 | Serial.println("Failed to open directory"); 50 | return; 51 | } 52 | if (!root.isDirectory()) { 53 | Serial.println("Not a directory"); 54 | return; 55 | } 56 | 57 | fs::File file = root.openNextFile(); 58 | while (file) { 59 | 60 | if (file.isDirectory()) { 61 | Serial.print("DIR : "); 62 | String fileName = file.name(); 63 | Serial.print(fileName); 64 | if (levels) { 65 | listDir(fs, file.name(), levels - 1); 66 | } 67 | } else { 68 | String fileName = file.name(); 69 | Serial.print(" " + fileName); 70 | // File path can be 31 characters maximum in SPIFFS 71 | int spaces = 33 - fileName.length(); // Tabulate nicely 72 | if (spaces < 1) spaces = 1; 73 | while (spaces--) Serial.print(" "); 74 | String fileSize = (String) file.size(); 75 | spaces = 8 - fileSize.length(); // Tabulate nicely 76 | if (spaces < 1) spaces = 1; 77 | while (spaces--) Serial.print(" "); 78 | Serial.println(fileSize + " bytes"); 79 | } 80 | 81 | file = root.openNextFile(); 82 | } 83 | } 84 | #endif 85 | //==================================================================================== 86 | -------------------------------------------------------------------------------- /Schematic/Alarm_Clock_Schematic.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/Schematic/Alarm_Clock_Schematic.pdf -------------------------------------------------------------------------------- /data/alarm1.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarm1.wav -------------------------------------------------------------------------------- /data/alarm2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarm2.wav -------------------------------------------------------------------------------- /data/alarm3.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarm3.wav -------------------------------------------------------------------------------- /data/alarmicon/alarm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_inv.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_inv.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_invert_med.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_invert_med.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_invert_sm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_invert_sm.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_med.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_med.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_red.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_red.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_red_med.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_red_med.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_red_sm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_red_sm.bmp -------------------------------------------------------------------------------- /data/alarmicon/alarm_sm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/alarmicon/alarm_sm.bmp -------------------------------------------------------------------------------- /data/icon/clear-day.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/clear-day.bmp -------------------------------------------------------------------------------- /data/icon/clear-night.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/clear-night.bmp -------------------------------------------------------------------------------- /data/icon/cloudy.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/cloudy.bmp -------------------------------------------------------------------------------- /data/icon/drizzle.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/drizzle.bmp -------------------------------------------------------------------------------- /data/icon/fog.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/fog.bmp -------------------------------------------------------------------------------- /data/icon/hail.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/hail.bmp -------------------------------------------------------------------------------- /data/icon/heavy-snow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/heavy-snow.bmp -------------------------------------------------------------------------------- /data/icon/lightRain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/lightRain.bmp -------------------------------------------------------------------------------- /data/icon/partly-cloudy-day.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/partly-cloudy-day.bmp -------------------------------------------------------------------------------- /data/icon/partly-cloudy-night.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/partly-cloudy-night.bmp -------------------------------------------------------------------------------- /data/icon/rain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/rain.bmp -------------------------------------------------------------------------------- /data/icon/sleet.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/sleet.bmp -------------------------------------------------------------------------------- /data/icon/snow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/snow.bmp -------------------------------------------------------------------------------- /data/icon/thunderstorm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/thunderstorm.bmp -------------------------------------------------------------------------------- /data/icon/unknown.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/unknown.bmp -------------------------------------------------------------------------------- /data/icon/wind.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon/wind.bmp -------------------------------------------------------------------------------- /data/icon50/clear-day.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/clear-day.bmp -------------------------------------------------------------------------------- /data/icon50/clear-night.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/clear-night.bmp -------------------------------------------------------------------------------- /data/icon50/cloudy.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/cloudy.bmp -------------------------------------------------------------------------------- /data/icon50/drizzle.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/drizzle.bmp -------------------------------------------------------------------------------- /data/icon50/fog.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/fog.bmp -------------------------------------------------------------------------------- /data/icon50/hail.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/hail.bmp -------------------------------------------------------------------------------- /data/icon50/heavy-snow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/heavy-snow.bmp -------------------------------------------------------------------------------- /data/icon50/lightRain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/lightRain.bmp -------------------------------------------------------------------------------- /data/icon50/partly-cloudy-day.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/partly-cloudy-day.bmp -------------------------------------------------------------------------------- /data/icon50/partly-cloudy-night.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/partly-cloudy-night.bmp -------------------------------------------------------------------------------- /data/icon50/rain.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/rain.bmp -------------------------------------------------------------------------------- /data/icon50/sleet.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/sleet.bmp -------------------------------------------------------------------------------- /data/icon50/snow.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/snow.bmp -------------------------------------------------------------------------------- /data/icon50/thunderstorm.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/thunderstorm.bmp -------------------------------------------------------------------------------- /data/icon50/unknown.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/unknown.bmp -------------------------------------------------------------------------------- /data/icon50/wind.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/icon50/wind.bmp -------------------------------------------------------------------------------- /data/lightIcon/book_off.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/book_off.bmp -------------------------------------------------------------------------------- /data/lightIcon/book_on.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/book_on.bmp -------------------------------------------------------------------------------- /data/lightIcon/light_off.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/light_off.bmp -------------------------------------------------------------------------------- /data/lightIcon/light_off30.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/light_off30.bmp -------------------------------------------------------------------------------- /data/lightIcon/light_on.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/light_on.bmp -------------------------------------------------------------------------------- /data/lightIcon/light_on30.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/light_on30.bmp -------------------------------------------------------------------------------- /data/lightIcon/night_off30.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/night_off30.bmp -------------------------------------------------------------------------------- /data/lightIcon/night_on30.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/night_on30.bmp -------------------------------------------------------------------------------- /data/lightIcon/sunrise_off.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/sunrise_off.bmp -------------------------------------------------------------------------------- /data/lightIcon/sunrise_on.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lebo77/Alarm-Clock/e26994a424022e315e920d05ddb8ff1911cf7156/data/lightIcon/sunrise_on.bmp -------------------------------------------------------------------------------- /displayMgr.h: -------------------------------------------------------------------------------- 1 | // This file holds variables in a singleton 2 | #include "globalInclude.h" 3 | 4 | class displayMgr 5 | { 6 | private: 7 | volatile bool currWiFiStatus = false; 8 | volatile bool weatherValid = false; 9 | volatile bool drawLowerScreen = false; 10 | volatile bool drawTimeSection = false; 11 | volatile bool fullReDraw = true; 12 | volatile bool spriteEnable = false; 13 | volatile uint8_t alarmRinging = 0; 14 | volatile time_t lastTouch = now(); 15 | volatile uint16_t backlightTimeout = 30; 16 | volatile uint8_t currentMode = 0; 17 | volatile uint8_t alarmEdit = 0; 18 | volatile bool screenTouchActive = false; 19 | volatile uint8_t lightSubMode = 0; 20 | String mainPgMessage = "Data by OpenWeather"; 21 | //String mainPgMessage = String("OW API Calls: ") + String(OwAPICalls); 22 | volatile uint32_t mainPgMessageColor = TFT_DARKGREY; 23 | 24 | 25 | public: 26 | // get/set CurrWiFiStatus 27 | void setCurrWiFiStatus (bool value) { 28 | currWiFiStatus = value; 29 | } 30 | bool getCurrWiFiStatus (void) { 31 | return currWiFiStatus; 32 | } 33 | 34 | // get/set weatherValid 35 | void setWeatherValid (bool value) { 36 | weatherValid = value; 37 | } 38 | bool getWeatherValid (void) { 39 | return weatherValid; 40 | } 41 | 42 | // get/set drawLowerScreen 43 | void setDrawLowerScreen (bool value) { 44 | drawLowerScreen = value; 45 | } 46 | bool getDrawLowerScreen (void) { 47 | return drawLowerScreen; 48 | } 49 | 50 | // get/set drawLowerScreen 51 | void setDrawTimeSection (bool value) { 52 | drawTimeSection = value; 53 | } 54 | bool getDrawTimeSection (void) { 55 | return drawTimeSection; 56 | } 57 | 58 | // get/set drawLowerScreen 59 | void setFullReDraw (bool value) { 60 | fullReDraw = value; 61 | } 62 | bool getFullReDraw (void) { 63 | return fullReDraw; 64 | } 65 | 66 | // get/set spriteEnable 67 | void setSpriteEnable (bool value) { 68 | spriteEnable = value; 69 | } 70 | bool getSpriteEnable (void) { 71 | return spriteEnable; 72 | } 73 | 74 | // get/set alarmRinging 75 | void setAlarmRinging (uint8_t value) { 76 | alarmRinging = value; 77 | } 78 | uint8_t getAlarmRinging (void) { 79 | return alarmRinging; 80 | } 81 | 82 | // get/set currentMode 83 | void setCurrentMode (uint8_t value) { 84 | currentMode = value; 85 | } 86 | uint8_t getCurrentMode (void) { 87 | return currentMode; 88 | } 89 | 90 | // get/set alarmEdit 91 | void setAlarmEdit (uint8_t value) { 92 | alarmEdit = value; 93 | } 94 | uint8_t getAlarmEdit (void) { 95 | return alarmEdit; 96 | } 97 | 98 | // get/set mainPgMessage 99 | void setMainPgMessage (String value) { 100 | mainPgMessage = value; 101 | } 102 | String getMainPgMessage (void) { 103 | return mainPgMessage; 104 | } 105 | 106 | // get/set mainPgMessageColor 107 | void setMainPgMessageColor (uint32_t value) { 108 | mainPgMessageColor = value; 109 | } 110 | uint32_t getMainPgMessageColor (void) { 111 | return mainPgMessageColor; 112 | } 113 | 114 | // touchscreen alerts 115 | void resetlastTouch (void) { 116 | lastTouch = now(); 117 | } 118 | void setBLTimeout (uint16_t newTimeout) { 119 | backlightTimeout = newTimeout; 120 | } 121 | 122 | // get/set lightSubMode 123 | void setLightSubMode (uint8_t val) { 124 | lightSubMode = val; 125 | } 126 | uint8_t getLightSubMode (void) { 127 | return lightSubMode; 128 | } 129 | 130 | bool checkRecentTouch(void) { 131 | time_t ts = now(); 132 | if (ts - lastTouch > backlightTimeout) return false; 133 | else return true; 134 | } 135 | 136 | void setScreenTouchActive(bool value) { 137 | screenTouchActive = value; 138 | } 139 | bool getScreenTouchActive( void ) { 140 | return screenTouchActive; 141 | } 142 | 143 | }; 144 | -------------------------------------------------------------------------------- /globalInclude.h: -------------------------------------------------------------------------------- 1 | // This is a file that should get included in every source file 2 | 3 | // #define DEMO_MODE 4 | -------------------------------------------------------------------------------- /modeMgmt.h: -------------------------------------------------------------------------------- 1 | // modeMgmt.h 2 | 3 | // mode macros 4 | #define MAIN_MODE 0 5 | #define CURRENT_WX_MODE 1 6 | #define FORECAST_WX_MODE 2 7 | #define HOURLY_WX_MODE 3 8 | #define ALARM_DISPLAY_MODE 4 9 | #define ALARM_SET_MODE 5 10 | #define GEN_LIGHT_CTRL_MODE 6 11 | 12 | #define READ_LIGHT_SUB_MODE 0 13 | #define ROOM_LIGHT_SUB_MODE 1 14 | #define NIGHT_LIGHT_SUB_MODE 2 15 | -------------------------------------------------------------------------------- /scrolling_sprites.h: -------------------------------------------------------------------------------- 1 | // This contains the class for scrolling sprites 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | #include "TFT_eSPI.h" 7 | #include "Free_Fonts.h" 8 | 9 | // Set up Pins - Only need DC and CS for hardware SPI 10 | #define TFT_DC 16 11 | #define TFT_CS 17 12 | 13 | // Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC 14 | TFT_eSPI tft = TFT_eSPI(); // Invoke custom library 15 | SemaphoreHandle_t tftMutex; 16 | 17 | // The rollingSprite class 18 | class rollingSprite 19 | { 20 | 21 | private: 22 | unsigned int c_sprHeight; 23 | unsigned int c_sprWidth; 24 | String c_spriteMsg; 25 | int c_scrollGap; 26 | int c_scrollSpeed; 27 | int c_txtWidth; 28 | int c_spriteACount; 29 | int c_spriteBCount; 30 | bool c_spriteValid = false; 31 | uint16_t c_x; 32 | uint16_t c_y; 33 | uint32_t c_txtColor; 34 | 35 | SemaphoreHandle_t spriteMutex; 36 | 37 | TFT_eSprite spr = TFT_eSprite(&tft); // Sprite object 38 | 39 | public: 40 | 41 | bool newSprite(String spriteMsg, unsigned int sprHeight, unsigned int sprWidth, int scrollSpeed, int scrollGap, uint32_t color, uint16_t x, uint16_t y) { 42 | if (spriteMutex == NULL) { 43 | spriteMutex = xSemaphoreCreateMutex(); 44 | } 45 | 46 | if (xSemaphoreTake(spriteMutex, (TickType_t) 30) == pdTRUE ) { 47 | // set up the class vairables 48 | c_spriteMsg = spriteMsg; 49 | c_sprHeight = sprHeight; 50 | c_sprWidth = sprWidth; 51 | c_scrollSpeed = scrollSpeed; 52 | c_scrollGap = scrollGap; 53 | c_txtColor = color; 54 | c_x = x; 55 | c_y = y; 56 | 57 | c_spriteValid = false; 58 | spr.setColorDepth(16); 59 | spr.setFreeFont(FSS9); 60 | 61 | spr.createSprite(c_sprWidth, c_sprHeight); 62 | spr.fillSprite(TFT_BLACK); 63 | spr.setTextColor(c_txtColor); 64 | spr.setTextWrap(false); 65 | xSemaphoreGive(spriteMutex); 66 | } 67 | else { 68 | Serial.println("newSprite: Unable to update sprite: " + c_spriteMsg); 69 | } 70 | 71 | if (xSemaphoreTake(spriteMutex, (TickType_t) 40) == pdTRUE ) { 72 | c_txtWidth = spr.textWidth(c_spriteMsg, GFXFF); 73 | c_spriteACount = 0; 74 | c_spriteBCount = c_scrollGap + c_txtWidth; 75 | c_spriteValid = true; 76 | xSemaphoreGive(spriteMutex); 77 | return true; 78 | } 79 | else { 80 | Serial.println("newSprite: Unable to update sprite: " + c_spriteMsg); 81 | } 82 | return false; 83 | } 84 | 85 | bool delSprite() { 86 | if (spriteMutex != NULL || c_spriteValid == true) { 87 | if (xSemaphoreTake(spriteMutex, (TickType_t) 50) == pdTRUE ) { 88 | c_spriteValid = false; 89 | c_x = 0; 90 | c_y = 0; 91 | c_spriteACount = 0; 92 | c_spriteBCount = 0; 93 | spr.deleteSprite(); 94 | c_spriteMsg = " "; 95 | xSemaphoreGive(spriteMutex); 96 | } 97 | else { 98 | Serial.print("delSprite: Unable to delete sprite: " + c_spriteMsg); 99 | return false; 100 | } 101 | } 102 | return true; 103 | } 104 | 105 | bool drawSprite() { 106 | if (c_spriteValid == true) { 107 | 108 | if (xSemaphoreTake(spriteMutex, (TickType_t) 5) == pdTRUE ) { 109 | c_spriteACount -= c_scrollSpeed; 110 | c_spriteBCount -= c_scrollSpeed; 111 | spr.fillSprite(TFT_BLACK); 112 | spr.setTextColor(c_txtColor); 113 | spr.drawString(c_spriteMsg, c_spriteACount, 0, GFXFF); 114 | spr.drawString(c_spriteMsg, c_spriteBCount, 0, GFXFF); 115 | xSemaphoreGive(spriteMutex); 116 | } 117 | else { 118 | Serial.println("drawSprite: Unable to update sprite: " + c_spriteMsg); 119 | } 120 | 121 | if (xSemaphoreTake(spriteMutex, (TickType_t) 5) == pdTRUE ) { 122 | if (c_spriteACount < (-1 * (c_txtWidth))) { 123 | c_spriteACount += ((c_txtWidth + c_scrollGap) * 2); 124 | } 125 | if (c_spriteBCount < (-1 * (c_txtWidth))) { 126 | c_spriteBCount += ((c_txtWidth + c_scrollGap) * 2); 127 | } 128 | xSemaphoreGive(spriteMutex); 129 | } 130 | else { 131 | Serial.println("drawSprite: Unable to reset sprite counts: " + c_spriteMsg); 132 | } 133 | 134 | if (xSemaphoreTake(tftMutex, (TickType_t) 40 / portTICK_PERIOD_MS) == pdTRUE ) { 135 | spr.pushSprite(c_x, c_y); 136 | xSemaphoreGive(tftMutex); 137 | } 138 | else { 139 | Serial.println("drawSprite: Unable to push sprite: " + c_spriteMsg); 140 | return false; 141 | } 142 | } 143 | return true; 144 | } 145 | 146 | bool isValid() { 147 | return c_spriteValid; 148 | } 149 | 150 | String currMsg() { 151 | return c_spriteMsg; 152 | } 153 | }; 154 | -------------------------------------------------------------------------------- /scrolling_sprites.ino: -------------------------------------------------------------------------------- 1 | // This file has the code that executes to scroll the sprites 2 | 3 | #include "globalInclude.h" 4 | 5 | #include 6 | //========================================================================================== 7 | 8 | void spriteMgr( void * parameter) { 9 | 10 | vTaskDelay(2000 / portTICK_PERIOD_MS); // let the other task get going 11 | 12 | if ( esp_task_wdt_add(NULL) != ESP_OK) { // add task to WDT 13 | Serial.println("spriteMgr: Unable to add spriteMgr to taskWDT!"); 14 | } 15 | 16 | TickType_t xLastWakeTime; 17 | const TickType_t xFrequency = 40 / portTICK_PERIOD_MS; 18 | xLastWakeTime = xTaskGetTickCount(); 19 | 20 | // Initialise the xLastWakeTime variable with the current time. 21 | xLastWakeTime = xTaskGetTickCount(); 22 | 23 | for ( ;; ) 24 | { 25 | if (disp.getSpriteEnable()) { 26 | 27 | sprite1.drawSprite(); 28 | sprite2.drawSprite(); 29 | sprite3.drawSprite(); 30 | 31 | } 32 | if (esp_task_wdt_reset() != ESP_OK) { 33 | Serial.println("spriteMgr: Unable to reset spriteMgr taskWDT!"); 34 | } 35 | vTaskDelayUntil( &xLastWakeTime, xFrequency ); // Wait for the next cycle. 36 | } 37 | } 38 | --------------------------------------------------------------------------------