added files
This commit is contained in:
parent
da94300b3b
commit
ca75fb8965
BIN
3D/Button.stl
Executable file
BIN
3D/Button.stl
Executable file
Binary file not shown.
BIN
3D/Clicker Case Bottom.stl
Executable file
BIN
3D/Clicker Case Bottom.stl
Executable file
Binary file not shown.
BIN
3D/Clicker Case Top.stl
Executable file
BIN
3D/Clicker Case Top.stl
Executable file
Binary file not shown.
BIN
3D/Clicker.f3d
Executable file
BIN
3D/Clicker.f3d
Executable file
Binary file not shown.
8
ESP32 Code/clicker/.theia/launch.json
Normal file
8
ESP32 Code/clicker/.theia/launch.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
|
||||
]
|
||||
}
|
632
ESP32 Code/clicker/clicker.ino
Executable file
632
ESP32 Code/clicker/clicker.ino
Executable file
@ -0,0 +1,632 @@
|
||||
#include <Arduino.h>
|
||||
#include <WiFi.h>
|
||||
#include <ESPAsyncWebServer.h>
|
||||
#include <Preferences.h>
|
||||
#include <HTTPClient.h>
|
||||
#include <Adafruit_NeoPixel.h>
|
||||
#include <BleKeyboard.h>
|
||||
#include <Battery.h>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Battery battery(3000, 4200, 36, 12);
|
||||
|
||||
BleKeyboard bleKeyboard("ESP Clicker");
|
||||
Preferences prefs;
|
||||
WiFiClient client;
|
||||
HTTPClient http;
|
||||
|
||||
AsyncWebServer server(80);
|
||||
Adafruit_NeoPixel led(1, 13, NEO_GRB + NEO_KHZ800);
|
||||
|
||||
|
||||
String ssid, pass, ip_address, layer, name, serverPath;
|
||||
char ssid_char[20];
|
||||
char pass_char[20];
|
||||
float voltage;
|
||||
bool connected = false;
|
||||
bool blemode;
|
||||
unsigned long target_time;
|
||||
int lazer_button;
|
||||
String index_html;
|
||||
int httpResponseCode = 0;
|
||||
|
||||
|
||||
int LAZER = 15;
|
||||
int BUTTON0 = 12;
|
||||
int BUTTON1 = 14;
|
||||
int BUTTON2 = 27;
|
||||
int BUTTON3 = 26;
|
||||
int BUTTON4 = 25;
|
||||
int BUTTON5 = 33;
|
||||
int BUTTON6 = 32;
|
||||
int BUTTON7 = 35;
|
||||
int BUTTON8 = 34;
|
||||
int BUTTON9 = 39;
|
||||
|
||||
// Button Array
|
||||
int button[10] = { BUTTON0, BUTTON1, BUTTON2, BUTTON3, BUTTON4, BUTTON5, BUTTON6, BUTTON7, BUTTON8, BUTTON9 };
|
||||
|
||||
|
||||
|
||||
// HTML web page to handle 3 input fields (input1, input2, input3)
|
||||
const char index_html1[] PROGMEM = R"rawliteral(
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>Clicker</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<style>
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
margin: 0;
|
||||
padding: 20px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
min-height: 100vh;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
|
||||
#container {
|
||||
text-align: center;
|
||||
background-color: white;
|
||||
padding: 20px;
|
||||
border-radius: 10px;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
form {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
input[type="text"],
|
||||
input[type="password"] {
|
||||
width: 100%;
|
||||
max-width: 200px;
|
||||
padding: 5px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
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="container">
|
||||
<h1>ESP Clicker - )rawliteral";
|
||||
|
||||
const char index_html2[] PROGMEM = R"rawliteral(</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 Companion IP address</h2>
|
||||
<form action="/" id="form_ip_address">
|
||||
<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>
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<h2>Set Companion Layer</h2>
|
||||
<form action="/" id="form_Companion_layer">
|
||||
<input type="number" minlength="1" maxlength="2" size="1" id="layer" name="layer" placeholder="xx" autocomplete="off">
|
||||
<br>
|
||||
<input type="submit" value="Update Layer" id="submit_layer">
|
||||
</form>
|
||||
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<h2>Set Lazer Button</h2>
|
||||
<form action="/" id="lazer">
|
||||
<select id="lazer_dropdown" name="lazer">
|
||||
<option value="-2">-- Select One --</option>
|
||||
<option value="0">1</option>
|
||||
<option value="1">2</option>
|
||||
<option value="2">3</option>
|
||||
<option value="3">4</option>
|
||||
<option value="4">5</option>
|
||||
<option value="5">6</option>
|
||||
<option value="6">7</option>
|
||||
<option value="7">8</option>
|
||||
<option value="8">9</option>
|
||||
<option value="9">10</option>
|
||||
<option value="-1">Disable</option>
|
||||
</select>
|
||||
<br>
|
||||
<br>
|
||||
<input type="submit" value="Update Lazer Button" id="submit_lazer">
|
||||
</form>
|
||||
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<h2>Set Device Name</h2>
|
||||
<form action="/" id="form_name">
|
||||
<input type="text" name="name" id="name">
|
||||
<br>
|
||||
<input type="submit" value="Update Name" id="submit_name">
|
||||
</form>
|
||||
<br>
|
||||
<br>
|
||||
<button onclick="window.location.href='/?voltageget=1';">Get Current Battery Voltage</button>
|
||||
|
||||
|
||||
<script>
|
||||
|
||||
const lazer_form = document.getElementById('lazer');
|
||||
const lazer_selector = document.getElementById('lazer_dropdown');
|
||||
|
||||
lazer_form.addEventListener('submit', function(event) {
|
||||
// Check if the default option is selected
|
||||
if (lazer_selector.value == '-2') {
|
||||
// If it is, prevent the default submission behavior and show a message
|
||||
event.preventDefault();
|
||||
alert("Please select an option other than '-- Select One --'");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
document.getElementById('submit_wifi').disabled = true;
|
||||
document.getElementById('submit_ip').disabled = true;
|
||||
document.getElementById('submit_layer').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;
|
||||
}
|
||||
|
||||
if (document.getElementById("layer").value == "") {
|
||||
document.getElementById('submit_layer').disabled = true;
|
||||
} else {
|
||||
document.getElementById('submit_layer').disabled = false;
|
||||
}
|
||||
|
||||
if (document.getElementById("name").value == "") {
|
||||
document.getElementById('submit_name').disabled = true;
|
||||
} else {
|
||||
document.getElementById('submit_name').disabled = false;
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
)rawliteral";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// the setup function runs once when you press reset or power the board
|
||||
void setup() {
|
||||
// Initialize Memory
|
||||
prefs.begin("clicker");
|
||||
|
||||
// Battery
|
||||
battery.begin(3300, 2.24);
|
||||
|
||||
|
||||
//Get Device Name
|
||||
name = prefs.getString("NAME", name);
|
||||
|
||||
// Initialize Serial
|
||||
Serial.begin(9600);
|
||||
|
||||
// Initialize NeoPixel strip object (REQUIRED)
|
||||
led.begin();
|
||||
|
||||
// Setup pins
|
||||
pinMode(LAZER, OUTPUT);
|
||||
|
||||
pinMode(BUTTON0, INPUT);
|
||||
pinMode(BUTTON1, INPUT);
|
||||
pinMode(BUTTON2, INPUT);
|
||||
pinMode(BUTTON3, INPUT);
|
||||
pinMode(BUTTON0, INPUT);
|
||||
pinMode(BUTTON1, INPUT);
|
||||
pinMode(BUTTON2, INPUT);
|
||||
pinMode(BUTTON3, INPUT);
|
||||
pinMode(BUTTON4, INPUT);
|
||||
pinMode(BUTTON5, INPUT);
|
||||
pinMode(BUTTON6, INPUT);
|
||||
pinMode(BUTTON7, INPUT);
|
||||
pinMode(BUTTON8, INPUT);
|
||||
pinMode(BUTTON9, INPUT);
|
||||
|
||||
|
||||
//Set up Lazer
|
||||
lazer_button = prefs.getInt("LAZER_BUTTON");
|
||||
digitalWrite(LAZER, LOW);
|
||||
|
||||
// Check for BLE Mode
|
||||
blemode = prefs.getBool("BLEMODE");
|
||||
if (digitalRead(BUTTON8) && digitalRead(BUTTON9)) {
|
||||
prefs.putBool("BLEMODE", !blemode);
|
||||
blemode = !blemode;
|
||||
}
|
||||
if (blemode) {
|
||||
bleclicker();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// Initilize WIFI
|
||||
WiFi.mode(WIFI_STA);
|
||||
ssid = prefs.getString("SSID");
|
||||
pass = prefs.getString("PASS");
|
||||
ssid.toCharArray(ssid_char, 20);
|
||||
pass.toCharArray(pass_char, 20);
|
||||
WiFi.begin(ssid_char, pass_char);
|
||||
|
||||
target_time = millis() + 10000;
|
||||
|
||||
while (millis() < target_time && WiFi.status() != WL_CONNECTED) {
|
||||
led.setPixelColor(0, led.Color(0, 100, 0));
|
||||
led.show();
|
||||
delay(1000);
|
||||
led.setPixelColor(0, led.Color(0, 0, 0));
|
||||
led.show();
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
if (WiFi.status() != WL_CONNECTED) {
|
||||
WiFi.mode(WIFI_MODE_AP);
|
||||
WiFi.softAP("clicker", "clcob5364");
|
||||
WiFi.softAPIP();
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Get Companion Info
|
||||
layer = prefs.getString("LAYER");
|
||||
ip_address = prefs.getString("IPADDRESS");
|
||||
|
||||
// Send web page with input fields to client
|
||||
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {
|
||||
if (request->hasParam("pass") && request->hasParam("ssid")) {
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
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 Clicker</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("ipaddress")) {
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
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 Clicker</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("layer")) {
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
layer = request->getParam("layer")->value();
|
||||
prefs.putString("LAYER", layer);
|
||||
|
||||
} else if (request->hasParam("layerget")) {
|
||||
layer = prefs.getString("LAYER");
|
||||
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Clicker</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current IP Settings</h1><hr>Remote Companion Layer: \"" + layer + "\"<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||
|
||||
} else if (request->hasParam("voltageget")) {
|
||||
voltage = battery.voltage();
|
||||
voltage = voltage / 1000;
|
||||
|
||||
Serial.println(voltage);
|
||||
request->send(200, "text/html", "<!DOCTYPE HTML><html><head><title>ESP Clicker</title><meta name='viewport' content='width=device-width, initial-scale=1'></head><body><h1>Current voltage</h1><hr>\"" + String(voltage) + "\" Volts <br/>" + String(battery.level()) + "% Battery Percentage<br/><br/><br/><hr><button onclick=\"window.location.href='/';\">Back</button></body></html>");
|
||||
|
||||
} else if (request->hasParam("name")) {
|
||||
name = request->getParam("name")->value();
|
||||
index_html = index_html1 + name + index_html2;
|
||||
prefs.putString("NAME", name);
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
|
||||
} else if (request->hasParam("lazer")) {
|
||||
lazer_button = request->getParam("lazer")->value().toInt();
|
||||
prefs.putInt("LAZER_BUTTON", lazer_button);
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
|
||||
} else {
|
||||
request->send_P(200, "text/html", index_html.c_str());
|
||||
}
|
||||
index_html = index_html1 + name + index_html2;
|
||||
});
|
||||
|
||||
server.begin();
|
||||
}
|
||||
|
||||
|
||||
|
||||
// the loop function runs over and over again forever
|
||||
void loop() {
|
||||
|
||||
lazer();
|
||||
// Read port 0
|
||||
if (digitalRead(BUTTON0)) {
|
||||
Serial.println("Button 0");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/1/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 1
|
||||
if (digitalRead(BUTTON1)) {
|
||||
Serial.println("Button 1");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/2/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 2
|
||||
if (digitalRead(BUTTON2)) {
|
||||
Serial.println("Button 2");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/3/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 3
|
||||
if (digitalRead(BUTTON3)) {
|
||||
Serial.println("Button 3");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/4/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 4
|
||||
if (digitalRead(BUTTON4)) {
|
||||
Serial.println("Button 4");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/5/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 5
|
||||
if (digitalRead(BUTTON5)) {
|
||||
Serial.println("Button 5");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/6/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 6
|
||||
if (digitalRead(BUTTON6)) {
|
||||
Serial.println("Button 6");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/0/7/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 7
|
||||
if (digitalRead(BUTTON7)) {
|
||||
Serial.println("Button 7");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/1/1/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 8
|
||||
if (digitalRead(BUTTON8)) {
|
||||
Serial.println("Button 8");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/1/2/press");
|
||||
waitfor();
|
||||
}
|
||||
// Read port 9
|
||||
if (digitalRead(BUTTON9)) {
|
||||
Serial.println("Button 9");
|
||||
httpResponseCode = POSTRequest("http://" + ip_address + ":8000/api/location/" + layer + "/1/3/press");
|
||||
waitfor();
|
||||
}
|
||||
|
||||
voltage = battery.voltage();
|
||||
voltage = voltage / 1000;
|
||||
|
||||
lazer();
|
||||
|
||||
if (voltage < 3.68) {
|
||||
led.setPixelColor(0, led.Color(1, 0, 0));
|
||||
} else if (!connected) {
|
||||
led.setPixelColor(0, led.Color(1, 1, 1));
|
||||
} else {
|
||||
led.setPixelColor(0, led.Color(0, 1, 0));
|
||||
}
|
||||
led.show();
|
||||
}
|
||||
|
||||
|
||||
|
||||
void waitfor() {
|
||||
while (digitalRead(BUTTON0) || digitalRead(BUTTON1) || digitalRead(BUTTON2) || digitalRead(BUTTON3) || digitalRead(BUTTON4) || digitalRead(BUTTON5) || digitalRead(BUTTON6) || digitalRead(BUTTON7) || digitalRead(BUTTON8) || digitalRead(BUTTON9)) {
|
||||
led.setPixelColor(0, led.Color(0, 0, 0));
|
||||
led.show();
|
||||
}
|
||||
led.show();
|
||||
|
||||
if (httpResponseCode == 200) {
|
||||
connected = true;
|
||||
Serial.println(httpResponseCode);
|
||||
} else {
|
||||
connected = false;
|
||||
Serial.println(httpResponseCode);
|
||||
}
|
||||
httpResponseCode = -1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void lazer() {
|
||||
if (lazer_button != -1) {
|
||||
if (digitalRead(button[lazer_button])) {
|
||||
led.setPixelColor(0, led.Color(255, 0, 0));
|
||||
led.show();
|
||||
digitalWrite(LAZER, HIGH);
|
||||
while (digitalRead(button[lazer_button]))
|
||||
;
|
||||
digitalWrite(LAZER, LOW);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void bleclicker() {
|
||||
bleKeyboard.setName("ESP Clicker");
|
||||
bleKeyboard.begin();
|
||||
|
||||
bleKeyboard.setBatteryLevel(battery.level());
|
||||
|
||||
|
||||
|
||||
while (true) {
|
||||
while (bleKeyboard.isConnected()) {
|
||||
// Set LED Color
|
||||
led.setPixelColor(0, led.Color(0, 0, 1));
|
||||
led.show();
|
||||
|
||||
if (millis() > target_time) {
|
||||
bleKeyboard.setBatteryLevel(battery.level());
|
||||
Serial.println("battery update");
|
||||
target_time = millis() + 60000;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Read port 0
|
||||
if (digitalRead(BUTTON0)) {
|
||||
Serial.println("Button 0");
|
||||
bleKeyboard.write(KEY_LEFT_ARROW);
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 1
|
||||
if (digitalRead(BUTTON1)) {
|
||||
Serial.println("Button 1");
|
||||
bleKeyboard.write(KEY_RIGHT_ARROW);
|
||||
waitfor();
|
||||
}
|
||||
|
||||
// Read port 2
|
||||
if (digitalRead(BUTTON8)) {
|
||||
Serial.println("Lazer");
|
||||
led.setPixelColor(0, led.Color(255, 0, 0));
|
||||
led.show();
|
||||
digitalWrite(LAZER, HIGH);
|
||||
while (digitalRead(BUTTON8))
|
||||
;
|
||||
digitalWrite(LAZER, LOW);
|
||||
}
|
||||
}
|
||||
|
||||
// Wait for a Second
|
||||
led.setPixelColor(0, led.Color(0, 0, 100));
|
||||
led.show();
|
||||
delay(1000);
|
||||
led.setPixelColor(0, led.Color(0, 0, 0));
|
||||
led.show();
|
||||
delay(1000);
|
||||
}
|
||||
}
|
70
PCB/clicker/SK12D07VG4.kicad_sym
Normal file
70
PCB/clicker/SK12D07VG4.kicad_sym
Normal file
@ -0,0 +1,70 @@
|
||||
|
||||
(kicad_symbol_lib (version 20211014) (generator kicad_symbol_editor)
|
||||
(symbol "SK12D07VG4" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
|
||||
(property "Reference" "U" (id 0) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom))
|
||||
)
|
||||
(property "Value" "SK12D07VG4" (id 1) (at 0 0.0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom))
|
||||
)
|
||||
(property "Footprint" "SK12D07VG4:SK12D07VG4" (id 2) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "MF" "C&K" (id 4) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Description" "\nSwitch Slide ON ON SPDT Side Slide 0.3A 30VDC PC Pins Bracket Mount/Through Hole Bulk\n" (id 5) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Package" "None" (id 6) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Price" "None" (id 7) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "SnapEDA_Link" "https://www.snapeda.com/parts/SK12D07VG4/C%2526K/view-part/?ref=snap" (id 8) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "MP" "SK12D07VG4" (id 9) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Availability" "Not in stock" (id 10) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Check_prices" "https://www.snapeda.com/parts/SK12D07VG4/C%2526K/view-part/?ref=eda" (id 11) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(symbol "SK12D07VG4_0_0"
|
||||
(polyline
|
||||
(pts (xy 0.0 0.0) (xy -1.27 3.048)) (stroke (width 0.254))
|
||||
)
|
||||
(rectangle (start -5.08 -2.54) (end 5.08 5.08)
|
||||
(stroke (width 0.254)) (fill (type background))
|
||||
)
|
||||
(pin bidirectional line (at 0.0 -5.08 90.0) (length 5.08)
|
||||
(name "COM"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "COM"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
(pin bidirectional line (at -2.54 7.62 270.0) (length 5.08)
|
||||
(name "1"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "1"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
(pin bidirectional line (at 2.54 7.62 270.0) (length 5.08)
|
||||
(name "2"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "2"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
165
PCB/clicker/WS2812B.kicad_sym
Normal file
165
PCB/clicker/WS2812B.kicad_sym
Normal file
@ -0,0 +1,165 @@
|
||||
|
||||
(kicad_symbol_lib (version 20211014) (generator kicad_symbol_editor)
|
||||
(symbol "WS2812B" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
|
||||
(property "Reference" "LED" (id 0) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom))
|
||||
)
|
||||
(property "Value" "WS2812B" (id 1) (at 0 0.0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom))
|
||||
)
|
||||
(property "MF" "Worldsemi" (id 4) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Description" "\nIntelligent control LED integrated light source\n" (id 5) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Package" "None" (id 6) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Price" "None" (id 7) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "SnapEDA_Link" "https://www.snapeda.com/parts/WS2812B/Worldsemi/view-part/?ref=snap" (id 8) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "MP" "WS2812B" (id 9) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Availability" "Not in stock" (id 10) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(property "Check_prices" "https://www.snapeda.com/parts/WS2812B/Worldsemi/view-part/?ref=eda" (id 11) (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom) hide)
|
||||
)
|
||||
(symbol "WS2812B_0_0"
|
||||
(polyline
|
||||
(pts (xy -6.35 5.08) (xy -5.08 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -5.08 2.54) (xy -6.35 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 2.54) (xy 3.81 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.81 5.08) (xy 2.54 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -6.35 2.54) (xy -5.08 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 2.54) (xy 3.81 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 2.54) (xy -1.27 1.27)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 7.62) (xy -5.08 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -5.08 7.62) (xy -5.08 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 5.08) (xy -1.27 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 5.08) (xy 2.54 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 7.62) (xy -1.27 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -5.08 5.08) (xy -3.81 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -5.08 2.54) (xy -3.81 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.27 5.08) (xy 2.54 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.27 5.08) (xy 2.54 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -5.08 2.54) (xy -5.08 1.27)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 1.27) (xy -1.27 1.27)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 1.27) (xy -5.08 1.27)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 0.0 -4.064) (xy 0.0 -5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(text "WS2812B" (at -4.064 8.382 0)
|
||||
(effects (font (size 1.27 1.27)) (justify bottom left))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -3.81 2.54) (xy -5.08 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -2.54 2.54) (xy -1.27 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 2.54) (xy 0.0 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.27 2.54) (xy -2.54 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -2.54 5.08) (xy 0.0 5.08)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 0.0 5.08) (xy -1.27 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 2.54) (xy 1.27 2.54)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 2.54) (xy 2.54 1.27)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 5.08 10.16) (xy 5.08 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.54 7.62) (xy 5.08 7.62)) (stroke (width 0.254))
|
||||
)
|
||||
(rectangle (start -7.62 -5.08) (end 7.62 10.16)
|
||||
(stroke (width 0.254)) (fill (type background))
|
||||
)
|
||||
(pin power_in line (at 5.08 15.24 270.0) (length 5.08)
|
||||
(name "VDD"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "1-VDD"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
(pin input line (at -12.7 -2.54 0) (length 5.08)
|
||||
(name "DI"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "4-DIN"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
(pin power_in line (at 0.0 -10.16 90.0) (length 5.08)
|
||||
(name "GND"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "3-GND"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
(pin output line (at 12.7 -2.54 180.0) (length 5.08)
|
||||
(name "DO"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
(number "2-DOUT"
|
||||
(effects (font (size 1.016 1.016)))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
146
PCB/clicker/button.kicad_sym
Executable file
146
PCB/clicker/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/clicker/button.pretty/TWS4417-250AT.kicad_mod
Normal file
149
PCB/clicker/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")
|
||||
)
|
||||
)
|
BIN
PCB/clicker/clicker-backups/clicker-2024-10-06_165216.zip
Normal file
BIN
PCB/clicker/clicker-backups/clicker-2024-10-06_165216.zip
Normal file
Binary file not shown.
BIN
PCB/clicker/clicker-gerber/clicker-gerberV1.1.zip
Normal file
BIN
PCB/clicker/clicker-gerber/clicker-gerberV1.1.zip
Normal file
Binary file not shown.
11665
PCB/clicker/clicker.kicad_pcb
Normal file
11665
PCB/clicker/clicker.kicad_pcb
Normal file
File diff suppressed because it is too large
Load Diff
85
PCB/clicker/clicker.kicad_prl
Normal file
85
PCB/clicker/clicker.kicad_prl
Normal file
@ -0,0 +1,85 @@
|
||||
{
|
||||
"board": {
|
||||
"active_layer": 0,
|
||||
"active_layer_preset": "All Layers",
|
||||
"auto_track_width": true,
|
||||
"hidden_netclasses": [],
|
||||
"hidden_nets": [
|
||||
""
|
||||
],
|
||||
"high_contrast_mode": 0,
|
||||
"net_color_mode": 1,
|
||||
"opacity": {
|
||||
"images": 0.6,
|
||||
"pads": 1.0,
|
||||
"tracks": 1.0,
|
||||
"vias": 1.0,
|
||||
"zones": 0.6
|
||||
},
|
||||
"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": "clicker.kicad_prl",
|
||||
"version": 3
|
||||
},
|
||||
"project": {
|
||||
"files": []
|
||||
}
|
||||
}
|
693
PCB/clicker/clicker.kicad_pro
Normal file
693
PCB/clicker/clicker.kicad_pro
Normal file
@ -0,0 +1,693 @@
|
||||
{
|
||||
"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": [],
|
||||
"drc_exclusions": [
|
||||
"starved_thermal|64890000|124490000|1448bc55-085a-4bea-8bf9-a719b4e4dbc4|cb5c4da2-a727-48ef-9d10-ace6ebc73f87|B.Cu"
|
||||
],
|
||||
"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",
|
||||
"holes_co_located": "warning",
|
||||
"invalid_outline": "error",
|
||||
"isolated_copper": "ignore",
|
||||
"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": "ignore",
|
||||
"silk_over_copper": "ignore",
|
||||
"silk_overlap": "ignore",
|
||||
"skew_out_of_range": "error",
|
||||
"solder_mask_bridge": "error",
|
||||
"starved_thermal": "error",
|
||||
"text_height": "ignore",
|
||||
"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.5,
|
||||
"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": [],
|
||||
"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": [],
|
||||
"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_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": "clicker.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": 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": "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": "Power",
|
||||
"pattern": "GND"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B1"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B2"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B3"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B4"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B5"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B6"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B7"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B8"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B9"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "B10"
|
||||
},
|
||||
{
|
||||
"netclass": "Power",
|
||||
"pattern": "+3.3V"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "RGB_D"
|
||||
},
|
||||
{
|
||||
"netclass": "Power",
|
||||
"pattern": "/lazer power"
|
||||
},
|
||||
{
|
||||
"netclass": "Power",
|
||||
"pattern": "/battery_gnd"
|
||||
},
|
||||
{
|
||||
"netclass": "Power",
|
||||
"pattern": "/BtoSwitch"
|
||||
},
|
||||
{
|
||||
"netclass": "Power",
|
||||
"pattern": "/Switch_gnd"
|
||||
},
|
||||
{
|
||||
"netclass": "Signal",
|
||||
"pattern": "battery_voltage"
|
||||
}
|
||||
]
|
||||
},
|
||||
"pcbnew": {
|
||||
"last_paths": {
|
||||
"gencad": "",
|
||||
"idf": "",
|
||||
"netlist": "",
|
||||
"plot": "clicker-gerber/",
|
||||
"pos_files": "",
|
||||
"specctra_dsn": "",
|
||||
"step": "",
|
||||
"svg": "",
|
||||
"vrml": ""
|
||||
},
|
||||
"page_layout_descr_file": ""
|
||||
},
|
||||
"schematic": {
|
||||
"annotate_start_num": 0,
|
||||
"bom_export_filename": "",
|
||||
"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
|
||||
}
|
||||
],
|
||||
"filter_string": "",
|
||||
"group_symbols": true,
|
||||
"name": "Grouped By Value",
|
||||
"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": "",
|
||||
"page_layout_descr_file": "",
|
||||
"plot_directory": "",
|
||||
"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": [
|
||||
[
|
||||
"f0b422ce-a8ea-4f89-9af1-97a85de89c8e",
|
||||
"Root"
|
||||
]
|
||||
],
|
||||
"text_variables": {}
|
||||
}
|
7283
PCB/clicker/clicker.kicad_sch
Normal file
7283
PCB/clicker/clicker.kicad_sch
Normal file
File diff suppressed because it is too large
Load Diff
334
PCB/clicker/clicker.pretty/ESP32_withBMS.kicad_mod
Normal file
334
PCB/clicker/clicker.pretty/ESP32_withBMS.kicad_mod
Normal file
@ -0,0 +1,334 @@
|
||||
(footprint "ESP32_withBMS"
|
||||
(version 20240108)
|
||||
(generator "pcbnew")
|
||||
(generator_version "8.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 0 -0.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c922f88a-cc74-46c5-bfa7-1df3ee8c2197")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "ESP32_withBMS"
|
||||
(at 0 1 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "231f97ba-c28e-4311-b8e1-21f8421c4047")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "307abd3c-2c61-4c99-b0ea-de79d33a30c7")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "1fd3802e-5301-49ef-88c8-5b773f999203")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "bdc6db5b-e736-4111-8d19-95f43b152ba7")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_rect
|
||||
(start -12.5 -25)
|
||||
(end 12.5 25)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type default)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "852471d6-c540-480e-a5ad-23787e6c35c3")
|
||||
)
|
||||
(fp_rect
|
||||
(start 1.27 20.32)
|
||||
(end 8.89 24.765)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type default)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bdb2d8cb-7580-4a03-8e38-53e0cd91b698")
|
||||
)
|
||||
(fp_circle
|
||||
(center -9.525 -22.225)
|
||||
(end -7.62 -22.225)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c30f8826-4f53-4bc8-b536-a8150d1792ee")
|
||||
)
|
||||
(fp_circle
|
||||
(center 9.525 16.51)
|
||||
(end 11.43 16.51)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type default)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4f757e4d-3664-4673-af8c-24505920fd7a")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 2.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "8a63733e-1045-4a46-adb6-041f317e65db")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "0" thru_hole circle
|
||||
(at 11.43 5.715)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "cf08ce45-ddbb-49f9-8c89-8e0e0e6bd105")
|
||||
)
|
||||
(pad "2" thru_hole circle
|
||||
(at 11.43 8.255)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "358172a5-1cc3-499d-8209-29efd666535e")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at 11.43 3.175)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "86b67c18-810e-43f4-937d-b79fd6153a18")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at 11.43 -4.445)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ff0fccb0-9082-48a6-b19a-7a4025cab1a3")
|
||||
)
|
||||
(pad "12" thru_hole circle
|
||||
(at -11.43 10.795)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "47903413-cfac-4f6a-9996-cb48d06837aa")
|
||||
)
|
||||
(pad "13" thru_hole circle
|
||||
(at 11.43 13.335)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f46d8ce3-2ea7-43e5-a3ab-89dc205dd129")
|
||||
)
|
||||
(pad "14" thru_hole circle
|
||||
(at -11.431943 8.385877)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ead982eb-4485-434e-a4a6-394274cc002d")
|
||||
)
|
||||
(pad "15" thru_hole circle
|
||||
(at 11.43 10.795)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8186ae38-2a13-4839-a204-674686e33a06")
|
||||
)
|
||||
(pad "18" thru_hole circle
|
||||
(at 11.43 -6.985)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "1c49071e-6770-4578-9173-a588c5fffc15")
|
||||
)
|
||||
(pad "19" thru_hole circle
|
||||
(at 11.43 -12.065)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f514e035-2d17-489c-8f07-a33056847bfd")
|
||||
)
|
||||
(pad "23" thru_hole circle
|
||||
(at 11.43 -9.525)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "e0242565-0ccb-4cf1-9551-9f79bfa2d7f1")
|
||||
)
|
||||
(pad "25" thru_hole circle
|
||||
(at -11.43 0.635)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ce32f624-3c73-4859-8826-62bd0cde3d2e")
|
||||
)
|
||||
(pad "26" thru_hole circle
|
||||
(at -11.43 3.175)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "60f33d7f-4160-4498-990f-e4a37da2b6d9")
|
||||
)
|
||||
(pad "27" thru_hole circle
|
||||
(at -11.43 5.715)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "3fecaac8-5cbe-439f-96bb-6502531d81d5")
|
||||
)
|
||||
(pad "32" thru_hole circle
|
||||
(at -11.43 -4.445)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "04482967-4f32-4d84-9d6d-d57de71bb952")
|
||||
)
|
||||
(pad "33" thru_hole circle
|
||||
(at -11.43 -1.905)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "5188c819-809d-465a-bf2c-26cce1c35fab")
|
||||
)
|
||||
(pad "34" thru_hole circle
|
||||
(at -11.43 -9.525)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "229ea36c-bebc-4df6-a74a-89ee522e1295")
|
||||
)
|
||||
(pad "35" thru_hole circle
|
||||
(at -11.43 -6.985)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8ff4d83a-8587-40c9-8b65-bcc9b6ab391e")
|
||||
)
|
||||
(pad "36" thru_hole circle
|
||||
(at -11.43 -17.145)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2608740b-195e-4381-a3f9-6e73ce2a5f53")
|
||||
)
|
||||
(pad "39" thru_hole circle
|
||||
(at -11.43 -14.605)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "369d777b-c370-4ed3-aa46-a97af8196a30")
|
||||
)
|
||||
(pad "EN" thru_hole circle
|
||||
(at -11.43 -12.065)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "7909ed4f-34be-42b8-8382-d4c7d9f5efa2")
|
||||
)
|
||||
(pad "G" thru_hole rect
|
||||
(at -11.43 13.335)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "57d27fac-cc7e-4d72-bba2-d96b74aa2455")
|
||||
)
|
||||
(pad "RX" thru_hole circle
|
||||
(at 11.43 0.635)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c5234c83-e7fd-479b-87f4-2944688a5546")
|
||||
)
|
||||
(pad "TX" thru_hole circle
|
||||
(at 11.43 -1.905)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8596f493-1a92-408d-a221-a32e80f63204")
|
||||
)
|
||||
(pad "led" thru_hole circle
|
||||
(at 11.43 -14.605)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "03a5198e-9f4d-4a2a-b156-19f9233cf7f0")
|
||||
)
|
||||
(pad "vcc" thru_hole circle
|
||||
(at 11.43 -17.145)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "3ba87acb-bdc0-4d67-82f0-5330df595f4a")
|
||||
)
|
||||
)
|
122
PCB/clicker/clicker.pretty/Standard_connector.kicad_mod
Normal file
122
PCB/clicker/clicker.pretty/Standard_connector.kicad_mod
Normal file
@ -0,0 +1,122 @@
|
||||
(footprint "Standard_connector"
|
||||
(version 20240108)
|
||||
(generator "pcbnew")
|
||||
(generator_version "8.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 0 -8.08 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "32d82d3f-0dc7-4ceb-8258-8c6d50e1b7d2")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "Standard_connector"
|
||||
(at 0 -6.58 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "0157bdcb-8b83-4dcb-9b5f-aa0a6fd95472")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 0 -7.58 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "91eba0c0-945b-4148-ac30-1718f83dd436")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 -7.58 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "70452928-4e2f-43fd-896c-7804eeb9e5f6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 -7.58 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "d37ceeb4-517e-4a6e-b33f-106bd823c52c")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_rect
|
||||
(start -5.08 -2.54)
|
||||
(end 5.08 2.54)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type default)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4a64b6a6-d05d-4018-9d9f-67a454007c9f")
|
||||
)
|
||||
(fp_text user "+ -"
|
||||
(at -3.2258 2.4384 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0c45272c-5b97-48ca-abf8-5feb8008bd9b")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 -5.08 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "384c7ffb-f14a-44d7-84a2-0f9a78195a75")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole circle
|
||||
(at -2.54 0)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "da579588-e199-424d-ba3c-0909433d2899")
|
||||
)
|
||||
(pad "2" thru_hole rect
|
||||
(at 2.54 0)
|
||||
(size 1.56 1.56)
|
||||
(drill 1.04)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "94e50b82-8ac6-4259-9fb8-dd109b2e513f")
|
||||
)
|
||||
)
|
24
PCB/clicker/footprints_clicker_library/SK12D07VG4.kicad_mod
Normal file
24
PCB/clicker/footprints_clicker_library/SK12D07VG4.kicad_mod
Normal file
@ -0,0 +1,24 @@
|
||||
|
||||
(footprint SK12D07VG4 (layer F.Cu) (tedit 6682C70A)
|
||||
(descr "")
|
||||
(fp_text reference "REF**" (at 0 0) (layer F.SilkS)
|
||||
(effects (font (size 0.787401574803 0.787401574803) (thickness 0.15)))
|
||||
)
|
||||
(fp_text value "SK12D07VG4" (at 0 0) (layer F.Fab)
|
||||
(effects (font (size 0.787401574803 0.787401574803) (thickness 0.15)))
|
||||
)
|
||||
(pad 1 thru_hole circle (at -2.0 0.0) (size 1.308 1.308) (drill 0.8) (layers *.Cu *.Mask) (solder_mask_margin 0.102))
|
||||
(pad 2 thru_hole circle (at 2.0 0.0) (size 1.308 1.308) (drill 0.8) (layers *.Cu *.Mask) (solder_mask_margin 0.102))
|
||||
(pad COM thru_hole circle (at 0.0 0.0) (size 1.308 1.308) (drill 0.8) (layers *.Cu *.Mask) (solder_mask_margin 0.102))
|
||||
(pad M1 thru_hole circle (at -4.15 0.0) (size 2.1 2.1) (drill 1.4) (layers *.Cu *.Mask) (solder_mask_margin 0.102))
|
||||
(pad M2 thru_hole circle (at 4.15 0.0) (size 2.1 2.1) (drill 1.4) (layers *.Cu *.Mask) (solder_mask_margin 0.102))
|
||||
(fp_line (start -4.4 -2.2) (end 4.4 -2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start 4.4 -2.2) (end 4.4 2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start 4.4 2.2) (end 4.0 2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start 4.0 2.2) (end -4.0 2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start -4.0 2.2) (end -4.4 2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start -4.4 2.2) (end -4.4 -2.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start -4.0 2.2) (end -4.0 4.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start -4.0 4.2) (end 4.0 4.2) (layer F.SilkS) (width 0.127))
|
||||
(fp_line (start 4.0 4.2) (end 4.0 2.2) (layer F.SilkS) (width 0.127))
|
||||
)
|
204
PCB/clicker/footprints_clicker_library/WS2812B.kicad_mod
Normal file
204
PCB/clicker/footprints_clicker_library/WS2812B.kicad_mod
Normal file
@ -0,0 +1,204 @@
|
||||
(footprint "WS2812B"
|
||||
(version 20240108)
|
||||
(generator "pcbnew")
|
||||
(generator_version "8.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 3.8989 0.4445 180)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fa68a86c-14d9-45fc-88db-3258a8064893")
|
||||
(effects
|
||||
(font
|
||||
(size 0.64 0.64)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "WS2812B"
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "7acf12d9-2b07-48b7-a808-74cbc68ea64f")
|
||||
(effects
|
||||
(font
|
||||
(size 0.787402 0.787402)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "0048eb94-c5eb-4526-8415-dc5ecc592182")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "8b620fc3-b168-4cd4-9251-ce4f5e16204a")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "43cb58e3-07c8-4df8-8363-7a54700ad1f5")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr smd)
|
||||
(fp_line
|
||||
(start -2.5 -2.5)
|
||||
(end -1.6 -2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e03f808e-1140-4838-84bb-5ce5b3070954")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.5 -1.6)
|
||||
(end -2.5 -2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e26ae03e-36e2-46ec-b489-8c829125e0db")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.5 -1.6)
|
||||
(end -1.6 -2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "81a8721b-f3be-42cf-90ce-6fc8ed963e8d")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.5 2.5)
|
||||
(end -2.5 -1.6)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "99288a31-9a74-4080-adb1-a64396f9ee49")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.7 -3.2)
|
||||
(end -2.5 -2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "af40ca1a-5648-4e3c-9be8-a1c7398218cf")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.6 -2.5)
|
||||
(end -1.3 -2.8)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a2be93f3-074a-4a11-a018-210b07af87f3")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.6 -2.5)
|
||||
(end 2.5 -2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6d4c8af5-703b-43af-8e61-91165fce3446")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.3 -2.8)
|
||||
(end -1.7 -3.2)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "11d4ed4d-ac80-4687-82f3-0c796a8615bf")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.5 -2.5)
|
||||
(end 2.5 2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3ad5dbb8-ade7-4598-9ae7-048b8d72cf8d")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.5 2.5)
|
||||
(end -2.5 2.5)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8f4ad853-a5fb-4869-bc42-66e7e3efb781")
|
||||
)
|
||||
(fp_circle
|
||||
(center 0 0)
|
||||
(end 1.72046 0)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(fill none)
|
||||
(layer "F.SilkS")
|
||||
(uuid "118b08e5-289d-44c3-885b-34be2a3ae21b")
|
||||
)
|
||||
(pad "1-VDD" smd rect
|
||||
(at -2.45 1.65 180)
|
||||
(size 1.5 0.9)
|
||||
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(solder_mask_margin 0.102)
|
||||
(uuid "6814d27f-47ea-4657-9c2b-dc52cc5c85b6")
|
||||
)
|
||||
(pad "2-DOUT" smd rect
|
||||
(at 2.45 1.65 180)
|
||||
(size 1.5 0.9)
|
||||
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(solder_mask_margin 0.102)
|
||||
(uuid "2ac7e823-1ee2-4d93-a587-d06a4fcc0f32")
|
||||
)
|
||||
(pad "3-GND" smd rect
|
||||
(at 2.45 -1.65 180)
|
||||
(size 1.5 0.9)
|
||||
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(solder_mask_margin 0.102)
|
||||
(uuid "2715bb34-b948-4e0f-9554-50b66aeaf436")
|
||||
)
|
||||
(pad "4-DIN" smd rect
|
||||
(at -2.45 -1.65 180)
|
||||
(size 1.5 0.9)
|
||||
(layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(solder_mask_margin 0.102)
|
||||
(uuid "e001c81a-3448-4678-9103-c8395a38771d")
|
||||
)
|
||||
)
|
94025
PCB/clicker/fp-info-cache
Normal file
94025
PCB/clicker/fp-info-cache
Normal file
File diff suppressed because it is too large
Load Diff
6
PCB/clicker/fp-lib-table
Normal file
6
PCB/clicker/fp-lib-table
Normal file
@ -0,0 +1,6 @@
|
||||
(fp_lib_table
|
||||
(version 7)
|
||||
(lib (name "footprints_clicker_library")(type "KiCad")(uri "${KIPRJMOD}/footprints_clicker_library")(options "")(descr ""))
|
||||
(lib (name "button")(type "KiCad")(uri "${KIPRJMOD}/button.pretty")(options "")(descr ""))
|
||||
(lib (name "clicker")(type "KiCad")(uri "${KIPRJMOD}/clicker.pretty")(options "")(descr ""))
|
||||
)
|
848
PCB/clicker/lazer_pin.bak
Normal file
848
PCB/clicker/lazer_pin.bak
Normal file
@ -0,0 +1,848 @@
|
||||
(kicad_symbol_lib
|
||||
(version 20231120)
|
||||
(generator "kicad_symbol_editor")
|
||||
(generator_version "8.0")
|
||||
(symbol "battery_connector"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "T"
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "battery_connector_0_1"
|
||||
(polyline
|
||||
(pts
|
||||
(xy -2.54 0) (xy 2.54 0)
|
||||
)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "battery_connector_1_1"
|
||||
(text "Battery Connector"
|
||||
(at 0 6.35 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at -2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Power"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at 2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "GND"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery_0_1"
|
||||
(rectangle
|
||||
(start -13.97 33.02)
|
||||
(end 6.35 -12.7)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center -11.43 30.48)
|
||||
(radius 1.27)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(rectangle
|
||||
(start -1.27 -8.89)
|
||||
(end 5.08 -12.7)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy -5.08 29.21) (xy -5.08 31.75) (xy -3.81 31.75) (xy -3.81 29.21) (xy -3.81 31.75) (xy -2.54 31.75)
|
||||
(xy -2.54 30.48) (xy -1.27 30.48) (xy -1.27 31.75) (xy 0 31.75) (xy 0 30.48) (xy 1.27 30.48) (xy 1.27 31.75)
|
||||
(xy 2.54 31.75) (xy 2.54 29.21)
|
||||
)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 3.81 -6.35)
|
||||
(radius 1.27)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery_1_1"
|
||||
(text "RST"
|
||||
(at -4.572 -10.414 0)
|
||||
(effects
|
||||
(font
|
||||
(size 0.762 0.762)
|
||||
)
|
||||
)
|
||||
)
|
||||
(text "USB-C"
|
||||
(at 1.778 -10.922 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.016 1.016)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin power_in line
|
||||
(at -8.89 -15.24 90)
|
||||
(length 2.54)
|
||||
(name "GND"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number ""
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin power_in line
|
||||
(at -11.43 -15.24 90)
|
||||
(length 2.54)
|
||||
(name "VCC"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number ""
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 3.81 180)
|
||||
(length 2.54)
|
||||
(name "GPIO00"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "0"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "GPIO12"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "12"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 -3.81 180)
|
||||
(length 2.54)
|
||||
(name "GPIO13"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "13"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 1.27 0)
|
||||
(length 2.54)
|
||||
(name "GPIO14"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "14"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 -1.27 180)
|
||||
(length 2.54)
|
||||
(name "GPIO15"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "15"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 16.51 180)
|
||||
(length 2.54)
|
||||
(name "GPIO18"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "18"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 21.59 180)
|
||||
(length 2.54)
|
||||
(name "GPIO19"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "19"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 1.27 180)
|
||||
(length 2.54)
|
||||
(name "GPIO02"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 19.05 180)
|
||||
(length 2.54)
|
||||
(name "GPIO23"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "23"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 8.89 0)
|
||||
(length 2.54)
|
||||
(name "GPIO25"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "25"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 6.35 0)
|
||||
(length 2.54)
|
||||
(name "GPIO26"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "26"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 3.81 0)
|
||||
(length 2.54)
|
||||
(name "GPIO27"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "27"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 13.97 0)
|
||||
(length 2.54)
|
||||
(name "GPIO32"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "32"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 11.43 0)
|
||||
(length 2.54)
|
||||
(name "GPIO33"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "33"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 19.05 0)
|
||||
(length 2.54)
|
||||
(name "GPIO34"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "34"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 16.51 0)
|
||||
(length 2.54)
|
||||
(name "GPIO35"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "35"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 26.67 0)
|
||||
(length 2.54)
|
||||
(name "GPIO36"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "36"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 24.13 0)
|
||||
(length 2.54)
|
||||
(name "GPIO39"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "39"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 6.35 180)
|
||||
(length 2.54)
|
||||
(name "GPIO04"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "4"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 13.97 180)
|
||||
(length 2.54)
|
||||
(name "GPIO05"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "5"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 21.59 0)
|
||||
(length 2.54)
|
||||
(name "RESET"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "EN"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin power_out line
|
||||
(at -16.51 -3.81 0)
|
||||
(length 2.54)
|
||||
(name "GND"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "G"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 8.89 180)
|
||||
(length 2.54)
|
||||
(name "GPIO16"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "RX"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 11.43 180)
|
||||
(length 2.54)
|
||||
(name "GPIO17"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "TX"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 24.13 180)
|
||||
(length 2.54)
|
||||
(name "GPIO22"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "led"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin output line
|
||||
(at 8.89 26.67 180)
|
||||
(length 2.54)
|
||||
(name "3.3V"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "vcc"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "lazer"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at -0.762 7.366 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "lazer_1_1"
|
||||
(rectangle
|
||||
(start -3.81 0)
|
||||
(end 3.81 0)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(text "Lazer"
|
||||
(at 0 5.588 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at -2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Power"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at 2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Gnd"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
812
PCB/clicker/lazer_pin.kicad_sym
Normal file
812
PCB/clicker/lazer_pin.kicad_sym
Normal file
@ -0,0 +1,812 @@
|
||||
(kicad_symbol_lib
|
||||
(version 20231120)
|
||||
(generator "kicad_symbol_editor")
|
||||
(generator_version "8.0")
|
||||
(symbol "battery_connector"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "T"
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 2.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "battery_connector_0_1"
|
||||
(polyline
|
||||
(pts
|
||||
(xy -2.54 0) (xy 2.54 0)
|
||||
)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "battery_connector_1_1"
|
||||
(text "Battery Connector"
|
||||
(at 0 6.35 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at -2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Power"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at 2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "GND"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 15.24 22.86 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery_0_1"
|
||||
(rectangle
|
||||
(start -13.97 33.02)
|
||||
(end 6.35 -12.7)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center -11.43 30.48)
|
||||
(radius 1.27)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(rectangle
|
||||
(start -1.27 -8.89)
|
||||
(end 5.08 -12.7)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy -5.08 29.21) (xy -5.08 31.75) (xy -3.81 31.75) (xy -3.81 29.21) (xy -3.81 31.75) (xy -2.54 31.75)
|
||||
(xy -2.54 30.48) (xy -1.27 30.48) (xy -1.27 31.75) (xy 0 31.75) (xy 0 30.48) (xy 1.27 30.48) (xy 1.27 31.75)
|
||||
(xy 2.54 31.75) (xy 2.54 29.21)
|
||||
)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 3.81 -6.35)
|
||||
(radius 1.27)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "esp_with_battery_1_1"
|
||||
(text "RST"
|
||||
(at -4.572 -10.414 0)
|
||||
(effects
|
||||
(font
|
||||
(size 0.762 0.762)
|
||||
)
|
||||
)
|
||||
)
|
||||
(text "USB-C"
|
||||
(at 1.778 -10.922 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.016 1.016)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 3.81 180)
|
||||
(length 2.54)
|
||||
(name "GPIO00"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "0"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "GPIO12"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "12"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 -3.81 180)
|
||||
(length 2.54)
|
||||
(name "GPIO13"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "13"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 1.27 0)
|
||||
(length 2.54)
|
||||
(name "GPIO14"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "14"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 -1.27 180)
|
||||
(length 2.54)
|
||||
(name "GPIO15"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "15"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 16.51 180)
|
||||
(length 2.54)
|
||||
(name "GPIO18"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "18"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 21.59 180)
|
||||
(length 2.54)
|
||||
(name "GPIO19"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "19"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 1.27 180)
|
||||
(length 2.54)
|
||||
(name "GPIO02"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 19.05 180)
|
||||
(length 2.54)
|
||||
(name "GPIO23"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "23"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 8.89 0)
|
||||
(length 2.54)
|
||||
(name "GPIO25"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "25"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 6.35 0)
|
||||
(length 2.54)
|
||||
(name "GPIO26"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "26"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 3.81 0)
|
||||
(length 2.54)
|
||||
(name "GPIO27"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "27"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 13.97 0)
|
||||
(length 2.54)
|
||||
(name "GPIO32"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "32"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 11.43 0)
|
||||
(length 2.54)
|
||||
(name "GPIO33"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "33"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 19.05 0)
|
||||
(length 2.54)
|
||||
(name "GPIO34"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "34"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 16.51 0)
|
||||
(length 2.54)
|
||||
(name "GPIO35"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "35"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 26.67 0)
|
||||
(length 2.54)
|
||||
(name "GPIO36"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "36"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 24.13 0)
|
||||
(length 2.54)
|
||||
(name "GPIO39"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "39"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 6.35 180)
|
||||
(length 2.54)
|
||||
(name "GPIO04"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "4"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 13.97 180)
|
||||
(length 2.54)
|
||||
(name "GPIO05"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "5"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at -16.51 21.59 0)
|
||||
(length 2.54)
|
||||
(name "RESET"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "EN"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin power_out line
|
||||
(at -16.51 -3.81 0)
|
||||
(length 2.54)
|
||||
(name "GND"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "G"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 8.89 180)
|
||||
(length 2.54)
|
||||
(name "GPIO16"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "RX"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 11.43 180)
|
||||
(length 2.54)
|
||||
(name "GPIO17"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "TX"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin bidirectional line
|
||||
(at 8.89 24.13 180)
|
||||
(length 2.54)
|
||||
(name "GPIO22"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "led"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin output line
|
||||
(at 8.89 26.67 180)
|
||||
(length 2.54)
|
||||
(name "3.3V"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "vcc"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "lazer"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at -0.762 7.366 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at -1.27 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "lazer_1_1"
|
||||
(rectangle
|
||||
(start -3.81 0)
|
||||
(end 3.81 0)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(text "Lazer"
|
||||
(at 0 5.588 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at -2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Power"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin input line
|
||||
(at 2.54 0 270)
|
||||
(length 2.54)
|
||||
(name "Gnd"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
7
PCB/clicker/sym-lib-table
Normal file
7
PCB/clicker/sym-lib-table
Normal file
@ -0,0 +1,7 @@
|
||||
(sym_lib_table
|
||||
(version 7)
|
||||
(lib (name "lazer_pin")(type "KiCad")(uri "${KIPRJMOD}/lazer_pin.kicad_sym")(options "")(descr ""))
|
||||
(lib (name "button")(type "KiCad")(uri "${KIPRJMOD}/button.kicad_sym")(options "")(descr ""))
|
||||
(lib (name "SK12D07VG4")(type "KiCad")(uri "${KIPRJMOD}/SK12D07VG4.kicad_sym")(options "")(descr ""))
|
||||
(lib (name "WS2812B")(type "KiCad")(uri "${KIPRJMOD}/WS2812B.kicad_sym")(options "")(descr ""))
|
||||
)
|
29
README.md
Normal file → Executable file
29
README.md
Normal file → Executable file
@ -1,2 +1,29 @@
|
||||
# presentation-clicker
|
||||
# KAM Alarm
|
||||
|
||||
![Image of KAM alarms](docs/Images/Image2.jpg)
|
||||
|
||||
|
||||
The KAM Alarm system was born out of a need for efficient communication between the sound room and kids ministry at our church. The goal was to enable seamless updates on service progression, attendance counts, and worker presence.
|
||||
|
||||
**Key Features**
|
||||
|
||||
- Wireless connectivity using ESP32 boards that store WiFi credentials persistently across resets
|
||||
- Create an access point (AP) if no WiFi is available; connect to it with your phone or device
|
||||
- Once connected to a network, login to set the remote IP address, which enables connection to another KAM Alarm devices
|
||||
|
||||
**How It Works**
|
||||
|
||||
1. Connect your device to the KAM Alarm's AP or existing WiFi network.
|
||||
2. Log in and configure the remote IP address, linking the two devices.
|
||||
3. Use the system to send updates on service progression, attendance counts, and worker presence between the sound room and kids ministry.
|
||||
|
||||
**Technical Details**
|
||||
|
||||
- Two ESP32 boards connect via WiFi to each other
|
||||
- Sends GET requests to different URLs for data exchange
|
||||
|
||||
**Get Started**
|
||||
|
||||
Check out our [documentation](docs/documentation.md) for a detailed list of components used in this project.
|
||||
|
||||
Check out our [BOM](docs/BOM.md) for a list of the parts used and the total cost.
|
||||
|
Loading…
Reference in New Issue
Block a user