main files
This commit is contained in:
commit
783f2268ac
BIN
3D/Bottom.stl
Executable file
BIN
3D/Bottom.stl
Executable file
Binary file not shown.
BIN
3D/Button 1.stl
Executable file
BIN
3D/Button 1.stl
Executable file
Binary file not shown.
BIN
3D/Button 2.stl
Executable file
BIN
3D/Button 2.stl
Executable file
Binary file not shown.
BIN
3D/Button 3.stl
Executable file
BIN
3D/Button 3.stl
Executable file
Binary file not shown.
BIN
3D/Button 4.stl
Executable file
BIN
3D/Button 4.stl
Executable file
Binary file not shown.
BIN
3D/Kam+Barn+Alarm+Holder.f3d
Executable file
BIN
3D/Kam+Barn+Alarm+Holder.f3d
Executable file
Binary file not shown.
BIN
3D/Top.stl
Executable file
BIN
3D/Top.stl
Executable file
Binary file not shown.
612
ESP32 Code/barn/barn.ino
Executable file
612
ESP32 Code/barn/barn.ino
Executable file
@ -0,0 +1,612 @@
|
|||||||
|
#include <Arduino.h>
|
||||||
|
#include <WiFi.h>
|
||||||
|
#include <ESPAsyncWebServer.h>
|
||||||
|
#include <Preferences.h>
|
||||||
|
#include <ESP32Ping.h>
|
||||||
|
#include <HTTPClient.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <Adafruit_GFX.h>
|
||||||
|
#include <Adafruit_SSD1306.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Preferences prefs;
|
||||||
|
WiFiClient client;
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
// Screen configuration
|
||||||
|
Adafruit_SSD1306 display(128, 32, &Wire, -1);
|
||||||
|
|
||||||
|
AsyncWebServer server(80);
|
||||||
|
String ssid, pass, ip_address;
|
||||||
|
|
||||||
|
|
||||||
|
bool tone_on = false;
|
||||||
|
bool connected = false;
|
||||||
|
bool sermon_over = false;
|
||||||
|
|
||||||
|
|
||||||
|
unsigned long previousMillis, currentMillis;
|
||||||
|
|
||||||
|
int count;
|
||||||
|
char ssid_char[20];
|
||||||
|
char pass_char[20];
|
||||||
|
|
||||||
|
|
||||||
|
// HTML web page to handle 3 input fields (input1, input2, input3)
|
||||||
|
const char index_html[] PROGMEM = R"rawliteral(
|
||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>ESP Kid's Alarm Barn</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
height: 100vh;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container {
|
||||||
|
text-align: center;
|
||||||
|
background-color: white;
|
||||||
|
padding: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#logout_button {
|
||||||
|
position: absolute;
|
||||||
|
top: 20px;
|
||||||
|
right: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
form {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="text"],
|
||||||
|
input[type="password"] {
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
input[type="submit"] {
|
||||||
|
padding: 10px 20px;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #007bff;
|
||||||
|
border: none;
|
||||||
|
color: white;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover,
|
||||||
|
input[type="submit"]:hover {
|
||||||
|
background-color: #0056b3;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div id="logout_button">
|
||||||
|
<button onclick="window.location.href='/?logout=1';">Logout</button>
|
||||||
|
</div>
|
||||||
|
<div id="container">
|
||||||
|
<h1>ESP Kid's Alarm Barn</h1>
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<h2>Change WIFI Password</h2>
|
||||||
|
<form action="/" id="form_wifi">
|
||||||
|
SSID: <input type="text" name="ssid" id="ssid">
|
||||||
|
<br>
|
||||||
|
Password: <input type="password" name="pass" id="pass">
|
||||||
|
<br>
|
||||||
|
<input type="submit" value="Update Wifi" id="submit_wifi">
|
||||||
|
</form>
|
||||||
|
<button onclick="window.location.href='/?data=1';">Get Current Wifi Data</button>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<h2>Set Remote Alarm IP</h2>
|
||||||
|
<form action="/" id="form_key">
|
||||||
|
<input type="text" minlength="7" maxlength="15" size="1" id="ipaddress" name="ipaddress" placeholder="xxx.xxx.xxx.xxx" autocomplete="off">
|
||||||
|
<br>
|
||||||
|
<input type="submit" value="Update IP" id="submit_ip">
|
||||||
|
</form>
|
||||||
|
<button onclick="window.location.href='/?ipget=1';">Get Current Remote IP</button>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.getElementById('submit_wifi').disabled = true;
|
||||||
|
document.getElementById('submit_ip').disabled = true;
|
||||||
|
|
||||||
|
document.addEventListener('keyup', e => {
|
||||||
|
if (document.getElementById('ssid').value == "" || document.getElementById('pass').value == "") {
|
||||||
|
document.getElementById('submit_wifi').disabled = true;
|
||||||
|
} else {
|
||||||
|
document.getElementById('submit_wifi').disabled = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementById("ipaddress").value == "") {
|
||||||
|
document.getElementById('submit_ip').disabled = true;
|
||||||
|
} else {
|
||||||
|
document.getElementById('submit_ip').disabled = false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
)rawliteral";
|
||||||
|
|
||||||
|
#define FRAME_COUNT_UPLOAD (sizeof(frames_upload) / sizeof(frames_upload[0]))
|
||||||
|
const byte PROGMEM frames_upload[][128] = {
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 13, 160, 0, 0, 25, 144, 0, 0, 17, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 13, 176, 0, 0, 9, 144, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 3, 192, 0, 0, 3, 192, 0, 0, 5, 160, 0, 0, 5, 176, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 3, 192, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 1, 128, 4, 48, 1, 128, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 64, 1, 128, 2, 64, 1, 128, 2, 64, 3, 192, 2, 64, 3, 192, 2, 32, 3, 192, 4, 48, 1, 128, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 5, 160, 0, 0, 1, 128, 0, 64, 1, 128, 2, 64, 1, 128, 2, 64, 1, 128, 2, 64, 1, 128, 2, 32, 1, 128, 4, 48, 1, 128, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 5, 160, 0, 0, 9, 144, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 1, 128, 2, 64, 1, 128, 2, 64, 1, 128, 2, 64, 1, 128, 2, 32, 1, 128, 4, 48, 1, 128, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 176, 0, 0, 25, 152, 0, 0, 17, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 1, 128, 2, 64, 1, 128, 2, 64, 1, 128, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 13, 176, 0, 0, 25, 152, 0, 0, 49, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 17, 132, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 13, 176, 0, 0, 25, 152, 0, 0, 17, 140, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 0, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 224, 0, 0, 13, 176, 0, 0, 25, 152, 0, 0, 49, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 0, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 128, 0, 0, 3, 192, 0, 0, 7, 160, 0, 0, 13, 144, 0, 0, 25, 136, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 0, 1, 128, 0, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 2, 32, 0, 0, 4, 48, 0, 0, 4, 31, 255, 255, 248, 0, 0, 0, 0, 0, 0, 0, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
#define FRAME_COUNT_WIFI (sizeof(frames_wifi) / sizeof(frames_wifi[0]))
|
||||||
|
const byte PROGMEM frames_wifi[][128] = {
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 15, 240, 38, 56, 112, 14, 28, 16, 192, 3, 8, 3, 0, 0, 192, 3, 15, 240, 64, 1, 48, 12, 128, 0, 224, 7, 0, 0, 1, 193, 0, 0, 14, 240, 0, 0, 24, 24, 0, 0, 8, 16, 0, 0, 4, 32, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 120, 63, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 24, 32, 112, 14, 4, 193, 128, 1, 131, 102, 15, 240, 102, 60, 112, 14, 60, 16, 192, 3, 8, 3, 0, 0, 192, 2, 15, 240, 64, 1, 48, 28, 192, 0, 224, 7, 128, 0, 0, 1, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 252, 0, 0, 224, 15, 0, 7, 0, 0, 224, 12, 0, 0, 48, 48, 31, 248, 8, 96, 224, 7, 6, 195, 0, 1, 195, 102, 3, 224, 102, 56, 62, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 2, 3, 192, 64, 3, 30, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 8, 48, 0, 0, 4, 96, 0, 0, 2, 64, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 248, 0, 0, 248, 31, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 8, 96, 112, 30, 6, 193, 128, 1, 131, 70, 0, 0, 98, 60, 0, 0, 62, 16, 0, 0, 12, 0, 0, 0, 0, 0, 0, 128, 0, 0, 31, 248, 0, 0, 32, 4, 0, 0, 192, 3, 0, 0, 143, 241, 0, 0, 88, 11, 0, 0, 32, 6, 0, 0, 7, 224, 0, 0, 8, 16, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 248, 0, 0, 224, 7, 0, 1, 0, 128, 128, 6, 30, 120, 96, 12, 96, 6, 48, 5, 128, 1, 32, 3, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 15, 48, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 8, 16, 0, 0, 37, 116, 0, 0, 31, 248, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 192, 0, 0, 15, 208, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 48, 28, 0, 0, 192, 131, 0, 1, 158, 248, 128, 3, 32, 4, 192, 1, 192, 3, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 240, 0, 0, 28, 56, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 124, 62, 0, 1, 128, 3, 128, 6, 0, 128, 96, 12, 31, 248, 16, 48, 224, 7, 12, 49, 128, 1, 140, 30, 0, 0, 120, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 30, 120, 0, 0, 48, 12, 0, 0, 103, 230, 0, 0, 60, 28, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 248, 0, 0, 248, 31, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 8, 96, 112, 30, 6, 193, 128, 1, 131, 70, 0, 0, 98, 60, 0, 0, 62, 16, 0, 0, 12, 0, 7, 240, 0, 0, 60, 60, 0, 0, 224, 6, 0, 1, 128, 1, 128, 1, 15, 240, 128, 0, 176, 13, 0, 0, 96, 7, 0, 0, 0, 0, 0, 0, 7, 224, 0, 0, 8, 16, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 252, 0, 0, 224, 15, 0, 7, 0, 0, 224, 12, 0, 0, 48, 48, 31, 248, 8, 96, 224, 7, 6, 195, 0, 1, 195, 102, 3, 224, 102, 56, 62, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 2, 3, 192, 64, 3, 30, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 8, 48, 0, 0, 4, 96, 0, 0, 2, 64, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 120, 63, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 24, 32, 112, 14, 4, 193, 128, 1, 131, 102, 15, 240, 102, 60, 112, 14, 60, 16, 192, 3, 8, 3, 0, 0, 192, 2, 15, 240, 64, 1, 48, 28, 192, 0, 224, 7, 128, 0, 0, 1, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 15, 240, 38, 56, 112, 14, 28, 16, 192, 3, 8, 3, 0, 0, 192, 3, 15, 240, 64, 1, 48, 12, 128, 0, 224, 7, 0, 0, 1, 193, 0, 0, 14, 240, 0, 0, 24, 24, 0, 0, 8, 16, 0, 0, 4, 32, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
#define FRAME_COUNT_ALARM (sizeof(frames_alarm) / sizeof(frames_alarm[0]))
|
||||||
|
const byte PROGMEM frames_alarm[][128] = {
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 6, 0, 0, 192, 2, 0, 0, 128, 3, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 128, 3, 0, 0, 128, 2, 0, 0, 128, 6, 0, 0, 192, 12, 0, 0, 96, 8, 0, 0, 32, 8, 0, 0, 48, 14, 0, 0, 32, 3, 248, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 1, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 24, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 96, 14, 0, 0, 64, 3, 252, 3, 192, 0, 31, 254, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 96, 24, 0, 0, 128, 12, 0, 0, 128, 4, 0, 1, 0, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 12, 0, 2, 0, 24, 0, 2, 0, 48, 0, 3, 0, 32, 0, 1, 0, 32, 0, 1, 128, 24, 0, 0, 128, 15, 0, 0, 128, 1, 252, 1, 128, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 31, 192, 0, 0, 96, 96, 0, 0, 192, 24, 0, 0, 128, 8, 0, 1, 0, 4, 0, 1, 0, 4, 0, 3, 0, 4, 0, 2, 0, 6, 0, 2, 0, 6, 0, 2, 0, 6, 0, 6, 0, 4, 0, 4, 0, 4, 0, 12, 0, 4, 0, 8, 0, 4, 0, 24, 0, 4, 0, 48, 0, 4, 0, 64, 0, 6, 0, 64, 0, 2, 0, 96, 0, 2, 0, 24, 0, 1, 0, 7, 0, 1, 0, 1, 252, 1, 0, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 128, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 31, 192, 0, 0, 96, 96, 0, 0, 192, 24, 0, 1, 128, 8, 0, 1, 0, 12, 0, 1, 0, 4, 0, 2, 0, 4, 0, 2, 0, 4, 0, 2, 0, 4, 0, 6, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 8, 0, 4, 0, 24, 0, 4, 0, 48, 0, 4, 0, 96, 0, 4, 0, 192, 0, 4, 0, 64, 0, 6, 0, 96, 0, 2, 0, 24, 0, 3, 0, 7, 128, 1, 0, 0, 252, 3, 0, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 64, 24, 0, 0, 128, 12, 0, 1, 128, 4, 0, 1, 0, 6, 0, 1, 0, 2, 0, 3, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 4, 0, 2, 0, 8, 0, 2, 0, 24, 0, 2, 0, 32, 0, 2, 0, 96, 0, 3, 0, 32, 0, 1, 0, 24, 0, 0, 128, 15, 0, 0, 128, 1, 252, 1, 128, 0, 31, 254, 0, 0, 16, 96, 0, 0, 24, 64, 0, 0, 8, 192, 0, 0, 7, 128, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 6, 0, 0, 64, 12, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 32, 128, 0, 0, 32, 128, 0, 0, 17, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 240, 0, 0, 12, 28, 0, 0, 24, 2, 0, 0, 48, 1, 0, 0, 32, 1, 0, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 96, 0, 64, 0, 32, 0, 64, 0, 48, 0, 64, 0, 16, 0, 192, 0, 12, 0, 128, 0, 4, 1, 128, 0, 4, 3, 0, 0, 8, 3, 0, 0, 112, 1, 128, 31, 128, 0, 127, 240, 0, 0, 64, 128, 0, 0, 33, 128, 0, 0, 51, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 248, 0, 0, 6, 140, 0, 0, 24, 3, 0, 0, 16, 1, 128, 0, 32, 0, 128, 0, 32, 0, 128, 0, 32, 0, 192, 0, 96, 0, 64, 0, 96, 0, 64, 0, 96, 0, 64, 0, 32, 0, 96, 0, 32, 0, 32, 0, 32, 0, 48, 0, 32, 0, 16, 0, 32, 0, 8, 0, 32, 0, 4, 0, 96, 0, 2, 0, 64, 0, 2, 0, 64, 0, 6, 0, 128, 0, 28, 0, 128, 0, 224, 0, 192, 31, 0, 0, 127, 224, 0, 0, 8, 32, 0, 0, 8, 32, 0, 0, 12, 96, 0, 0, 7, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 248, 0, 0, 12, 12, 0, 0, 24, 2, 0, 0, 48, 1, 0, 0, 32, 1, 0, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 192, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 32, 0, 64, 0, 32, 0, 64, 0, 48, 0, 64, 0, 24, 0, 64, 0, 12, 0, 128, 0, 6, 1, 128, 0, 4, 1, 0, 0, 8, 1, 0, 0, 112, 1, 128, 31, 128, 0, 127, 243, 0, 0, 0, 131, 0, 0, 0, 194, 0, 0, 0, 102, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 24, 0, 0, 48, 4, 0, 0, 96, 2, 0, 0, 64, 3, 0, 0, 192, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 128, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 1, 128, 0, 192, 1, 0, 0, 64, 3, 0, 0, 32, 2, 0, 0, 48, 4, 0, 0, 16, 4, 0, 0, 16, 6, 0, 0, 48, 3, 224, 15, 192, 0, 127, 248, 64, 0, 0, 16, 64, 0, 0, 16, 192, 0, 0, 15, 128, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 6, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 3, 0, 2, 0, 3, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 16, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 64, 14, 0, 0, 64, 3, 252, 1, 192, 0, 31, 254, 0, 0, 0, 130, 0, 0, 0, 130, 0, 0, 0, 196, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 96, 24, 0, 0, 128, 12, 0, 0, 128, 4, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 12, 0, 2, 0, 24, 0, 2, 0, 48, 0, 3, 0, 32, 0, 1, 0, 32, 0, 1, 128, 24, 0, 0, 128, 15, 0, 0, 192, 1, 252, 1, 128, 0, 63, 254, 0, 0, 32, 192, 0, 0, 48, 128, 0, 0, 17, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 3, 0, 2, 0, 3, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 16, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 64, 14, 0, 0, 64, 3, 252, 1, 192, 1, 159, 254, 0, 1, 6, 0, 0, 0, 132, 0, 0, 0, 236, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 2, 0, 0, 64, 3, 0, 0, 192, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 128, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 1, 128, 0, 128, 1, 0, 0, 192, 1, 0, 0, 64, 3, 0, 0, 96, 6, 0, 0, 48, 12, 0, 0, 16, 12, 0, 0, 16, 6, 0, 0, 48, 3, 240, 15, 192, 0, 127, 248, 0, 0, 32, 128, 0, 0, 33, 128, 0, 0, 49, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 240, 0, 0, 12, 28, 0, 0, 16, 6, 0, 0, 32, 3, 0, 0, 64, 1, 0, 0, 64, 1, 0, 0, 64, 1, 128, 0, 64, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 64, 0, 128, 0, 64, 0, 128, 0, 96, 0, 128, 0, 32, 1, 128, 0, 16, 1, 0, 0, 8, 2, 0, 0, 8, 6, 0, 0, 24, 2, 0, 0, 112, 1, 192, 31, 128, 0, 127, 252, 0, 0, 2, 8, 0, 0, 2, 8, 0, 0, 3, 24, 0, 0, 0, 240, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 12, 24, 0, 0, 48, 4, 0, 0, 32, 2, 0, 0, 64, 3, 0, 0, 64, 1, 0, 0, 192, 1, 0, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 192, 0, 128, 0, 64, 1, 128, 0, 96, 1, 0, 0, 32, 3, 0, 0, 16, 6, 0, 0, 8, 4, 0, 0, 24, 6, 0, 0, 48, 3, 224, 31, 192, 0, 127, 251, 0, 0, 0, 130, 0, 0, 0, 194, 0, 0, 0, 102, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 1, 4, 0, 0, 1, 4, 0, 0, 1, 136, 0, 0, 0, 112, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 0, 128, 3, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 2, 0, 1, 128, 2, 0, 0, 128, 4, 0, 0, 128, 12, 0, 0, 64, 24, 0, 0, 32, 8, 0, 0, 32, 14, 0, 0, 96, 3, 248, 3, 192, 0, 31, 252, 0, 0, 8, 32, 0, 0, 8, 32, 0, 0, 4, 96, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 6, 0, 0, 192, 2, 0, 0, 128, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 3, 0, 0, 128, 2, 0, 0, 128, 6, 0, 0, 192, 12, 0, 0, 64, 24, 0, 0, 32, 8, 0, 0, 48, 14, 0, 0, 96, 3, 248, 7, 192, 0, 63, 252, 0, 0, 16, 64, 0, 0, 16, 64, 0, 0, 24, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 6, 0, 0, 64, 12, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 24, 32, 0, 0, 8, 96, 0, 0, 12, 64, 0, 0, 7, 128, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void displaytask(void *prameters) {
|
||||||
|
int frame;
|
||||||
|
int old_count;
|
||||||
|
|
||||||
|
//Start Screen
|
||||||
|
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
|
||||||
|
Serial.println("SSD1306 allocation failed");
|
||||||
|
for (;;)
|
||||||
|
; // Don't proceed, loop forever
|
||||||
|
}
|
||||||
|
display.display();
|
||||||
|
display.clearDisplay();
|
||||||
|
old_count = count;
|
||||||
|
while (true) {
|
||||||
|
display.fillRect(0, 0, 32, 32, 0);
|
||||||
|
display.drawFastVLine(36, 0, 32, 255);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (!connected) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
|
||||||
|
if (WiFi.status() != WL_CONNECTED) {
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 1); // Start at top-left corner
|
||||||
|
display.print("Connect");
|
||||||
|
display.setCursor(42, 10); // Start at top-left corner
|
||||||
|
display.print("Phone");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
|
||||||
|
display.setCursor(42, 15); // Start at top-left corner
|
||||||
|
display.print(WiFi.localIP());
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < FRAME_COUNT_WIFI; i++) {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[i], 32, 32, 1);
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(42 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
} else if (tone_on) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 2); // Start at top-left corner
|
||||||
|
display.print("Come Over");
|
||||||
|
display.setCursor(42, 15); // Start at top-left corner
|
||||||
|
display.print("To Church");
|
||||||
|
|
||||||
|
|
||||||
|
for (int i = 0; i < FRAME_COUNT_ALARM; i++) {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_alarm[i], 32, 32, 1);
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(21 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
} else if (sermon_over) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 1); // Start at top-left corner
|
||||||
|
display.print("Sermon Over");
|
||||||
|
display.setCursor(42, 12); // Start at top-left corner
|
||||||
|
display.print("Worship");
|
||||||
|
display.setCursor(42, 24); // Start at top-left corner
|
||||||
|
display.print("Started");
|
||||||
|
|
||||||
|
sermon_over = false;
|
||||||
|
|
||||||
|
} else if (count != old_count) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextSize(2); // Normal 1:1 pixel scale
|
||||||
|
|
||||||
|
if (count == -1) {
|
||||||
|
display.setCursor(55, 0); // Start at top-left corner
|
||||||
|
display.print("Count");
|
||||||
|
display.setCursor(55, 17); // Start at top-left corner
|
||||||
|
display.print("Sent");
|
||||||
|
|
||||||
|
for (int i = 0; i < FRAME_COUNT_UPLOAD; i++) {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_upload[i], 32, 32, 1);
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(42 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
count = 0;
|
||||||
|
|
||||||
|
} else if (count == -2) {
|
||||||
|
display.setTextSize(1);
|
||||||
|
|
||||||
|
display.setCursor(55, 0); // Start at top-left corner
|
||||||
|
display.print("Count");
|
||||||
|
display.setCursor(55, 17); // Start at top-left corner
|
||||||
|
display.print("Received");
|
||||||
|
count = 0;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
display.setCursor(55, 0); // Start at top-left corner
|
||||||
|
display.print("Count");
|
||||||
|
display.setCursor(70, 17); // Start at top-left corner
|
||||||
|
display.print(count);
|
||||||
|
}
|
||||||
|
old_count = count;
|
||||||
|
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[23], 32, 32, 1);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[23], 32, 32, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(50 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define BUTTON1 33
|
||||||
|
#define BUTTON2 32
|
||||||
|
#define BUTTON3 5
|
||||||
|
#define BUTTON4 0
|
||||||
|
|
||||||
|
|
||||||
|
#define BUZZER1 27
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
|
||||||
|
Serial.begin(9600);
|
||||||
|
|
||||||
|
xTaskCreate(
|
||||||
|
displaytask, // Funcction name
|
||||||
|
"Task for Display", // Task Name
|
||||||
|
4000, // stack size
|
||||||
|
NULL, // task parameters
|
||||||
|
1, // task priority
|
||||||
|
NULL // task handel
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//buzzer
|
||||||
|
pinMode(BUZZER1, OUTPUT);
|
||||||
|
digitalWrite(BUZZER1, HIGH);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//buttons
|
||||||
|
pinMode(BUTTON1, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON2, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON3, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON4, INPUT_PULLUP);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
prefs.begin("kam_alarm");
|
||||||
|
|
||||||
|
ip_address = prefs.getString("IPADDRESS");
|
||||||
|
|
||||||
|
WiFi.mode(WIFI_STA);
|
||||||
|
WiFi.disconnect();
|
||||||
|
delay(100);
|
||||||
|
ssid = prefs.getString("SSID");
|
||||||
|
pass = prefs.getString("PASS");
|
||||||
|
ssid.toCharArray(ssid_char, 20);
|
||||||
|
pass.toCharArray(pass_char, 20);
|
||||||
|
WiFi.begin(ssid_char, pass_char);
|
||||||
|
|
||||||
|
// Allow Time for Wifi Connection 10 seconds
|
||||||
|
delay(10000);
|
||||||
|
|
||||||
|
|
||||||
|
// Check if connected to wifi
|
||||||
|
if (WiFi.status() != WL_CONNECTED) {
|
||||||
|
WiFi.mode(WIFI_MODE_AP);
|
||||||
|
WiFi.softAP("KamAlarm", "KAMisFun!");
|
||||||
|
WiFi.softAPIP();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Send web page with input fields to client
|
||||||
|
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {
|
||||||
|
if (!request->authenticate("admin", "KAM_alarm"))
|
||||||
|
return request->requestAuthentication();
|
||||||
|
|
||||||
|
if (request->hasParam("pass") && request->hasParam("ssid")) {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
ssid = request->getParam("ssid")->value();
|
||||||
|
pass = request->getParam("pass")->value();
|
||||||
|
|
||||||
|
Serial.print("New Password is:\t");
|
||||||
|
Serial.println(pass);
|
||||||
|
Serial.print("New SSID is:\t");
|
||||||
|
Serial.println(ssid);
|
||||||
|
|
||||||
|
prefs.putString("SSID", ssid);
|
||||||
|
prefs.putString("PASS", pass);
|
||||||
|
Serial.println("Done");
|
||||||
|
} else if (request->hasParam("data")) {
|
||||||
|
ssid = prefs.getString("SSID");
|
||||||
|
pass = prefs.getString("PASS");
|
||||||
|
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current WIFI Settings</h1><hr><br/>SSID: \"" + ssid + "\"<br/>Password: \"" + pass + "\"<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||||
|
} else if (request->hasParam("logout")) {
|
||||||
|
request->send(401, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Success</h1><hr><br/><br/><br/><button onclick=\"window.location.href='/';\">Login</button></body></html>");
|
||||||
|
} else if (request->hasParam("ipaddress")) {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
ip_address = request->getParam("ipaddress")->value();
|
||||||
|
prefs.putString("IPADDRESS", ip_address);
|
||||||
|
} else if (request->hasParam("sermonover")) {
|
||||||
|
request->send_P(200, "text/html", "");
|
||||||
|
sermon_over = true;
|
||||||
|
|
||||||
|
} else if (request->hasParam("ipget")) {
|
||||||
|
ip_address = prefs.getString("IPADDRESS");
|
||||||
|
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current IP Settings</h1><hr>Remote IP Address: \"" + ip_address + "\"<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||||
|
|
||||||
|
|
||||||
|
} else if (request->hasParam("cancel")) {
|
||||||
|
request->send(200, "text/html", "");
|
||||||
|
tone_on = false;
|
||||||
|
display.clearDisplay();
|
||||||
|
tone(BUZZER1, 0);
|
||||||
|
|
||||||
|
} else if (request->hasParam("receivedcount")) {
|
||||||
|
request->send(200, "text/html", "");
|
||||||
|
count = -2;
|
||||||
|
|
||||||
|
} else if (request->hasParam("comeback")) {
|
||||||
|
tone(BUZZER1, 300);
|
||||||
|
tone_on = true;
|
||||||
|
request->send_P(200, "text/html", "");
|
||||||
|
} else {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Start Server
|
||||||
|
server.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
getconnection();
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON1) && tone_on) {
|
||||||
|
tone_on = false;
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?got_message=1");
|
||||||
|
|
||||||
|
Serial.println(httpResponseCode);
|
||||||
|
if (httpResponseCode != 200) {
|
||||||
|
connected = false;
|
||||||
|
} else {
|
||||||
|
tone(BUZZER1, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON1))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON2)) {
|
||||||
|
if (count > 0)
|
||||||
|
count--;
|
||||||
|
while (!digitalRead(BUTTON2))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
if (!digitalRead(BUTTON3)) {
|
||||||
|
count++;
|
||||||
|
while (!digitalRead(BUTTON3))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON4) && count > 0) {
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?count=" + count);
|
||||||
|
|
||||||
|
count = -1;
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON4))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void getconnection() {
|
||||||
|
currentMillis = millis();
|
||||||
|
if (currentMillis - previousMillis > 10000) {
|
||||||
|
|
||||||
|
int response = GETRequest("http://admin:KAM_alarm@" + ip_address);
|
||||||
|
|
||||||
|
if (response == 200) {
|
||||||
|
connected = true;
|
||||||
|
Serial.println("Connected");
|
||||||
|
} else {
|
||||||
|
connected = false;
|
||||||
|
Serial.println("Not Connected");
|
||||||
|
}
|
||||||
|
previousMillis = currentMillis;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int GETRequest(String URL) {
|
||||||
|
|
||||||
|
int response;
|
||||||
|
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
http.begin(URL.c_str());
|
||||||
|
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||||
|
http.setTimeout(5000);
|
||||||
|
response = http.GET();
|
||||||
|
http.end();
|
||||||
|
|
||||||
|
Serial.println(URL);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int POSTRequest(String URL) {
|
||||||
|
|
||||||
|
int response;
|
||||||
|
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
http.begin(URL.c_str());
|
||||||
|
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||||
|
http.setTimeout(5000);
|
||||||
|
response = http.POST("");
|
||||||
|
http.end();
|
||||||
|
|
||||||
|
Serial.println(URL);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
608
ESP32 Code/sound/sound.ino
Executable file
608
ESP32 Code/sound/sound.ino
Executable file
@ -0,0 +1,608 @@
|
|||||||
|
#include <Arduino.h>
|
||||||
|
#include <WiFi.h>
|
||||||
|
#include <ESPAsyncWebServer.h>
|
||||||
|
#include <Preferences.h>
|
||||||
|
#include <ESP32Ping.h>
|
||||||
|
#include <HTTPClient.h>
|
||||||
|
#include <Wire.h>
|
||||||
|
#include <Adafruit_GFX.h>
|
||||||
|
#include <Adafruit_SSD1306.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Preferences prefs;
|
||||||
|
WiFiClient client;
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
// Screen configuration
|
||||||
|
Adafruit_SSD1306 display(128, 32, &Wire, -1);
|
||||||
|
|
||||||
|
AsyncWebServer server(80);
|
||||||
|
String ssid, pass, ip_address;
|
||||||
|
bool tone_on = false;
|
||||||
|
bool gotmessage = false;
|
||||||
|
bool sermon_over = false;
|
||||||
|
bool failed = false;
|
||||||
|
bool cancel = false;
|
||||||
|
bool connected = false;
|
||||||
|
unsigned long previousMillis, currentMillis;
|
||||||
|
|
||||||
|
int count;
|
||||||
|
char ssid_char[20];
|
||||||
|
char pass_char[20];
|
||||||
|
|
||||||
|
|
||||||
|
// HTML web page to handle 3 input fields (input1, input2, input3)
|
||||||
|
const char index_html[] PROGMEM = R"rawliteral(
|
||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>ESP Kid's Alarm Sound</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
height: 100vh;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container {
|
||||||
|
text-align: center;
|
||||||
|
background-color: white;
|
||||||
|
padding: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#logout_button {
|
||||||
|
position: absolute;
|
||||||
|
top: 20px;
|
||||||
|
right: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
form {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="text"],
|
||||||
|
input[type="password"] {
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
input[type="submit"] {
|
||||||
|
padding: 10px 20px;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: #007bff;
|
||||||
|
border: none;
|
||||||
|
color: white;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover,
|
||||||
|
input[type="submit"]:hover {
|
||||||
|
background-color: #0056b3;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div id="logout_button">
|
||||||
|
<button onclick="window.location.href='/?logout=1';">Logout</button>
|
||||||
|
</div>
|
||||||
|
<div id="container">
|
||||||
|
<h1>ESP Kid's Alarm Soud</h1>
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<h2>Change WIFI Password</h2>
|
||||||
|
<form action="/" id="form_wifi">
|
||||||
|
SSID: <input type="text" name="ssid" id="ssid">
|
||||||
|
<br>
|
||||||
|
Password: <input type="password" name="pass" id="pass">
|
||||||
|
<br>
|
||||||
|
<input type="submit" value="Update Wifi" id="submit_wifi">
|
||||||
|
</form>
|
||||||
|
<button onclick="window.location.href='/?data=1';">Get Current Wifi Data</button>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<h2>Set Remote Alarm IP</h2>
|
||||||
|
<form action="/" id="form_key">
|
||||||
|
<input type="text" minlength="7" maxlength="15" size="1" id="ipaddress" name="ipaddress" placeholder="xxx.xxx.xxx.xxx" autocomplete="off">
|
||||||
|
<br>
|
||||||
|
<input type="submit" value="Update IP" id="submit_ip">
|
||||||
|
</form>
|
||||||
|
<button onclick="window.location.href='/?ipget=1';">Get Current Remote IP</button>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.getElementById('submit_wifi').disabled = true;
|
||||||
|
document.getElementById('submit_ip').disabled = true;
|
||||||
|
|
||||||
|
document.addEventListener('keyup', e => {
|
||||||
|
if (document.getElementById('ssid').value == "" || document.getElementById('pass').value == "") {
|
||||||
|
document.getElementById('submit_wifi').disabled = true;
|
||||||
|
} else {
|
||||||
|
document.getElementById('submit_wifi').disabled = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (document.getElementById("ipaddress").value == "") {
|
||||||
|
document.getElementById('submit_ip').disabled = true;
|
||||||
|
} else {
|
||||||
|
document.getElementById('submit_ip').disabled = false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
)rawliteral";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define FRAME_COUNT_WIFI (sizeof(frames_wifi) / sizeof(frames_wifi[0]))
|
||||||
|
const byte PROGMEM frames_wifi[][128] = {
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 15, 240, 38, 56, 112, 14, 28, 16, 192, 3, 8, 3, 0, 0, 192, 3, 15, 240, 64, 1, 48, 12, 128, 0, 224, 7, 0, 0, 1, 193, 0, 0, 14, 240, 0, 0, 24, 24, 0, 0, 8, 16, 0, 0, 4, 32, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 120, 63, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 24, 32, 112, 14, 4, 193, 128, 1, 131, 102, 15, 240, 102, 60, 112, 14, 60, 16, 192, 3, 8, 3, 0, 0, 192, 2, 15, 240, 64, 1, 48, 28, 192, 0, 224, 7, 128, 0, 0, 1, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 252, 0, 0, 224, 15, 0, 7, 0, 0, 224, 12, 0, 0, 48, 48, 31, 248, 8, 96, 224, 7, 6, 195, 0, 1, 195, 102, 3, 224, 102, 56, 62, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 2, 3, 192, 64, 3, 30, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 8, 48, 0, 0, 4, 96, 0, 0, 2, 64, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 248, 0, 0, 248, 31, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 8, 96, 112, 30, 6, 193, 128, 1, 131, 70, 0, 0, 98, 60, 0, 0, 62, 16, 0, 0, 12, 0, 0, 0, 0, 0, 0, 128, 0, 0, 31, 248, 0, 0, 32, 4, 0, 0, 192, 3, 0, 0, 143, 241, 0, 0, 88, 11, 0, 0, 32, 6, 0, 0, 7, 224, 0, 0, 8, 16, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 248, 0, 0, 224, 7, 0, 1, 0, 128, 128, 6, 30, 120, 96, 12, 96, 6, 48, 5, 128, 1, 32, 3, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 15, 48, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 8, 16, 0, 0, 37, 116, 0, 0, 31, 248, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 192, 0, 0, 15, 208, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 48, 28, 0, 0, 192, 131, 0, 1, 158, 248, 128, 3, 32, 4, 192, 1, 192, 3, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 240, 0, 0, 28, 56, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 124, 62, 0, 1, 128, 3, 128, 6, 0, 128, 96, 12, 31, 248, 16, 48, 224, 7, 12, 49, 128, 1, 140, 30, 0, 0, 120, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 192, 0, 0, 30, 120, 0, 0, 48, 12, 0, 0, 103, 230, 0, 0, 60, 28, 0, 0, 31, 248, 0, 0, 24, 24, 0, 0, 8, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 248, 0, 0, 248, 31, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 8, 96, 112, 30, 6, 193, 128, 1, 131, 70, 0, 0, 98, 60, 0, 0, 62, 16, 0, 0, 12, 0, 7, 240, 0, 0, 60, 60, 0, 0, 224, 6, 0, 1, 128, 1, 128, 1, 15, 240, 128, 0, 176, 13, 0, 0, 96, 7, 0, 0, 0, 0, 0, 0, 7, 224, 0, 0, 8, 16, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 252, 0, 0, 224, 15, 0, 7, 0, 0, 224, 12, 0, 0, 48, 48, 31, 248, 8, 96, 224, 7, 6, 195, 0, 1, 195, 102, 3, 224, 102, 56, 62, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 2, 3, 192, 64, 3, 30, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 0, 0, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 8, 48, 0, 0, 4, 96, 0, 0, 2, 64, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 240, 0, 0, 120, 63, 0, 3, 128, 1, 192, 12, 0, 0, 48, 24, 15, 248, 24, 32, 112, 14, 4, 193, 128, 1, 131, 102, 15, 240, 102, 60, 112, 14, 60, 16, 192, 3, 8, 3, 0, 0, 192, 2, 15, 240, 64, 1, 48, 28, 192, 0, 224, 7, 128, 0, 0, 1, 0, 0, 7, 224, 0, 0, 24, 24, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 6, 96, 0, 0, 3, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 15, 240, 38, 56, 112, 14, 28, 16, 192, 3, 8, 3, 0, 0, 192, 3, 15, 240, 64, 1, 48, 12, 128, 0, 224, 7, 0, 0, 1, 193, 0, 0, 14, 240, 0, 0, 24, 24, 0, 0, 8, 16, 0, 0, 4, 32, 0, 0, 2, 96, 0, 0, 1, 192, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 252, 0, 0, 192, 3, 128, 7, 0, 0, 224, 12, 0, 128, 16, 48, 63, 252, 12, 96, 192, 3, 6, 67, 0, 0, 195, 38, 3, 224, 38, 56, 30, 124, 28, 16, 224, 7, 8, 1, 128, 1, 128, 3, 3, 224, 192, 3, 28, 120, 192, 1, 160, 5, 128, 0, 192, 3, 0, 0, 3, 224, 0, 0, 12, 48, 0, 0, 24, 24, 0, 0, 12, 48, 0, 0, 4, 96, 0, 0, 2, 192, 0, 0, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
#define FRAME_COUNT_ALARM (sizeof(frames_alarm) / sizeof(frames_alarm[0]))
|
||||||
|
const byte PROGMEM frames_alarm[][128] = {
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 6, 0, 0, 192, 2, 0, 0, 128, 3, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 128, 3, 0, 0, 128, 2, 0, 0, 128, 6, 0, 0, 192, 12, 0, 0, 96, 8, 0, 0, 32, 8, 0, 0, 48, 14, 0, 0, 32, 3, 248, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 1, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 24, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 96, 14, 0, 0, 64, 3, 252, 3, 192, 0, 31, 254, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 96, 24, 0, 0, 128, 12, 0, 0, 128, 4, 0, 1, 0, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 12, 0, 2, 0, 24, 0, 2, 0, 48, 0, 3, 0, 32, 0, 1, 0, 32, 0, 1, 128, 24, 0, 0, 128, 15, 0, 0, 128, 1, 252, 1, 128, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 31, 192, 0, 0, 96, 96, 0, 0, 192, 24, 0, 0, 128, 8, 0, 1, 0, 4, 0, 1, 0, 4, 0, 3, 0, 4, 0, 2, 0, 6, 0, 2, 0, 6, 0, 2, 0, 6, 0, 6, 0, 4, 0, 4, 0, 4, 0, 12, 0, 4, 0, 8, 0, 4, 0, 24, 0, 4, 0, 48, 0, 4, 0, 64, 0, 6, 0, 64, 0, 2, 0, 96, 0, 2, 0, 24, 0, 1, 0, 7, 0, 1, 0, 1, 252, 1, 0, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 128, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 31, 192, 0, 0, 96, 96, 0, 0, 192, 24, 0, 1, 128, 8, 0, 1, 0, 12, 0, 1, 0, 4, 0, 2, 0, 4, 0, 2, 0, 4, 0, 2, 0, 4, 0, 6, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 8, 0, 4, 0, 24, 0, 4, 0, 48, 0, 4, 0, 96, 0, 4, 0, 192, 0, 4, 0, 64, 0, 6, 0, 96, 0, 2, 0, 24, 0, 3, 0, 7, 128, 1, 0, 0, 252, 3, 0, 0, 15, 254, 0, 0, 8, 48, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 64, 24, 0, 0, 128, 12, 0, 1, 128, 4, 0, 1, 0, 6, 0, 1, 0, 2, 0, 3, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 4, 0, 2, 0, 8, 0, 2, 0, 24, 0, 2, 0, 32, 0, 2, 0, 96, 0, 3, 0, 32, 0, 1, 0, 24, 0, 0, 128, 15, 0, 0, 128, 1, 252, 1, 128, 0, 31, 254, 0, 0, 16, 96, 0, 0, 24, 64, 0, 0, 8, 192, 0, 0, 7, 128, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 6, 0, 0, 64, 12, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 32, 128, 0, 0, 32, 128, 0, 0, 17, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 240, 0, 0, 12, 28, 0, 0, 24, 2, 0, 0, 48, 1, 0, 0, 32, 1, 0, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 96, 0, 64, 0, 32, 0, 64, 0, 48, 0, 64, 0, 16, 0, 192, 0, 12, 0, 128, 0, 4, 1, 128, 0, 4, 3, 0, 0, 8, 3, 0, 0, 112, 1, 128, 31, 128, 0, 127, 240, 0, 0, 64, 128, 0, 0, 33, 128, 0, 0, 51, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 248, 0, 0, 6, 140, 0, 0, 24, 3, 0, 0, 16, 1, 128, 0, 32, 0, 128, 0, 32, 0, 128, 0, 32, 0, 192, 0, 96, 0, 64, 0, 96, 0, 64, 0, 96, 0, 64, 0, 32, 0, 96, 0, 32, 0, 32, 0, 32, 0, 48, 0, 32, 0, 16, 0, 32, 0, 8, 0, 32, 0, 4, 0, 96, 0, 2, 0, 64, 0, 2, 0, 64, 0, 6, 0, 128, 0, 28, 0, 128, 0, 224, 0, 192, 31, 0, 0, 127, 224, 0, 0, 8, 32, 0, 0, 8, 32, 0, 0, 12, 96, 0, 0, 7, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 3, 248, 0, 0, 12, 12, 0, 0, 24, 2, 0, 0, 48, 1, 0, 0, 32, 1, 0, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 128, 0, 64, 0, 192, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 32, 0, 64, 0, 32, 0, 64, 0, 48, 0, 64, 0, 24, 0, 64, 0, 12, 0, 128, 0, 6, 1, 128, 0, 4, 1, 0, 0, 8, 1, 0, 0, 112, 1, 128, 31, 128, 0, 127, 243, 0, 0, 0, 131, 0, 0, 0, 194, 0, 0, 0, 102, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 24, 0, 0, 48, 4, 0, 0, 96, 2, 0, 0, 64, 3, 0, 0, 192, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 128, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 1, 128, 0, 192, 1, 0, 0, 64, 3, 0, 0, 32, 2, 0, 0, 48, 4, 0, 0, 16, 4, 0, 0, 16, 6, 0, 0, 48, 3, 224, 15, 192, 0, 127, 248, 64, 0, 0, 16, 64, 0, 0, 16, 192, 0, 0, 15, 128, 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 6, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 3, 0, 2, 0, 3, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 16, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 64, 14, 0, 0, 64, 3, 252, 1, 192, 0, 31, 254, 0, 0, 0, 130, 0, 0, 0, 130, 0, 0, 0, 196, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 15, 192, 0, 0, 48, 48, 0, 0, 96, 24, 0, 0, 128, 12, 0, 0, 128, 4, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 6, 0, 2, 0, 4, 0, 2, 0, 12, 0, 2, 0, 24, 0, 2, 0, 48, 0, 3, 0, 32, 0, 1, 0, 32, 0, 1, 128, 24, 0, 0, 128, 15, 0, 0, 192, 1, 252, 1, 128, 0, 63, 254, 0, 0, 32, 192, 0, 0, 48, 128, 0, 0, 17, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 56, 48, 0, 0, 96, 8, 0, 0, 192, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 1, 128, 2, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 3, 0, 3, 0, 3, 0, 2, 0, 3, 0, 2, 0, 1, 0, 6, 0, 1, 0, 4, 0, 1, 0, 8, 0, 1, 128, 16, 0, 0, 128, 16, 0, 0, 64, 24, 0, 0, 64, 14, 0, 0, 64, 3, 252, 1, 192, 1, 159, 254, 0, 1, 6, 0, 0, 0, 132, 0, 0, 0, 236, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 2, 0, 0, 64, 3, 0, 0, 192, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 128, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 1, 128, 0, 128, 1, 0, 0, 192, 1, 0, 0, 64, 3, 0, 0, 96, 6, 0, 0, 48, 12, 0, 0, 16, 12, 0, 0, 16, 6, 0, 0, 48, 3, 240, 15, 192, 0, 127, 248, 0, 0, 32, 128, 0, 0, 33, 128, 0, 0, 49, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 240, 0, 0, 12, 28, 0, 0, 16, 6, 0, 0, 32, 3, 0, 0, 64, 1, 0, 0, 64, 1, 0, 0, 64, 1, 128, 0, 64, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 128, 0, 192, 0, 64, 0, 128, 0, 64, 0, 128, 0, 96, 0, 128, 0, 32, 1, 128, 0, 16, 1, 0, 0, 8, 2, 0, 0, 8, 6, 0, 0, 24, 2, 0, 0, 112, 1, 192, 31, 128, 0, 127, 252, 0, 0, 2, 8, 0, 0, 2, 8, 0, 0, 3, 24, 0, 0, 0, 240, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 12, 24, 0, 0, 48, 4, 0, 0, 32, 2, 0, 0, 64, 3, 0, 0, 64, 1, 0, 0, 192, 1, 0, 0, 128, 1, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 128, 0, 192, 0, 128, 0, 64, 1, 128, 0, 96, 1, 0, 0, 32, 3, 0, 0, 16, 6, 0, 0, 8, 4, 0, 0, 24, 6, 0, 0, 48, 3, 224, 31, 192, 0, 127, 251, 0, 0, 0, 130, 0, 0, 0, 194, 0, 0, 0, 102, 0, 0, 0, 56, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 1, 4, 0, 0, 1, 4, 0, 0, 1, 136, 0, 0, 0, 112, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 192, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 4, 0, 0, 128, 2, 0, 0, 128, 2, 0, 0, 128, 3, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 2, 0, 1, 128, 2, 0, 0, 128, 4, 0, 0, 128, 12, 0, 0, 64, 24, 0, 0, 32, 8, 0, 0, 32, 14, 0, 0, 96, 3, 248, 3, 192, 0, 31, 252, 0, 0, 8, 32, 0, 0, 8, 32, 0, 0, 4, 96, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 32, 12, 0, 0, 64, 6, 0, 0, 192, 2, 0, 0, 128, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 3, 0, 0, 128, 2, 0, 0, 128, 6, 0, 0, 192, 12, 0, 0, 64, 24, 0, 0, 32, 8, 0, 0, 48, 14, 0, 0, 96, 3, 248, 7, 192, 0, 63, 252, 0, 0, 16, 64, 0, 0, 16, 64, 0, 0, 24, 128, 0, 0, 15, 0, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 24, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 1, 0, 1, 128, 1, 0, 1, 0, 1, 0, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 6, 0, 0, 64, 12, 0, 0, 96, 8, 0, 0, 48, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 24, 32, 0, 0, 8, 96, 0, 0, 12, 64, 0, 0, 7, 128, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 },
|
||||||
|
{ 0, 0, 0, 0, 0, 3, 192, 0, 0, 2, 64, 0, 0, 2, 64, 0, 0, 7, 224, 0, 0, 28, 56, 0, 0, 48, 4, 0, 0, 96, 6, 0, 0, 192, 2, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 1, 0, 1, 128, 0, 128, 1, 0, 0, 128, 1, 0, 0, 128, 3, 0, 0, 192, 2, 0, 0, 64, 4, 0, 0, 32, 12, 0, 0, 16, 8, 0, 0, 16, 6, 0, 0, 32, 3, 240, 7, 192, 0, 63, 252, 0, 0, 8, 16, 0, 0, 4, 48, 0, 0, 4, 32, 0, 0, 3, 192, 0, 0, 0, 0, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void displaytask(void *prameters) {
|
||||||
|
int frame;
|
||||||
|
int old_count;
|
||||||
|
|
||||||
|
//Start Screen
|
||||||
|
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
|
||||||
|
Serial.println("SSD1306 allocation failed");
|
||||||
|
for (;;)
|
||||||
|
; // Don't proceed, loop forever
|
||||||
|
}
|
||||||
|
display.display();
|
||||||
|
display.clearDisplay();
|
||||||
|
old_count = count;
|
||||||
|
while (true) {
|
||||||
|
display.fillRect(0, 0, 32, 32, 0);
|
||||||
|
display.drawFastVLine(36, 0, 32, 255);
|
||||||
|
|
||||||
|
|
||||||
|
if (failed) {
|
||||||
|
display.clearDisplay();
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 1); // Start at top-left corner
|
||||||
|
display.print("FAILED");
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(2000 / portTICK_PERIOD_MS);
|
||||||
|
failed = false;
|
||||||
|
|
||||||
|
} else if (!connected) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
|
||||||
|
if (WiFi.status() != WL_CONNECTED) {
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 1); // Start at top-left corner
|
||||||
|
display.print("Connect");
|
||||||
|
display.setCursor(42, 10); // Start at top-left corner
|
||||||
|
display.print("Phone");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
|
||||||
|
display.setCursor(42, 15); // Start at top-left corner
|
||||||
|
display.print(WiFi.localIP());
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < FRAME_COUNT_WIFI; i++) {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[i], 32, 32, 1);
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(42 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
} else if (tone_on) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 2); // Start at top-left corner
|
||||||
|
display.print("Alarm");
|
||||||
|
display.setCursor(42, 15); // Start at top-left corner
|
||||||
|
display.print("Sent");
|
||||||
|
|
||||||
|
|
||||||
|
for (int i = 0; i < FRAME_COUNT_ALARM; i++) {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_alarm[i], 32, 32, 1);
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(21 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
tone_on = false;
|
||||||
|
|
||||||
|
} else if (gotmessage) {
|
||||||
|
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 2); // Start at top-left corner
|
||||||
|
display.print("They are");
|
||||||
|
display.setCursor(42, 15); // Start at top-left corner
|
||||||
|
display.print("Comming Back");
|
||||||
|
gotmessage = false;
|
||||||
|
tone_on = false;
|
||||||
|
|
||||||
|
} else if (cancel) {
|
||||||
|
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 2); // Start at top-left corner
|
||||||
|
display.print("Canceled");
|
||||||
|
|
||||||
|
cancel = false;
|
||||||
|
|
||||||
|
} else if (sermon_over) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextColor(SSD1306_WHITE); // Draw white text
|
||||||
|
display.setTextSize(1); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(42, 1); // Start at top-left corner
|
||||||
|
display.print("Sermon Over");
|
||||||
|
display.setCursor(42, 12); // Start at top-left corner
|
||||||
|
display.print("Worship");
|
||||||
|
display.setCursor(42, 24); // Start at top-left corner
|
||||||
|
display.print("Started");
|
||||||
|
|
||||||
|
sermon_over = false;
|
||||||
|
|
||||||
|
} else if (count != old_count) {
|
||||||
|
display.fillRect(37, 0, 128, 32, 0);
|
||||||
|
display.setTextSize(2); // Normal 1:1 pixel scale
|
||||||
|
|
||||||
|
if (count == -2) {
|
||||||
|
|
||||||
|
display.setTextSize(2); // Normal 1:1 pixel scale
|
||||||
|
display.setCursor(55, 0); // Start at top-left corner
|
||||||
|
display.print("OK");
|
||||||
|
display.setCursor(55, 17); // Start at top-left corner
|
||||||
|
display.print(old_count);
|
||||||
|
|
||||||
|
|
||||||
|
count = 0;
|
||||||
|
} else {
|
||||||
|
display.setCursor(55, 0); // Start at top-left corner
|
||||||
|
display.print("Count");
|
||||||
|
display.setCursor(70, 17); // Start at top-left corner
|
||||||
|
display.print(count);
|
||||||
|
}
|
||||||
|
old_count = count;
|
||||||
|
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[23], 32, 32, 1);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
display.fillRect(0, 0, 35, 32, 0);
|
||||||
|
display.drawBitmap(0, 0, frames_wifi[23], 32, 32, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
display.display();
|
||||||
|
vTaskDelay(50 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define BUTTON1 33
|
||||||
|
#define BUTTON2 32
|
||||||
|
#define BUTTON3 5
|
||||||
|
#define BUTTON4 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
|
||||||
|
Serial.begin(9600);
|
||||||
|
|
||||||
|
xTaskCreate(
|
||||||
|
displaytask, // Funcction name
|
||||||
|
"Task for Display", // Task Name
|
||||||
|
4000, // stack size
|
||||||
|
NULL, // task parameters
|
||||||
|
1, // task priority
|
||||||
|
NULL // task handel
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
//buttons
|
||||||
|
pinMode(BUTTON1, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON2, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON3, INPUT_PULLUP);
|
||||||
|
pinMode(BUTTON4, INPUT_PULLUP);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
prefs.begin("kam_alarm");
|
||||||
|
|
||||||
|
ip_address = prefs.getString("IPADDRESS");
|
||||||
|
|
||||||
|
WiFi.mode(WIFI_STA);
|
||||||
|
WiFi.disconnect();
|
||||||
|
delay(100);
|
||||||
|
ssid = prefs.getString("SSID");
|
||||||
|
pass = prefs.getString("PASS");
|
||||||
|
ssid.toCharArray(ssid_char, 20);
|
||||||
|
pass.toCharArray(pass_char, 20);
|
||||||
|
WiFi.begin(ssid_char, pass_char);
|
||||||
|
|
||||||
|
// Allow Time for Wifi Connection 10 seconds
|
||||||
|
delay(10000);
|
||||||
|
|
||||||
|
// Check if connected to wifi
|
||||||
|
if (WiFi.status() != WL_CONNECTED) {
|
||||||
|
WiFi.mode(WIFI_MODE_AP);
|
||||||
|
WiFi.softAP("KamAlarm", "KAMisFun!");
|
||||||
|
WiFi.softAPIP();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Send web page with input fields to client
|
||||||
|
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {
|
||||||
|
if (!request->authenticate("admin", "KAM_alarm"))
|
||||||
|
return request->requestAuthentication();
|
||||||
|
|
||||||
|
if (request->hasParam("pass") && request->hasParam("ssid")) {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
ssid = request->getParam("ssid")->value();
|
||||||
|
pass = request->getParam("pass")->value();
|
||||||
|
|
||||||
|
Serial.print("New Password is:\t");
|
||||||
|
Serial.println(pass);
|
||||||
|
Serial.print("New SSID is:\t");
|
||||||
|
Serial.println(ssid);
|
||||||
|
|
||||||
|
prefs.putString("SSID", ssid);
|
||||||
|
prefs.putString("PASS", pass);
|
||||||
|
Serial.println("Done");
|
||||||
|
} else if (request->hasParam("data")) {
|
||||||
|
ssid = prefs.getString("SSID");
|
||||||
|
pass = prefs.getString("PASS");
|
||||||
|
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current WIFI Settings</h1><hr><br/>SSID: \"" + ssid + "\"<br/>Password: \"" + pass + "\"<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||||
|
} else if (request->hasParam("logout")) {
|
||||||
|
request->send(401, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Success</h1><hr><br/><br/><br/><button onclick=\"window.location.href='/';\">Login</button></body></html>");
|
||||||
|
} else if (request->hasParam("ipaddress")) {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
ip_address = request->getParam("ipaddress")->value();
|
||||||
|
prefs.putString("IPADDRESS", ip_address);
|
||||||
|
|
||||||
|
} else if (request->hasParam("ipget")) {
|
||||||
|
ip_address = prefs.getString("IPADDRESS");
|
||||||
|
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Kid's Alarm</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current IP Settings</h1><hr>Remote IP Address: \"" + ip_address + "\"<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||||
|
|
||||||
|
|
||||||
|
} else if (request->hasParam("count")) {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
count = request->getParam("count")->value().toInt();
|
||||||
|
|
||||||
|
} else if (request->hasParam("got_message")) {
|
||||||
|
request->send_P(200, "text/html", "");
|
||||||
|
gotmessage = true;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
request->send_P(200, "text/html", index_html);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Start Server
|
||||||
|
server.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
getconnection();
|
||||||
|
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON1) && !tone_on) {
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?comeback=1");
|
||||||
|
|
||||||
|
Serial.println(httpResponseCode);
|
||||||
|
if (httpResponseCode != 200) {
|
||||||
|
failed = true;
|
||||||
|
} else {
|
||||||
|
tone_on = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON1))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON2)) {
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?cancel=1");
|
||||||
|
|
||||||
|
Serial.println(httpResponseCode);
|
||||||
|
|
||||||
|
cancel = true;
|
||||||
|
|
||||||
|
if (httpResponseCode != 200) {
|
||||||
|
failed = true;
|
||||||
|
} else {
|
||||||
|
cancel = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON2))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON3)) {
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?sermonover=1");
|
||||||
|
|
||||||
|
Serial.println(httpResponseCode);
|
||||||
|
|
||||||
|
if (httpResponseCode != 200) {
|
||||||
|
failed = true;
|
||||||
|
} else {
|
||||||
|
sermon_over = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON3))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!digitalRead(BUTTON4) && count > 0) {
|
||||||
|
|
||||||
|
|
||||||
|
int httpResponseCode = GETRequest("http://admin:KAM_alarm@" + ip_address + "/?receivedcount=1");
|
||||||
|
|
||||||
|
count = -2;
|
||||||
|
|
||||||
|
|
||||||
|
while (!digitalRead(BUTTON4))
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void getconnection() {
|
||||||
|
currentMillis = millis();
|
||||||
|
if (currentMillis - previousMillis > 10000) {
|
||||||
|
|
||||||
|
int response = GETRequest("http://admin:KAM_alarm@" + ip_address);
|
||||||
|
|
||||||
|
if (response == 200) {
|
||||||
|
connected = true;
|
||||||
|
Serial.println("Connected");
|
||||||
|
} else {
|
||||||
|
connected = false;
|
||||||
|
Serial.println("Not Connected");
|
||||||
|
}
|
||||||
|
previousMillis = currentMillis;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int GETRequest(String URL) {
|
||||||
|
int response;
|
||||||
|
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
http.begin(URL.c_str());
|
||||||
|
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||||
|
http.setTimeout(5000);
|
||||||
|
response = http.GET();
|
||||||
|
http.end();
|
||||||
|
|
||||||
|
Serial.println(URL);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int POSTRequest(String URL) {
|
||||||
|
int response;
|
||||||
|
|
||||||
|
HTTPClient http;
|
||||||
|
|
||||||
|
http.begin(URL.c_str());
|
||||||
|
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
|
||||||
|
http.setTimeout(5000);
|
||||||
|
response = http.POST("");
|
||||||
|
http.end();
|
||||||
|
|
||||||
|
Serial.println(URL);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
149
PCB/AliExpress.pretty/OLED Screen.kicad_mod
Executable file
149
PCB/AliExpress.pretty/OLED Screen.kicad_mod
Executable file
@ -0,0 +1,149 @@
|
|||||||
|
(footprint "OLED Screen"
|
||||||
|
(version 20240108)
|
||||||
|
(generator "pcbnew")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(layer "F.Cu")
|
||||||
|
(property "Reference" "REF**"
|
||||||
|
(at -9 -4 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "5dcf6000-928b-4d9d-b1a3-ef8cdd9039f9")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "OLED Screen"
|
||||||
|
(at -9 0 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "47548e53-24d7-4925-bf54-dd8634c07291")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "OLED Screen"
|
||||||
|
(at -9 2.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "7a4af19e-ff99-43f2-bfba-b44edbc127b4")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -9 0 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "5b8aa28c-bd0b-4ab4-a131-7f24606dae6c")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -9 0 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "f8a010c3-abca-44c6-94fd-1c1387ce18ed")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(attr through_hole)
|
||||||
|
(fp_rect
|
||||||
|
(start -19 -6)
|
||||||
|
(end 19 6)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "3a50a72b-80cd-4ebc-8d4f-b9db8134d700")
|
||||||
|
)
|
||||||
|
(fp_rect
|
||||||
|
(start -20 -7)
|
||||||
|
(end 20 7)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.CrtYd")
|
||||||
|
(uuid "5dbca073-5c84-4c87-a7c5-ea244599822c")
|
||||||
|
)
|
||||||
|
(fp_text user "0.91\" OLED Screen"
|
||||||
|
(at -2 0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "116666bb-e550-41e7-8a9a-74ae15546ed4")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(fp_text user "${REFERENCE}"
|
||||||
|
(at -9 -2 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "383dfe11-b009-4c04-b76a-690d7c54db19")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pad "1" thru_hole circle
|
||||||
|
(at -17 3.81)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "77ef6465-565e-47ec-9156-cb0b2e045702")
|
||||||
|
)
|
||||||
|
(pad "2" thru_hole circle
|
||||||
|
(at -17 1.27)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "b8c78e63-9cb3-4f23-8388-f3d257f180cb")
|
||||||
|
)
|
||||||
|
(pad "3" thru_hole circle
|
||||||
|
(at -17 -1.27)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "f22217e4-05b3-4542-90a3-3c28876763ac")
|
||||||
|
)
|
||||||
|
(pad "4" thru_hole circle
|
||||||
|
(at -17 -3.81)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "961ff472-3c4a-44a4-aa43-47b323307e97")
|
||||||
|
)
|
||||||
|
)
|
141
PCB/AliExpress.pretty/buzzer.kicad_mod
Executable file
141
PCB/AliExpress.pretty/buzzer.kicad_mod
Executable file
@ -0,0 +1,141 @@
|
|||||||
|
(footprint "buzzer"
|
||||||
|
(version 20240108)
|
||||||
|
(generator "pcbnew")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(layer "F.Cu")
|
||||||
|
(property "Reference" "REF**"
|
||||||
|
(at -8 -2 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "5354a10a-e450-4db7-9ca8-151a6d80c480")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "buzzer"
|
||||||
|
(at -8 -0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "566c82e1-d522-45ce-8cf3-6b82cd298566")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "buzzer"
|
||||||
|
(at -8 1.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "09e194c7-334e-44d6-a3f1-7a2992da6545")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -8 -0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "bcd3d36d-2fcb-4528-a325-872afd597d2f")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -8 -0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "017d17ab-3e29-4590-9dd5-47a520d50e8e")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(attr through_hole)
|
||||||
|
(fp_rect
|
||||||
|
(start -16.25 -6.5)
|
||||||
|
(end 16.25 6.5)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "fb9c396b-4f4f-4561-947b-ca27694712f0")
|
||||||
|
)
|
||||||
|
(fp_rect
|
||||||
|
(start -17.25 -7.5)
|
||||||
|
(end 17.25 7.5)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.CrtYd")
|
||||||
|
(uuid "3c366ac6-19d6-495e-8c83-b0e34fcc96f0")
|
||||||
|
)
|
||||||
|
(fp_text user "Buzzer Board"
|
||||||
|
(at -3 0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "7c29356c-df2d-40fe-a8f0-4e4d636b7f36")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(fp_text user "${REFERENCE}"
|
||||||
|
(at -8 3.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "149ec2d4-eb4b-4c0c-8775-eac858544844")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pad "1" thru_hole circle
|
||||||
|
(at -14 2.54)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "e0b17b19-53db-466b-a684-846d55c12a0a")
|
||||||
|
)
|
||||||
|
(pad "2" thru_hole circle
|
||||||
|
(at -14 0)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "c4f2171f-f5ba-4cae-917f-55c5ff3b1bb9")
|
||||||
|
)
|
||||||
|
(pad "3" thru_hole circle
|
||||||
|
(at -14 -2.54)
|
||||||
|
(size 1.524 1.524)
|
||||||
|
(drill 0.762)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(uuid "1b6c2d49-38fc-433d-ae26-4cf3fe370aff")
|
||||||
|
)
|
||||||
|
)
|
888
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.bak
Executable file
888
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.bak
Executable file
@ -0,0 +1,888 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "ESP32-DEVKITC-32D"
|
||||||
|
(pin_names
|
||||||
|
(offset 1.016)
|
||||||
|
)
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at -15.2572 26.0643 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "ESP32-DEVKITC-32D"
|
||||||
|
(at -15.2563 -27.9698 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "ESP32-DEVKITC-32D:MODULE_ESP32-DEVKITC-32D"
|
||||||
|
(at 3.81 38.1 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MF" "Espressif Systems"
|
||||||
|
(at 5.08 52.07 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MAXIMUM_PACKAGE_HEIGHT" "N/A"
|
||||||
|
(at 3.81 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Package" "None"
|
||||||
|
(at 12.7 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Price" "None"
|
||||||
|
(at 3.81 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Check_prices" "https://www.snapeda.com/parts/ESP32-DEVKITC-32D/Espressif+Systems/view-part/?ref=eda"
|
||||||
|
(at 7.62 33.02 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "STANDARD" "Manufacturer Recommendations"
|
||||||
|
(at 5.08 43.18 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "PARTREV" "V4"
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "SnapEDA_Link" "https://www.snapeda.com/parts/ESP32-DEVKITC-32D/Espressif+Systems/view-part/?ref=snap"
|
||||||
|
(at 7.62 30.48 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MP" "ESP32-DEVKITC-32D"
|
||||||
|
(at 5.08 45.72 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description_1" "\nWiFi Development Tools (802.11) ESP32 General Development Kit, ESP32-WROOM-32D on the board\n"
|
||||||
|
(at 6.35 29.21 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MANUFACTURER" "Espressif Systems"
|
||||||
|
(at 5.08 54.61 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Availability" "In Stock"
|
||||||
|
(at 22.86 48.26 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "SNAPEDA_PN" "ESP32-DEVKITC-32D"
|
||||||
|
(at 5.08 49.53 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "ESP32-DEVKITC-32D_0_0"
|
||||||
|
(rectangle
|
||||||
|
(start -15.24 25.4)
|
||||||
|
(end 15.24 -25.4)
|
||||||
|
(stroke
|
||||||
|
(width 0.254)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "ESP32-DEVKITC-32D_1_0"
|
||||||
|
(pin bidirectional clock
|
||||||
|
(at -20.32 22.86 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "CLK"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 0 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO05"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-10"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-11"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -5.08 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at -20.32 -7.62 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -10.16 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO21"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -12.7 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "RX"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -15.24 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "TX"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -17.78 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO22"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -20.32 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO23"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at -20.32 -22.86 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 20.32 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD0"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 17.78 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 15.24 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 12.7 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO02"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-5"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 10.16 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO00"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-6"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 7.62 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO04"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-7"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 5.08 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-8"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 2.54 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-9"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 22.86 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "5V"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 0 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO26"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-10"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -2.54 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO25"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-11"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -5.08 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO33"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -7.62 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO32"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -10.16 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO35"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -12.7 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO34"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -15.24 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SVN"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -17.78 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SVP"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -20.32 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "EN"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 -22.86 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "3V3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 20.32 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "CMD"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 17.78 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 15.24 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 12.7 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-5"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 10.16 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-6"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 7.62 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-7"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 5.08 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-8"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 2.54 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO27"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-9"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
926
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.kicad_sym
Executable file
926
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.kicad_sym
Executable file
@ -0,0 +1,926 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "ESP32-DEVKITC-32D"
|
||||||
|
(pin_names
|
||||||
|
(offset 1.016)
|
||||||
|
)
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at -15.2572 26.0643 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "ESP32-DEVKITC-32D"
|
||||||
|
(at -10.16 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "ESP32-DEVKITC-32D:MODULE_ESP32-DEVKITC-32D"
|
||||||
|
(at 3.81 38.1 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MF" "Espressif Systems"
|
||||||
|
(at 5.08 52.07 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MAXIMUM_PACKAGE_HEIGHT" "N/A"
|
||||||
|
(at 3.81 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Package" "None"
|
||||||
|
(at 12.7 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Price" "None"
|
||||||
|
(at 3.81 40.64 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Check_prices" "https://www.snapeda.com/parts/ESP32-DEVKITC-32D/Espressif+Systems/view-part/?ref=eda"
|
||||||
|
(at 7.62 33.02 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "STANDARD" "Manufacturer Recommendations"
|
||||||
|
(at 5.08 43.18 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "PARTREV" "V4"
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "SnapEDA_Link" "https://www.snapeda.com/parts/ESP32-DEVKITC-32D/Espressif+Systems/view-part/?ref=snap"
|
||||||
|
(at 7.62 30.48 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MP" "ESP32-DEVKITC-32D"
|
||||||
|
(at 5.08 45.72 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description_1" "\nWiFi Development Tools (802.11) ESP32 General Development Kit, ESP32-WROOM-32D on the board\n"
|
||||||
|
(at 6.35 29.21 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "MANUFACTURER" "Espressif Systems"
|
||||||
|
(at 5.08 54.61 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Availability" "In Stock"
|
||||||
|
(at 22.86 48.26 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "SNAPEDA_PN" "ESP32-DEVKITC-32D"
|
||||||
|
(at 5.08 49.53 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify bottom)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "ESP32-DEVKITC-32D_0_0"
|
||||||
|
(rectangle
|
||||||
|
(start -15.24 25.4)
|
||||||
|
(end 15.24 -25.4)
|
||||||
|
(stroke
|
||||||
|
(width 0.254)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "ESP32-DEVKITC-32D_0_1"
|
||||||
|
(rectangle
|
||||||
|
(start -10.16 -25.4)
|
||||||
|
(end 11.43 -30.48)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type none)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(rectangle
|
||||||
|
(start -5.08 29.21)
|
||||||
|
(end 5.08 25.4)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type none)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(polyline
|
||||||
|
(pts
|
||||||
|
(xy -7.62 -25.4) (xy -7.62 -29.21) (xy -5.08 -29.21) (xy -5.08 -26.67) (xy -2.54 -26.67) (xy -2.54 -29.21)
|
||||||
|
(xy 0 -29.21) (xy 0 -26.67) (xy 2.54 -26.67) (xy 2.54 -29.21) (xy 5.08 -29.21) (xy 5.08 -26.67)
|
||||||
|
(xy 7.62 -26.67) (xy 7.62 -29.21) (xy 10.16 -29.21) (xy 10.16 -29.21) (xy 10.16 -29.21)
|
||||||
|
)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type none)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "ESP32-DEVKITC-32D_1_0"
|
||||||
|
(pin bidirectional clock
|
||||||
|
(at -20.32 22.86 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "CLK"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 0 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO05"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-10"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-11"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -5.08 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at -20.32 -7.62 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -10.16 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO21"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -12.7 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "RX"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -15.24 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "TX"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -17.78 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO22"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 -20.32 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO23"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at -20.32 -22.86 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 20.32 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD0"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 17.78 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 15.24 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 12.7 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO02"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-5"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 10.16 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO00"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-6"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 7.62 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO04"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-7"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 5.08 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-8"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at -20.32 2.54 0)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J2-9"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 22.86 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "5V"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 0 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO26"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-10"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -2.54 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO25"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-11"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -5.08 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO33"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -7.62 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO32"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -10.16 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO35"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 -12.7 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO34"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-15"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -15.24 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SVN"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-16"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -17.78 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SVP"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-17"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 20.32 -20.32 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "EN"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-18"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 -22.86 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "3V3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-19"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 20.32 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "CMD"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 17.78 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 15.24 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "SD2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 12.7 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO13"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-5"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin power_in line
|
||||||
|
(at 20.32 10.16 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-6"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 7.62 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO12"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-7"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 5.08 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO14"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-8"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin bidirectional line
|
||||||
|
(at 20.32 2.54 180)
|
||||||
|
(length 5.08)
|
||||||
|
(name "IO27"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "J3-9"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.016 1.016)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
88880
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.step
Executable file
88880
PCB/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.step
Executable file
File diff suppressed because it is too large
Load Diff
478
PCB/ESP32-DEVKITC-32D/MODULE_ESP32-DEVKITC-32D.kicad_mod
Normal file
478
PCB/ESP32-DEVKITC-32D/MODULE_ESP32-DEVKITC-32D.kicad_mod
Normal file
@ -0,0 +1,478 @@
|
|||||||
|
(footprint "MODULE_ESP32-DEVKITC-32D"
|
||||||
|
(version 20240108)
|
||||||
|
(generator "pcbnew")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(layer "F.Cu")
|
||||||
|
(property "Reference" "REF**"
|
||||||
|
(at -6.985 0 90)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "2bad6ee2-d3d4-4921-bb5d-333659bec3b7")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.000386 1.000386)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "MODULE_ESP32-DEVKITC-32D"
|
||||||
|
(at -4 0 90)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "c8ef14d3-b37e-4f25-ad07-cb6e53a084ff")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.001047 1.001047)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "MODULE_ESP32-DEVKITC-32D"
|
||||||
|
(at 0 0 90)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "8aa48191-0366-46ac-a04b-abc752248bb0")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "77483604-2ee2-4d56-841d-d68977280645")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "f68a1d5a-f605-4a53-bbdc-a6794fbef497")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(attr through_hole)
|
||||||
|
(fp_line
|
||||||
|
(start 97.65 27.25)
|
||||||
|
(end 69.75 27.25)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type solid)
|
||||||
|
)
|
||||||
|
(layer "B.SilkS")
|
||||||
|
(uuid "e84208e6-e54a-4ceb-90d7-5a15791ce65a")
|
||||||
|
)
|
||||||
|
(fp_rect
|
||||||
|
(start -3.81 -25.4)
|
||||||
|
(end 3.81 -20.32)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "293a7c8f-4f84-4b55-becb-72d0aac51564")
|
||||||
|
)
|
||||||
|
(fp_rect
|
||||||
|
(start 12.9 25.75)
|
||||||
|
(end -12.9 -25.75)
|
||||||
|
(stroke
|
||||||
|
(width 0.1)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "1c5e9d29-ccd3-4d34-a81f-aae3d9e1e2eb")
|
||||||
|
)
|
||||||
|
(fp_circle
|
||||||
|
(center -13.33 -22.86)
|
||||||
|
(end -13.23 -22.86)
|
||||||
|
(stroke
|
||||||
|
(width 0.2)
|
||||||
|
(type solid)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "7d2c7af8-8b37-49d0-bd87-f97659f539b2")
|
||||||
|
)
|
||||||
|
(fp_circle
|
||||||
|
(center -13.33 -22.86)
|
||||||
|
(end -13.23 -22.86)
|
||||||
|
(stroke
|
||||||
|
(width 0.2)
|
||||||
|
(type solid)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "d02b8c54-0ada-440e-9023-40dd45e6a52a")
|
||||||
|
)
|
||||||
|
(fp_text user "ESP32 Dev Board"
|
||||||
|
(at 5.08 7.62 90)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "288478cd-ecdc-4c1d-bbd5-6d7b0e29faa7")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pad "J2-1" thru_hole rect
|
||||||
|
(at -11.43 -22.86)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "ac9240a1-ca86-4b18-9d12-5a924455bc82")
|
||||||
|
)
|
||||||
|
(pad "J2-2" thru_hole circle
|
||||||
|
(at -11.43 -20.32)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "01ba540c-2e73-404a-9fd7-0bc6866e0717")
|
||||||
|
)
|
||||||
|
(pad "J2-3" thru_hole circle
|
||||||
|
(at -11.43 -17.78)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "e3a0e033-eba7-4990-aab0-f897cadf5441")
|
||||||
|
)
|
||||||
|
(pad "J2-4" thru_hole circle
|
||||||
|
(at -11.43 -15.24)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "e017e0af-5a8e-4f21-9326-1e9f4611dcc0")
|
||||||
|
)
|
||||||
|
(pad "J2-5" thru_hole circle
|
||||||
|
(at -11.43 -12.7)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "c5ebefb5-265e-485b-9200-5b56c83a33f6")
|
||||||
|
)
|
||||||
|
(pad "J2-6" thru_hole circle
|
||||||
|
(at -11.43 -10.16)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "eca96b23-bab0-4001-89fa-7e38a6d87392")
|
||||||
|
)
|
||||||
|
(pad "J2-7" thru_hole circle
|
||||||
|
(at -11.43 -7.62)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "c4122e79-9fe3-4e95-8585-81211106e7ca")
|
||||||
|
)
|
||||||
|
(pad "J2-8" thru_hole circle
|
||||||
|
(at -11.43 -5.08)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "fba01a09-3eb8-4109-a741-fcd115d2de2a")
|
||||||
|
)
|
||||||
|
(pad "J2-9" thru_hole circle
|
||||||
|
(at -11.43 -2.54)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5911ec8f-0704-440c-a1dc-fb44a3815d6a")
|
||||||
|
)
|
||||||
|
(pad "J2-10" thru_hole circle
|
||||||
|
(at -11.43 0)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "6d26a5f0-5d3e-4e60-8909-cfbb27b8088b")
|
||||||
|
)
|
||||||
|
(pad "J2-11" thru_hole circle
|
||||||
|
(at -11.43 2.54)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "34251366-74ae-41d5-8a04-d53ad4f7b0fd")
|
||||||
|
)
|
||||||
|
(pad "J2-12" thru_hole circle
|
||||||
|
(at -11.43 5.08)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5db836e0-adb9-4195-a9f3-f8140ca7e365")
|
||||||
|
)
|
||||||
|
(pad "J2-13" thru_hole circle
|
||||||
|
(at -11.43 7.62)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "478f2581-db26-4384-807b-4161110d1f7e")
|
||||||
|
)
|
||||||
|
(pad "J2-14" thru_hole circle
|
||||||
|
(at -11.43 10.16)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "4cc81f3a-5e90-4d81-be59-9b37b076e773")
|
||||||
|
)
|
||||||
|
(pad "J2-15" thru_hole circle
|
||||||
|
(at -11.43 12.7)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "7caaeeec-458c-4d94-a6e4-0b54a023f541")
|
||||||
|
)
|
||||||
|
(pad "J2-16" thru_hole circle
|
||||||
|
(at -11.43 15.24)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "6dd32cd0-ba23-4502-bba7-e3a0d439ff6f")
|
||||||
|
)
|
||||||
|
(pad "J2-17" thru_hole circle
|
||||||
|
(at -11.43 17.78)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "b7ee06e7-8b3a-4477-ac23-a152b5648cc1")
|
||||||
|
)
|
||||||
|
(pad "J2-18" thru_hole circle
|
||||||
|
(at -11.43 20.32)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "dcfd797e-0b3e-44da-8bde-fd5e9ef1060a")
|
||||||
|
)
|
||||||
|
(pad "J2-19" thru_hole circle
|
||||||
|
(at -11.43 22.86)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "2ea96bce-9893-4eec-b5de-9630819235b6")
|
||||||
|
)
|
||||||
|
(pad "J3-1" thru_hole circle
|
||||||
|
(at 11.43 -22.86)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "871efedb-e332-4a3a-85e2-cc4c0d4c65cd")
|
||||||
|
)
|
||||||
|
(pad "J3-2" thru_hole circle
|
||||||
|
(at 11.43 -20.32)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "883d60a9-72d3-422c-9294-d58f76266390")
|
||||||
|
)
|
||||||
|
(pad "J3-3" thru_hole circle
|
||||||
|
(at 11.43 -17.78)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "647f2363-cc41-48b3-809f-33e8619f039f")
|
||||||
|
)
|
||||||
|
(pad "J3-4" thru_hole circle
|
||||||
|
(at 11.43 -15.24)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "772dd5ff-8b26-4ea7-a86a-e0fe80854b0f")
|
||||||
|
)
|
||||||
|
(pad "J3-5" thru_hole circle
|
||||||
|
(at 11.43 -12.7)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5a8b050b-45dd-417e-a2d0-067f62aa73a6")
|
||||||
|
)
|
||||||
|
(pad "J3-6" thru_hole circle
|
||||||
|
(at 11.43 -10.16)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5a52333b-2e1c-43ae-9514-66f12cdf4833")
|
||||||
|
)
|
||||||
|
(pad "J3-7" thru_hole circle
|
||||||
|
(at 11.43 -7.62)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "98983018-f2fb-45c6-b93d-5b863525c249")
|
||||||
|
)
|
||||||
|
(pad "J3-8" thru_hole circle
|
||||||
|
(at 11.43 -5.08)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "dfc6c355-6244-4389-99aa-4cdb59241f21")
|
||||||
|
)
|
||||||
|
(pad "J3-9" thru_hole circle
|
||||||
|
(at 11.43 -2.54)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "a5085d6d-92b0-46fe-ae6a-52713bc80b99")
|
||||||
|
)
|
||||||
|
(pad "J3-10" thru_hole circle
|
||||||
|
(at 11.43 0)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "0396aa5f-457e-4caa-b7c4-06e40fb9e808")
|
||||||
|
)
|
||||||
|
(pad "J3-11" thru_hole circle
|
||||||
|
(at 11.43 2.54)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5c618744-4164-4901-bc6a-f2906067aedd")
|
||||||
|
)
|
||||||
|
(pad "J3-12" thru_hole circle
|
||||||
|
(at 11.43 5.08)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "ceffdfc0-52de-41ac-b2b6-ad84e7de8695")
|
||||||
|
)
|
||||||
|
(pad "J3-13" thru_hole circle
|
||||||
|
(at 11.43 7.62)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "5610339f-475f-4699-b850-ca8fdf6e1ca3")
|
||||||
|
)
|
||||||
|
(pad "J3-14" thru_hole circle
|
||||||
|
(at 11.43 10.16)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "fad06d42-8d63-45c4-8f6e-5a5b70e678f5")
|
||||||
|
)
|
||||||
|
(pad "J3-15" thru_hole circle
|
||||||
|
(at 11.43 12.7)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "dd677b28-1d6f-4a16-b23d-1747a9090061")
|
||||||
|
)
|
||||||
|
(pad "J3-16" thru_hole circle
|
||||||
|
(at 11.43 15.24)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "b2b62931-f1ce-4275-a15e-42bbc41e6ff1")
|
||||||
|
)
|
||||||
|
(pad "J3-17" thru_hole circle
|
||||||
|
(at 11.43 17.78)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "c9c85973-19aa-4a3d-b3a9-3bc49ecb362d")
|
||||||
|
)
|
||||||
|
(pad "J3-18" thru_hole circle
|
||||||
|
(at 11.43 20.32)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "51fe31c2-11a9-46a3-ba60-e4b2f771326a")
|
||||||
|
)
|
||||||
|
(pad "J3-19" thru_hole circle
|
||||||
|
(at 11.43 22.86)
|
||||||
|
(size 1.56 1.56)
|
||||||
|
(drill 1.04)
|
||||||
|
(layers "*.Cu" "*.Mask")
|
||||||
|
(remove_unused_layers no)
|
||||||
|
(solder_mask_margin 0.102)
|
||||||
|
(uuid "fdcc150d-2ff6-426c-9e30-c58b8d3e5ab4")
|
||||||
|
)
|
||||||
|
)
|
1
PCB/ESP32-DEVKITC-32D/how-to-import.htm
Executable file
1
PCB/ESP32-DEVKITC-32D/how-to-import.htm
Executable file
@ -0,0 +1 @@
|
|||||||
|
<!DOCTYPE HTML><html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="refresh" content="0; url=https://www.snapeda.com/about/import/#"> <script type="text/javascript">window.location.href="https://www.snapeda.com/about/import/#" </script> <title>Page Redirection</title> </head> <body> If you are not redirected automatically, follow this <a href="https://www.snapeda.com/about/import/#">link to the import guide</a>. </body></html>
|
BIN
PCB/Gerber/Gerber.zip
Normal file
BIN
PCB/Gerber/Gerber.zip
Normal file
Binary file not shown.
146
PCB/button.bak
Executable file
146
PCB/button.bak
Executable file
@ -0,0 +1,146 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "TWS4417-250AT"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 10.16 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "TWS4417-250AT_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start -3.81 3.81)
|
||||||
|
(end 3.81 -3.81)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "SMD Button"
|
||||||
|
(at 0 6.35 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -6.35 2.54 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 6.35 2.54 180)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -6.35 -2.54 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at 6.35 -2.54 180)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
146
PCB/button.kicad_sym
Executable file
146
PCB/button.kicad_sym
Executable file
@ -0,0 +1,146 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "TWS4417-250AT"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 11.43 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "TWS4417-250AT_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start -3.81 3.81)
|
||||||
|
(end 3.81 -3.81)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "SMD Button"
|
||||||
|
(at 0 6.35 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -6.35 2.54 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at 6.35 2.54 180)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -6.35 -2.54 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at 6.35 -2.54 180)
|
||||||
|
(length 2.54)
|
||||||
|
(name ""
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
149
PCB/button.pretty/TWS4417-250AT.kicad_mod
Normal file
149
PCB/button.pretty/TWS4417-250AT.kicad_mod
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
(footprint "TWS4417-250AT"
|
||||||
|
(version 20240108)
|
||||||
|
(generator "pcbnew")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(layer "F.Cu")
|
||||||
|
(property "Reference" "REF**"
|
||||||
|
(at 0 -4 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "1af38da6-a815-4a6d-b027-f2892a709d63")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" "TWS4417-250AT"
|
||||||
|
(at 0 2.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "fddb58d4-3c05-46ef-8776-2eeff4c64653")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" "TWS4417-250AT"
|
||||||
|
(at 0 -2 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "9ac2449a-cbfd-4a74-9c3d-aa753fe8daef")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at 0 -2 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "0bd96643-f2b3-4788-98a1-01355ef398b6")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at 0 -2 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(hide yes)
|
||||||
|
(uuid "eaf8ce91-2641-4585-8bd0-771fa7cc38c1")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(attr smd)
|
||||||
|
(fp_rect
|
||||||
|
(start -5 -2.9)
|
||||||
|
(end 5 2.9)
|
||||||
|
(stroke
|
||||||
|
(width 0.15)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "94bae4e4-9bed-4c69-85d4-39bf18f3984e")
|
||||||
|
)
|
||||||
|
(fp_rect
|
||||||
|
(start -5.25 -3)
|
||||||
|
(end 5.25 3)
|
||||||
|
(stroke
|
||||||
|
(width 0.05)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill none)
|
||||||
|
(layer "F.CrtYd")
|
||||||
|
(uuid "bbe72dcf-a1a8-498b-9992-bef9ca4d5adb")
|
||||||
|
)
|
||||||
|
(fp_text user "Button"
|
||||||
|
(at -2.5 0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.SilkS")
|
||||||
|
(uuid "7e70be57-5a1a-4337-8bf9-d17237da936a")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(fp_text user "${REFERENCE}"
|
||||||
|
(at 0 0.5 0)
|
||||||
|
(unlocked yes)
|
||||||
|
(layer "F.Fab")
|
||||||
|
(uuid "e5b468b6-f1db-45bb-8953-7138dda5abce")
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1 1)
|
||||||
|
(thickness 0.15)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pad "1" smd roundrect
|
||||||
|
(at -3.2 -1.85)
|
||||||
|
(size 2.286 1.524)
|
||||||
|
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||||
|
(roundrect_rratio 0.25)
|
||||||
|
(thermal_bridge_angle 45)
|
||||||
|
(uuid "f8c27cc2-e9ee-4397-8ba7-a036ad76204a")
|
||||||
|
)
|
||||||
|
(pad "2" smd roundrect
|
||||||
|
(at 3.2 -1.85)
|
||||||
|
(size 2.286 1.524)
|
||||||
|
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||||
|
(roundrect_rratio 0.25)
|
||||||
|
(thermal_bridge_angle 45)
|
||||||
|
(uuid "d3d2402c-23e4-46fd-a45c-441b1a096258")
|
||||||
|
)
|
||||||
|
(pad "3" smd roundrect
|
||||||
|
(at -3.2 1.85)
|
||||||
|
(size 2.286 1.524)
|
||||||
|
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||||
|
(roundrect_rratio 0.25)
|
||||||
|
(thermal_bridge_angle 45)
|
||||||
|
(uuid "f25b93a1-2c36-4dd2-a5f4-e0ad9788e3fe")
|
||||||
|
)
|
||||||
|
(pad "4" smd roundrect
|
||||||
|
(at 3.2 1.85)
|
||||||
|
(size 2.286 1.524)
|
||||||
|
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||||
|
(roundrect_rratio 0.25)
|
||||||
|
(thermal_bridge_angle 45)
|
||||||
|
(uuid "f17c31be-2c6a-4b08-9970-2ccc3980dfab")
|
||||||
|
)
|
||||||
|
)
|
128
PCB/buzzer.bak
Executable file
128
PCB/buzzer.bak
Executable file
@ -0,0 +1,128 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "buzzer_board"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 10.16 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "buzzer_board_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start 31.75 -7.62)
|
||||||
|
(end -17.78 7.62)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "BUZZER"
|
||||||
|
(at 7.62 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 5.08 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "Vcc"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 0 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "I/O"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 -5.08 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
128
PCB/buzzer.kicad_sym
Executable file
128
PCB/buzzer.kicad_sym
Executable file
@ -0,0 +1,128 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "buzzer_board"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 10.16 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -10.16 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "buzzer_board_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start 31.75 -7.62)
|
||||||
|
(end -17.78 7.62)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "BUZZER"
|
||||||
|
(at 7.62 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 -5.08 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 0 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "I/O"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -20.32 5.08 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "Vcc"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
94004
PCB/fp-info-cache
Executable file
94004
PCB/fp-info-cache
Executable file
File diff suppressed because it is too large
Load Diff
6
PCB/fp-lib-table
Executable file
6
PCB/fp-lib-table
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
(fp_lib_table
|
||||||
|
(version 7)
|
||||||
|
(lib (name "button")(type "KiCad")(uri "${KIPRJMOD}/button.pretty")(options "")(descr ""))
|
||||||
|
(lib (name "AliExpress")(type "KiCad")(uri "${KIPRJMOD}/AliExpress.pretty")(options "")(descr ""))
|
||||||
|
(lib (name "ESP32-DEVKITC-32D")(type "KiCad")(uri "${KIPRJMOD}/ESP32-DEVKITC-32D")(options "")(descr ""))
|
||||||
|
)
|
5842
PCB/kam_alarm.kicad_pcb
Executable file
5842
PCB/kam_alarm.kicad_pcb
Executable file
File diff suppressed because it is too large
Load Diff
123
PCB/kam_alarm.kicad_prl
Executable file
123
PCB/kam_alarm.kicad_prl
Executable file
@ -0,0 +1,123 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"active_layer": 31,
|
||||||
|
"active_layer_preset": "All Layers",
|
||||||
|
"auto_track_width": true,
|
||||||
|
"hidden_netclasses": [
|
||||||
|
"Default",
|
||||||
|
"Signal"
|
||||||
|
],
|
||||||
|
"hidden_nets": [
|
||||||
|
"",
|
||||||
|
"B1",
|
||||||
|
"B2",
|
||||||
|
"B3",
|
||||||
|
"B4",
|
||||||
|
"unconnected-(U8-SD0-PadJ2-2)",
|
||||||
|
"unconnected-(U8-SVN-PadJ3-16)",
|
||||||
|
"unconnected-(U8-SD2-PadJ3-4)",
|
||||||
|
"unconnected-(U8-CLK-PadJ2-1)",
|
||||||
|
"unconnected-(U8-SVP-PadJ3-17)",
|
||||||
|
"unconnected-(U8-SD1-PadJ2-3)",
|
||||||
|
"unconnected-(U8-IO02-PadJ2-5)",
|
||||||
|
"unconnected-(U8-IO34-PadJ3-15)",
|
||||||
|
"/SCK_Wire",
|
||||||
|
"unconnected-(U8-RX-PadJ2-15)",
|
||||||
|
"unconnected-(U8-IO17-PadJ2-9)",
|
||||||
|
"unconnected-(U8-IO12-PadJ3-7)",
|
||||||
|
"/Buzzer I{slash}O 1",
|
||||||
|
"unconnected-(U8-IO26-PadJ3-10)",
|
||||||
|
"unconnected-(U8-SD3-PadJ3-3)",
|
||||||
|
"unconnected-(U8-3V3-PadJ3-19)",
|
||||||
|
"unconnected-(U8-EN-PadJ3-18)",
|
||||||
|
"unconnected-(U8-IO25-PadJ3-11)",
|
||||||
|
"unconnected-(U8-IO19-PadJ2-12)",
|
||||||
|
"unconnected-(U8-IO23-PadJ2-18)",
|
||||||
|
"unconnected-(U8-IO18-PadJ2-11)",
|
||||||
|
"unconnected-(U8-IO13-PadJ3-5)",
|
||||||
|
"unconnected-(U8-IO04-PadJ2-7)",
|
||||||
|
"unconnected-(U8-IO15-PadJ2-4)",
|
||||||
|
"unconnected-(U8-TX-PadJ2-16)",
|
||||||
|
"/Buzzer I{slash}O 2",
|
||||||
|
"unconnected-(U8-IO16-PadJ2-8)",
|
||||||
|
"unconnected-(U8-IO35-PadJ3-14)",
|
||||||
|
"/SDA_Wire",
|
||||||
|
"unconnected-(U8-CMD-PadJ3-2)"
|
||||||
|
],
|
||||||
|
"high_contrast_mode": 0,
|
||||||
|
"net_color_mode": 1,
|
||||||
|
"opacity": {
|
||||||
|
"images": 0.6,
|
||||||
|
"pads": 1.0,
|
||||||
|
"tracks": 1.0,
|
||||||
|
"vias": 1.0,
|
||||||
|
"zones": 0.6
|
||||||
|
},
|
||||||
|
"ratsnest_display_mode": 0,
|
||||||
|
"selection_filter": {
|
||||||
|
"dimensions": true,
|
||||||
|
"footprints": true,
|
||||||
|
"graphics": true,
|
||||||
|
"keepouts": true,
|
||||||
|
"lockedItems": false,
|
||||||
|
"otherItems": true,
|
||||||
|
"pads": true,
|
||||||
|
"text": true,
|
||||||
|
"tracks": true,
|
||||||
|
"vias": true,
|
||||||
|
"zones": true
|
||||||
|
},
|
||||||
|
"visible_items": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3,
|
||||||
|
4,
|
||||||
|
5,
|
||||||
|
8,
|
||||||
|
9,
|
||||||
|
10,
|
||||||
|
11,
|
||||||
|
12,
|
||||||
|
13,
|
||||||
|
15,
|
||||||
|
16,
|
||||||
|
17,
|
||||||
|
18,
|
||||||
|
19,
|
||||||
|
20,
|
||||||
|
21,
|
||||||
|
22,
|
||||||
|
23,
|
||||||
|
24,
|
||||||
|
25,
|
||||||
|
26,
|
||||||
|
27,
|
||||||
|
28,
|
||||||
|
29,
|
||||||
|
30,
|
||||||
|
32,
|
||||||
|
33,
|
||||||
|
34,
|
||||||
|
35,
|
||||||
|
36,
|
||||||
|
39,
|
||||||
|
40
|
||||||
|
],
|
||||||
|
"visible_layers": "fffffff_ffffffff",
|
||||||
|
"zone_display_mode": 0
|
||||||
|
},
|
||||||
|
"git": {
|
||||||
|
"repo_password": "",
|
||||||
|
"repo_type": "",
|
||||||
|
"repo_username": "",
|
||||||
|
"ssh_key": ""
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "kam_alarm.kicad_prl",
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"files": []
|
||||||
|
}
|
||||||
|
}
|
793
PCB/kam_alarm.kicad_pro
Executable file
793
PCB/kam_alarm.kicad_pro
Executable file
@ -0,0 +1,793 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"3dviewports": [],
|
||||||
|
"design_settings": {
|
||||||
|
"defaults": {
|
||||||
|
"apply_defaults_to_fp_fields": false,
|
||||||
|
"apply_defaults_to_fp_shapes": false,
|
||||||
|
"apply_defaults_to_fp_text": false,
|
||||||
|
"board_outline_line_width": 0.05,
|
||||||
|
"copper_line_width": 0.2,
|
||||||
|
"copper_text_italic": false,
|
||||||
|
"copper_text_size_h": 1.5,
|
||||||
|
"copper_text_size_v": 1.5,
|
||||||
|
"copper_text_thickness": 0.3,
|
||||||
|
"copper_text_upright": false,
|
||||||
|
"courtyard_line_width": 0.05,
|
||||||
|
"dimension_precision": 4,
|
||||||
|
"dimension_units": 3,
|
||||||
|
"dimensions": {
|
||||||
|
"arrow_length": 1270000,
|
||||||
|
"extension_offset": 500000,
|
||||||
|
"keep_text_aligned": true,
|
||||||
|
"suppress_zeroes": false,
|
||||||
|
"text_position": 0,
|
||||||
|
"units_format": 1
|
||||||
|
},
|
||||||
|
"fab_line_width": 0.1,
|
||||||
|
"fab_text_italic": false,
|
||||||
|
"fab_text_size_h": 1.0,
|
||||||
|
"fab_text_size_v": 1.0,
|
||||||
|
"fab_text_thickness": 0.15,
|
||||||
|
"fab_text_upright": false,
|
||||||
|
"other_line_width": 0.1,
|
||||||
|
"other_text_italic": false,
|
||||||
|
"other_text_size_h": 1.0,
|
||||||
|
"other_text_size_v": 1.0,
|
||||||
|
"other_text_thickness": 0.15,
|
||||||
|
"other_text_upright": false,
|
||||||
|
"pads": {
|
||||||
|
"drill": 0.762,
|
||||||
|
"height": 1.524,
|
||||||
|
"width": 1.524
|
||||||
|
},
|
||||||
|
"silk_line_width": 0.1,
|
||||||
|
"silk_text_italic": false,
|
||||||
|
"silk_text_size_h": 1.0,
|
||||||
|
"silk_text_size_v": 1.0,
|
||||||
|
"silk_text_thickness": 0.1,
|
||||||
|
"silk_text_upright": false,
|
||||||
|
"zones": {
|
||||||
|
"min_clearance": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"diff_pair_dimensions": [
|
||||||
|
{
|
||||||
|
"gap": 0.0,
|
||||||
|
"via_gap": 0.0,
|
||||||
|
"width": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"drc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 2
|
||||||
|
},
|
||||||
|
"rule_severities": {
|
||||||
|
"annular_width": "error",
|
||||||
|
"clearance": "error",
|
||||||
|
"connection_width": "warning",
|
||||||
|
"copper_edge_clearance": "error",
|
||||||
|
"copper_sliver": "warning",
|
||||||
|
"courtyards_overlap": "error",
|
||||||
|
"diff_pair_gap_out_of_range": "error",
|
||||||
|
"diff_pair_uncoupled_length_too_long": "error",
|
||||||
|
"drill_out_of_range": "error",
|
||||||
|
"duplicate_footprints": "warning",
|
||||||
|
"extra_footprint": "warning",
|
||||||
|
"footprint": "error",
|
||||||
|
"footprint_symbol_mismatch": "warning",
|
||||||
|
"footprint_type_mismatch": "ignore",
|
||||||
|
"hole_clearance": "error",
|
||||||
|
"hole_near_hole": "error",
|
||||||
|
"invalid_outline": "error",
|
||||||
|
"isolated_copper": "warning",
|
||||||
|
"item_on_disabled_layer": "error",
|
||||||
|
"items_not_allowed": "error",
|
||||||
|
"length_out_of_range": "error",
|
||||||
|
"lib_footprint_issues": "warning",
|
||||||
|
"lib_footprint_mismatch": "warning",
|
||||||
|
"malformed_courtyard": "error",
|
||||||
|
"microvia_drill_out_of_range": "error",
|
||||||
|
"missing_courtyard": "ignore",
|
||||||
|
"missing_footprint": "warning",
|
||||||
|
"net_conflict": "warning",
|
||||||
|
"npth_inside_courtyard": "ignore",
|
||||||
|
"padstack": "warning",
|
||||||
|
"pth_inside_courtyard": "ignore",
|
||||||
|
"shorting_items": "error",
|
||||||
|
"silk_edge_clearance": "warning",
|
||||||
|
"silk_over_copper": "warning",
|
||||||
|
"silk_overlap": "warning",
|
||||||
|
"skew_out_of_range": "error",
|
||||||
|
"solder_mask_bridge": "error",
|
||||||
|
"starved_thermal": "error",
|
||||||
|
"text_height": "warning",
|
||||||
|
"text_thickness": "warning",
|
||||||
|
"through_hole_pad_without_hole": "error",
|
||||||
|
"too_many_vias": "error",
|
||||||
|
"track_dangling": "warning",
|
||||||
|
"track_width": "error",
|
||||||
|
"tracks_crossing": "error",
|
||||||
|
"unconnected_items": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"via_dangling": "warning",
|
||||||
|
"zones_intersect": "error"
|
||||||
|
},
|
||||||
|
"rules": {
|
||||||
|
"max_error": 0.005,
|
||||||
|
"min_clearance": 0.15,
|
||||||
|
"min_connection": 0.15,
|
||||||
|
"min_copper_edge_clearance": 0.25,
|
||||||
|
"min_hole_clearance": 0.25,
|
||||||
|
"min_hole_to_hole": 0.25,
|
||||||
|
"min_microvia_diameter": 0.2,
|
||||||
|
"min_microvia_drill": 0.1,
|
||||||
|
"min_resolved_spokes": 2,
|
||||||
|
"min_silk_clearance": 0.15,
|
||||||
|
"min_text_height": 0.8,
|
||||||
|
"min_text_thickness": 0.08,
|
||||||
|
"min_through_hole_diameter": 0.3,
|
||||||
|
"min_track_width": 0.15,
|
||||||
|
"min_via_annular_width": 0.1,
|
||||||
|
"min_via_diameter": 0.5,
|
||||||
|
"solder_mask_to_copper_clearance": 0.0,
|
||||||
|
"use_height_for_length_calcs": true
|
||||||
|
},
|
||||||
|
"teardrop_options": [
|
||||||
|
{
|
||||||
|
"td_onpadsmd": true,
|
||||||
|
"td_onroundshapesonly": false,
|
||||||
|
"td_ontrackend": false,
|
||||||
|
"td_onviapad": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"teardrop_parameters": [
|
||||||
|
{
|
||||||
|
"td_allow_use_two_tracks": true,
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_on_pad_in_zone": false,
|
||||||
|
"td_target_name": "td_round_shape",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"td_allow_use_two_tracks": true,
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_on_pad_in_zone": false,
|
||||||
|
"td_target_name": "td_rect_shape",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"td_allow_use_two_tracks": true,
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_on_pad_in_zone": false,
|
||||||
|
"td_target_name": "td_track_end",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"track_widths": [
|
||||||
|
0.0,
|
||||||
|
0.3,
|
||||||
|
5.0
|
||||||
|
],
|
||||||
|
"tuning_pattern_settings": {
|
||||||
|
"diff_pair_defaults": {
|
||||||
|
"corner_radius_percentage": 80,
|
||||||
|
"corner_style": 1,
|
||||||
|
"max_amplitude": 1.0,
|
||||||
|
"min_amplitude": 0.2,
|
||||||
|
"single_sided": false,
|
||||||
|
"spacing": 1.0
|
||||||
|
},
|
||||||
|
"diff_pair_skew_defaults": {
|
||||||
|
"corner_radius_percentage": 80,
|
||||||
|
"corner_style": 1,
|
||||||
|
"max_amplitude": 1.0,
|
||||||
|
"min_amplitude": 0.2,
|
||||||
|
"single_sided": false,
|
||||||
|
"spacing": 0.6
|
||||||
|
},
|
||||||
|
"single_track_defaults": {
|
||||||
|
"corner_radius_percentage": 80,
|
||||||
|
"corner_style": 1,
|
||||||
|
"max_amplitude": 1.0,
|
||||||
|
"min_amplitude": 0.2,
|
||||||
|
"single_sided": false,
|
||||||
|
"spacing": 0.6
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"via_dimensions": [
|
||||||
|
{
|
||||||
|
"diameter": 0.0,
|
||||||
|
"drill": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"zones_allow_external_fillets": false
|
||||||
|
},
|
||||||
|
"ipc2581": {
|
||||||
|
"dist": "",
|
||||||
|
"distpn": "",
|
||||||
|
"internal_id": "",
|
||||||
|
"mfg": "",
|
||||||
|
"mpn": ""
|
||||||
|
},
|
||||||
|
"layer_presets": [],
|
||||||
|
"viewports": []
|
||||||
|
},
|
||||||
|
"boards": [],
|
||||||
|
"cvpcb": {
|
||||||
|
"equivalence_files": []
|
||||||
|
},
|
||||||
|
"erc": {
|
||||||
|
"erc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"pin_map": [
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"rule_severities": {
|
||||||
|
"bus_definition_conflict": "error",
|
||||||
|
"bus_entry_needed": "error",
|
||||||
|
"bus_label_syntax": "error",
|
||||||
|
"bus_to_bus_conflict": "error",
|
||||||
|
"bus_to_net_conflict": "error",
|
||||||
|
"conflicting_netclasses": "error",
|
||||||
|
"different_unit_footprint": "error",
|
||||||
|
"different_unit_net": "error",
|
||||||
|
"duplicate_reference": "error",
|
||||||
|
"duplicate_sheet_names": "error",
|
||||||
|
"endpoint_off_grid": "warning",
|
||||||
|
"extra_units": "error",
|
||||||
|
"global_label_dangling": "warning",
|
||||||
|
"hier_label_mismatch": "error",
|
||||||
|
"label_dangling": "error",
|
||||||
|
"lib_symbol_issues": "warning",
|
||||||
|
"missing_bidi_pin": "warning",
|
||||||
|
"missing_input_pin": "warning",
|
||||||
|
"missing_power_pin": "error",
|
||||||
|
"missing_unit": "warning",
|
||||||
|
"multiple_net_names": "warning",
|
||||||
|
"net_not_bus_member": "warning",
|
||||||
|
"no_connect_connected": "warning",
|
||||||
|
"no_connect_dangling": "warning",
|
||||||
|
"pin_not_connected": "error",
|
||||||
|
"pin_not_driven": "error",
|
||||||
|
"pin_to_pin": "warning",
|
||||||
|
"power_pin_not_driven": "error",
|
||||||
|
"similar_labels": "warning",
|
||||||
|
"simulation_model_issue": "ignore",
|
||||||
|
"unannotated": "error",
|
||||||
|
"unit_value_mismatch": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"wire_dangling": "error"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"pinned_footprint_libs": [],
|
||||||
|
"pinned_symbol_libs": []
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "kam_alarm.kicad_pro",
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_settings": {
|
||||||
|
"classes": [
|
||||||
|
{
|
||||||
|
"bus_width": 12,
|
||||||
|
"clearance": 0.2,
|
||||||
|
"diff_pair_gap": 0.25,
|
||||||
|
"diff_pair_via_gap": 0.25,
|
||||||
|
"diff_pair_width": 0.2,
|
||||||
|
"line_style": 0,
|
||||||
|
"microvia_diameter": 0.3,
|
||||||
|
"microvia_drill": 0.1,
|
||||||
|
"name": "Default",
|
||||||
|
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"track_width": 0.2,
|
||||||
|
"via_diameter": 0.8,
|
||||||
|
"via_drill": 0.4,
|
||||||
|
"wire_width": 6
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bus_width": 12,
|
||||||
|
"clearance": 0.2,
|
||||||
|
"diff_pair_gap": 0.25,
|
||||||
|
"diff_pair_via_gap": 0.25,
|
||||||
|
"diff_pair_width": 0.2,
|
||||||
|
"line_style": 0,
|
||||||
|
"microvia_diameter": 0.3,
|
||||||
|
"microvia_drill": 0.1,
|
||||||
|
"name": "Power",
|
||||||
|
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"track_width": 0.5,
|
||||||
|
"via_diameter": 0.8,
|
||||||
|
"via_drill": 0.4,
|
||||||
|
"wire_width": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bus_width": 12,
|
||||||
|
"clearance": 0.2,
|
||||||
|
"diff_pair_gap": 0.25,
|
||||||
|
"diff_pair_via_gap": 0.25,
|
||||||
|
"diff_pair_width": 0.2,
|
||||||
|
"line_style": 0,
|
||||||
|
"microvia_diameter": 0.3,
|
||||||
|
"microvia_drill": 0.1,
|
||||||
|
"name": "Signal",
|
||||||
|
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"track_width": 0.3,
|
||||||
|
"via_diameter": 0.8,
|
||||||
|
"via_drill": 0.4,
|
||||||
|
"wire_width": 6
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"meta": {
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"net_colors": null,
|
||||||
|
"netclass_assignments": null,
|
||||||
|
"netclass_patterns": [
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Buzzer I{slash}O"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Power",
|
||||||
|
"pattern": "GND"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/SCK_Wire"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/SDA_Wire"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Power",
|
||||||
|
"pattern": "+5V"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Data"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Data3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Data2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Button 4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Data1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Button 2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Button 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Button 3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Buzzer I{slash}O 2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"netclass": "Signal",
|
||||||
|
"pattern": "/Buzzer I{slash}O 1"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"pcbnew": {
|
||||||
|
"last_paths": {
|
||||||
|
"gencad": "",
|
||||||
|
"idf": "",
|
||||||
|
"netlist": "",
|
||||||
|
"plot": "Gerber/",
|
||||||
|
"pos_files": "",
|
||||||
|
"specctra_dsn": "",
|
||||||
|
"step": "",
|
||||||
|
"svg": "",
|
||||||
|
"vrml": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": ""
|
||||||
|
},
|
||||||
|
"schematic": {
|
||||||
|
"annotate_start_num": 0,
|
||||||
|
"bom_fmt_presets": [],
|
||||||
|
"bom_fmt_settings": {
|
||||||
|
"field_delimiter": ",",
|
||||||
|
"keep_line_breaks": false,
|
||||||
|
"keep_tabs": false,
|
||||||
|
"name": "CSV",
|
||||||
|
"ref_delimiter": ",",
|
||||||
|
"ref_range_delimiter": "",
|
||||||
|
"string_delimiter": "\""
|
||||||
|
},
|
||||||
|
"bom_presets": [],
|
||||||
|
"bom_settings": {
|
||||||
|
"exclude_dnp": false,
|
||||||
|
"fields_ordered": [
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Reference",
|
||||||
|
"name": "Reference",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": true,
|
||||||
|
"label": "Value",
|
||||||
|
"name": "Value",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Datasheet",
|
||||||
|
"name": "Datasheet",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Footprint",
|
||||||
|
"name": "Footprint",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Qty",
|
||||||
|
"name": "${QUANTITY}",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": true,
|
||||||
|
"label": "DNP",
|
||||||
|
"name": "${DNP}",
|
||||||
|
"show": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "#",
|
||||||
|
"name": "${ITEM_NUMBER}",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Availability",
|
||||||
|
"name": "Availability",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Check_prices",
|
||||||
|
"name": "Check_prices",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Description_1",
|
||||||
|
"name": "Description_1",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "MANUFACTURER",
|
||||||
|
"name": "MANUFACTURER",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "MAXIMUM_PACKAGE_HEIGHT",
|
||||||
|
"name": "MAXIMUM_PACKAGE_HEIGHT",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "MF",
|
||||||
|
"name": "MF",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "MP",
|
||||||
|
"name": "MP",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "PARTREV",
|
||||||
|
"name": "PARTREV",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Package",
|
||||||
|
"name": "Package",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Price",
|
||||||
|
"name": "Price",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "SNAPEDA_PN",
|
||||||
|
"name": "SNAPEDA_PN",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "STANDARD",
|
||||||
|
"name": "STANDARD",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "SnapEDA_Link",
|
||||||
|
"name": "SnapEDA_Link",
|
||||||
|
"show": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"group_by": false,
|
||||||
|
"label": "Description",
|
||||||
|
"name": "Description",
|
||||||
|
"show": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"filter_string": "",
|
||||||
|
"group_symbols": true,
|
||||||
|
"name": "",
|
||||||
|
"sort_asc": true,
|
||||||
|
"sort_field": "Reference"
|
||||||
|
},
|
||||||
|
"connection_grid_size": 50.0,
|
||||||
|
"drawing": {
|
||||||
|
"dashed_lines_dash_length_ratio": 12.0,
|
||||||
|
"dashed_lines_gap_length_ratio": 3.0,
|
||||||
|
"default_line_thickness": 6.0,
|
||||||
|
"default_text_size": 50.0,
|
||||||
|
"field_names": [],
|
||||||
|
"intersheets_ref_own_page": false,
|
||||||
|
"intersheets_ref_prefix": "",
|
||||||
|
"intersheets_ref_short": false,
|
||||||
|
"intersheets_ref_show": false,
|
||||||
|
"intersheets_ref_suffix": "",
|
||||||
|
"junction_size_choice": 3,
|
||||||
|
"label_size_ratio": 0.375,
|
||||||
|
"operating_point_overlay_i_precision": 3,
|
||||||
|
"operating_point_overlay_i_range": "~A",
|
||||||
|
"operating_point_overlay_v_precision": 3,
|
||||||
|
"operating_point_overlay_v_range": "~V",
|
||||||
|
"overbar_offset_ratio": 1.23,
|
||||||
|
"pin_symbol_size": 25.0,
|
||||||
|
"text_offset_ratio": 0.15
|
||||||
|
},
|
||||||
|
"legacy_lib_dir": "",
|
||||||
|
"legacy_lib_list": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_format_name": "",
|
||||||
|
"ngspice": {
|
||||||
|
"fix_include_paths": true,
|
||||||
|
"fix_passive_vals": false,
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"model_mode": 0,
|
||||||
|
"workbook_filename": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": "",
|
||||||
|
"plot_directory": "",
|
||||||
|
"spice_adjust_passive_values": false,
|
||||||
|
"spice_current_sheet_as_root": false,
|
||||||
|
"spice_external_command": "spice \"%I\"",
|
||||||
|
"spice_model_current_sheet_as_root": true,
|
||||||
|
"spice_save_all_currents": false,
|
||||||
|
"spice_save_all_dissipations": false,
|
||||||
|
"spice_save_all_voltages": false,
|
||||||
|
"subpart_first_id": 65,
|
||||||
|
"subpart_id_separator": 0
|
||||||
|
},
|
||||||
|
"sheets": [
|
||||||
|
[
|
||||||
|
"1244303f-706e-4466-bcc0-70ea34d1f4ad",
|
||||||
|
"Root"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"text_variables": {}
|
||||||
|
}
|
4398
PCB/kam_alarm.kicad_sch
Executable file
4398
PCB/kam_alarm.kicad_sch
Executable file
File diff suppressed because it is too large
Load Diff
146
PCB/oled_screen.bak
Executable file
146
PCB/oled_screen.bak
Executable file
@ -0,0 +1,146 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "OLED_screen"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 12.7 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "OLED_screen_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start -20.32 6.35)
|
||||||
|
(end 19.05 -6.35)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "0.91\" OLED I2C Screen"
|
||||||
|
(at -1.27 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -22.86 -3.81 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -22.86 -1.27 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "Vcc"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -22.86 1.27 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "SCK"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -22.86 3.81 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "SDA"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
146
PCB/oled_screen.kicad_sym
Executable file
146
PCB/oled_screen.kicad_sym
Executable file
@ -0,0 +1,146 @@
|
|||||||
|
(kicad_symbol_lib
|
||||||
|
(version 20231120)
|
||||||
|
(generator "kicad_symbol_editor")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(symbol "OLED_screen"
|
||||||
|
(exclude_from_sim no)
|
||||||
|
(in_bom yes)
|
||||||
|
(on_board yes)
|
||||||
|
(property "Reference" "U"
|
||||||
|
(at 0 3.81 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Value" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Footprint" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Datasheet" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Description" ""
|
||||||
|
(at -20.32 -2.54 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(hide yes)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(symbol "OLED_screen_1_1"
|
||||||
|
(rectangle
|
||||||
|
(start -20.32 6.35)
|
||||||
|
(end 19.05 -6.35)
|
||||||
|
(stroke
|
||||||
|
(width 0)
|
||||||
|
(type default)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(type background)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(text "0.91\" OLED I2C Screen"
|
||||||
|
(at -1.27 0 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -22.86 -3.81 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "GND"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "1"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin input line
|
||||||
|
(at -22.86 -1.27 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "Vcc"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "2"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -22.86 1.27 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "SCK"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "3"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(pin output line
|
||||||
|
(at -22.86 3.81 0)
|
||||||
|
(length 2.54)
|
||||||
|
(name "SDA"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(number "4"
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
7
PCB/sym-lib-table
Executable file
7
PCB/sym-lib-table
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
(sym_lib_table
|
||||||
|
(version 7)
|
||||||
|
(lib (name "oled_screen")(type "KiCad")(uri "${KIPRJMOD}/oled_screen.kicad_sym")(options "")(descr ""))
|
||||||
|
(lib (name "buzzer")(type "KiCad")(uri "${KIPRJMOD}/buzzer.kicad_sym")(options "")(descr ""))
|
||||||
|
(lib (name "button")(type "KiCad")(uri "${KIPRJMOD}/button.kicad_sym")(options "")(descr ""))
|
||||||
|
(lib (name "ESP32-DEVKITC-32D")(type "KiCad")(uri "${KIPRJMOD}/ESP32-DEVKITC-32D/ESP32-DEVKITC-32D.kicad_sym")(options "")(descr ""))
|
||||||
|
)
|
Loading…
Reference in New Issue
Block a user