From c23a7dba91d25fb4dc85e582dff47de0eed29b41 Mon Sep 17 00:00:00 2001 From: rcuadrado Date: Sat, 16 May 2026 18:12:53 +0200 Subject: [PATCH] Init commit --- README.md | 186 +- docs/tasmota-config.md | 224 ++ esquematico/esp8266/#auto_saved_files# | 1 + .../esp8266/_autosave-esp8266.kicad_sch | 2964 +++++++++++++++++ .../esp8266-2026-05-12_181812.zip | Bin 0 -> 8048 bytes .../esp8266-2026-05-12_182653.zip | Bin 0 -> 11743 bytes .../esp8266-2026-05-12_185243.zip | Bin 0 -> 14359 bytes esquematico/esp8266/esp8266.kicad_pcb | 2 + esquematico/esp8266/esp8266.kicad_prl | 131 + esquematico/esp8266/esp8266.kicad_pro | 619 ++++ esquematico/esp8266/esp8266.kicad_sch | 602 ++++ esquematico/esp8266/fp-info-cache | 1 + esquematico/esp8266/riego.kicad_sch | 313 ++ esquematico/esp8266/~esp8266.kicad_sch.lck | 1 + esquematico/genera_esquematico.py | 442 +++ esquematico/riego.kicad_sch | 602 ++++ 16 files changed, 6087 insertions(+), 1 deletion(-) create mode 100644 docs/tasmota-config.md create mode 100644 esquematico/esp8266/#auto_saved_files# create mode 100644 esquematico/esp8266/_autosave-esp8266.kicad_sch create mode 100644 esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_181812.zip create mode 100644 esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_182653.zip create mode 100644 esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_185243.zip create mode 100644 esquematico/esp8266/esp8266.kicad_pcb create mode 100644 esquematico/esp8266/esp8266.kicad_prl create mode 100644 esquematico/esp8266/esp8266.kicad_pro create mode 100644 esquematico/esp8266/esp8266.kicad_sch create mode 100644 esquematico/esp8266/fp-info-cache create mode 100644 esquematico/esp8266/riego.kicad_sch create mode 100644 esquematico/esp8266/~esp8266.kicad_sch.lck create mode 100644 esquematico/genera_esquematico.py create mode 100644 esquematico/riego.kicad_sch diff --git a/README.md b/README.md index 2b0cd3e..3700e78 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,186 @@ -# me_yo +# Sistema de Riego Automático — ESP8266 + Docker +Stack completo para control y monitorización de riego con ESP8266/Tasmota, +Mosquitto, Python controller, InfluxDB y Grafana. + +## Estructura del proyecto +``` +└── docs/ + ├── tasmota-config.md # Comandos de configuración Tasmota +``` + +## Hardware + +| Dispositivo | IP | Detalle | +|---|---|---| +| ESP8266 (Tasmota 15.4.0) | `192.168.1.42` | MAC `18:FE:34:D3:01:BA` | +| Broker Mosquitto | `192.168.1.200:1883` | Docker en este ordenador | + +### Cableado GPIO (verificado) + +| Pin NodeMCU | GPIO | Función | Notas | +|---|---|---|---| +| D1 | GPIO5 | Relay_i → IN1 | Motor riego (Relay1) | +| D6 | GPIO12 | Relay_i → IN2 | Motor abastecimiento solución (Relay2) | +| D7 | GPIO13 | Relay_i → IN3 | Motor abastecimiento agua (Relay3) | +| D2 | GPIO4 | SR04 Trig | Directo, sin resistencias | +| D5 | GPIO14 | SR04 Echo | Con divisor de tensión 5V→3.3V | + +> ⚠️ Tasmota estándar no incluye SR04 — instalar `tasmota-sensors.bin` primero. +> La actualización OTA borra los GPIOs; hay que reconfigurarlos después. +> El módulo SunFounder es activo LOW → todos los relés usan `Relay_i` (inverted). + +### Lógica de riego — Tasmota Rules (autónoma) + +Los tres motores se controlan mediante una Rule en el propio ESP8266, sin necesitar el broker MQTT. + +**Roles de cada motor:** + +| Relay | Pin | Motor | Función | +|---|---|---|---| +| Relay1 | D1/GPIO5 | Riego | Distribuye agua a las plantas | +| Relay2 | D6/GPIO12 | Abastecimiento sustrato | Aporta solución nutritiva al depósito | +| Relay3 | D7/GPIO13 | Abastecimiento agua | Aporta agua limpia al depósito | + +**Comportamiento:** + +| Condición SR04 | Acción | +|---|---| +| Distancia > 30 cm | Relay2 y/o Relay3 ON (según modo) | +| Distancia < 10 cm | Relay2 y Relay3 OFF (Relay1 sigue) | + +Relay1 (riego) arranca y para por comando — independiente del sensor. +Si se para el riego, los motores de abastecimiento siguen hasta que la distancia baje de 10 cm. + +**Rules activas en el ESP8266:** + +**Rule1** — lógica de sensores y motores + gestión automática de `Mem2`: +``` +Rule1 ON SR04#Distance>30 DO if (mem1==1) Backlog Power2 ON; Power3 ON elseif (mem1==2) Power3 ON elseif (mem1==3) Power2 ON endif ENDON ON SR04#Distance<10 DO Backlog Power2 OFF; Power3 OFF ENDON ON Power1#State=1 DO Mem2 1 ENDON ON Power1#State=0 DO Mem2 0 ENDON +Rule1 1 +``` + +**Rule2** — reanudación automática tras corte de luz: +``` +Rule2 ON System#Boot DO if (mem2==1) Power1 ON endif ENDON +Rule2 1 +``` + +`Mem2` se gestiona automáticamente: se activa al encender el riego y se desactiva al apagarlo. No hace falta incluirlo en los comandos. + +**Comandos de operación:** + +| Acción | Comando | +|---|---| +| Encender modo completo (agua + sustrato) | `Backlog Mem1 1; Power1 ON` | +| Encender solo agua | `Backlog Mem1 2; Power1 ON` | +| Encender solo sustrato | `Backlog Mem1 3; Power1 ON` | +| Parar solo riego (abastecimiento sigue hasta <10 cm) | `Power1 OFF` | +| Parar todo | `Backlog Power0 OFF; Mem1 0` | + +**Variables persistentes en flash:** + +| Variable | Función | +|---|---| +| `Mem1` | Modo activo (1=completo, 2=solo agua, 3=solo sustrato, 0=parado) | +| `Mem2` | Auto-reanudación tras corte de luz — gestionado automáticamente por Rule1 | + +> **Arquitectura final:** esta lógica es autónoma y funciona sin red. El objetivo es +> que el broker **Mosquitto** reciba la telemetría del sensor vía MQTT y el +> **controller Python** envíe los comandos `Power1/2/3` con lógica adicional +> (franjas horarias, niveles mínimos, alertas). Las Rules y el broker coexisten: +> las Rules actúan como capa de seguridad local aunque el broker no esté disponible. + +Antes de levantar el stack, configura Tasmota: ver [docs/tasmota-config.md](docs/tasmota-config.md). + +## Servicios Docker + +| Servicio | Puerto | Descripción | +|---|---|---| +| mosquitto | 1883 | Broker MQTT (accesible desde ESP8266) | + +## Variables de entorno clave + +Ejemplo de programación: +```json +[{"days":["mon","wed","fri"],"time":"07:00","duration_minutes":20}] +``` + +## Documentación + +- [Configuración Tasmota](docs/tasmota-config.md) + +--- + +## Cómo se encontró el ESP8266 + +# ESP8266 - Localizar dispositivo en la red local + +## Problema + +Tienes un ESP8266 conectado a la red WiFi pero no recuerdas su IP. + +## Solución: escaneo de red + +### 1. Identificar tu red + +```bash +ip route | grep default +``` + +Esto muestra tu puerta de enlace y la IP de tu máquina. En este caso: +- Red: `192.168.1.0/24` +- Tu PC: `192.168.1.41` +- Router: `192.168.1.1` + +### 2. Ping sweep para descubrir dispositivos activos + +```bash +for i in $(seq 1 254); do ping -c 1 -W 1 192.168.1.$i > /dev/null 2>&1 & done; wait +``` + +Envía un ping a cada IP posible de la red (`192.168.1.1` hasta `192.168.1.254`) en paralelo. Esto hace que tu sistema guarde en la tabla ARP la MAC de cada dispositivo que responde. + +### 3. Consultar la tabla ARP + +```bash +ip neigh show | grep -v FAILED | sort -t . -k 4 -n +``` + +Muestra todos los dispositivos detectados con su IP y dirección MAC. El truco está en identificar la MAC del ESP8266. + +### 4. Identificar el ESP8266 por su MAC (OUI) + +Los primeros 3 bytes de una MAC identifican al fabricante (OUI). Espressif Systems, el fabricante del ESP8266/ESP32, tiene estos prefijos conocidos: + +| Prefijo MAC | Fabricante | +|---|---| +| `18:FE:34` | Espressif Systems | +| `5C:CF:7F` | Espressif Systems | +| `60:01:94` | Espressif Systems | +| `A0:20:A6` | Espressif Systems | +| `84:F3:EB` | Espressif Systems | + +En el escaneo apareció: + +``` +192.168.1.42 lladdr 18:fe:34:d3:01:ba REACHABLE +``` + +El prefijo `18:FE:34` confirma que es un dispositivo Espressif → **es el ESP8266**. + +### 5. Verificar conectividad + +```bash +ping -c 3 192.168.1.42 +``` + +Responde correctamente con ~120ms de latencia (normal para WiFi). + +## Resultado + +| Dato | Valor | +|---|---| +| IP del ESP8266 | `192.168.1.42` | +| MAC | `18:fe:34:d3:01:ba` | +| Fabricante | Espressif Systems | diff --git a/docs/tasmota-config.md b/docs/tasmota-config.md new file mode 100644 index 0000000..19a3f12 --- /dev/null +++ b/docs/tasmota-config.md @@ -0,0 +1,224 @@ +# Configuración de Tasmota + +ESP8266 en `192.168.1.42`, firmware Tasmota 15.4.0. + +## Comandos a ejecutar (una sola vez) + +Todos se ejecutan desde `http://192.168.1.42` → Consola, +o vía HTTP API: `http://192.168.1.42/cm?cmnd=` + +### 1. Seguridad básica + +``` +# Contraseña para la interfaz web +Password + +# Credenciales MQTT (deben coincidir con .env) +MqttUser esp8266 +MqttPassword +``` + +### 2. Broker MQTT — apuntar a este ordenador + +``` +MqttHost 192.168.1.41 +MqttPort 1883 +``` + +### 3. Esquema de topics — obligatorio para que las ACLs funcionen + +``` +Topic riego/bomba +FullTopic %prefix%/%topic%/ +``` + +Esto genera: +- `cmnd/riego/bomba/POWER` (recibe comandos) +- `stat/riego/bomba/POWER` (publica confirmaciones) +- `tele/riego/bomba/SENSOR` (publica telemetría) + +### 4. Telemetría cada 30 segundos + +``` +TelePeriod 30 +``` + +### 5. Estado seguro al arrancar — CRÍTICO + +``` +PowerOnState 0 +``` + +Sin este ajuste, si la bomba estaba encendida y el ESP8266 se reinicia, +la bomba arranca automáticamente. Con `0` siempre arranca apagada. + +### 6. Cableado y configuración de GPIOs + +#### Hardware identificado +- Placa: **NodeMCU ESP8266** +- Relé: **SunFounder 8 Relay Module** (activo en LOW → usar `Relay1_i`) +- Sensor: **HC-SR04 estándar (5V)** → requiere divisor de tensión en Echo + +#### ⚠️ Divisor de tensión — OBLIGATORIO para HC-SR04 estándar + +El pin Echo del HC-SR04 devuelve 5V pero el ESP8266 soporta máximo 3.3V. +Sin el divisor puedes quemar el GPIO o dañar el chip con el tiempo. + +El divisor va en el pin **Echo → D5 (GPIO14)**. Trig va directo sin resistencias. + +Con **tres resistencias de 2.2 kΩ** (las dos primeras en paralelo forman 1.1 kΩ): + +``` +Punto A Punto B + │ │ +HC-SR04 Echo ──[2.2kΩ]────────┤ + ├──── D5 (GPIO14) NodeMCU → 3.33 V ✓ + ──[2.2kΩ]────────┤ + │ + [2.2kΩ] + │ + GND +``` + +- **Punto A**: pin Echo del HC-SR04 + un extremo de cada una de las dos resistencias en paralelo +- **Punto B**: el otro extremo de las dos resistencias en paralelo + un extremo de la tercera + cable a D5 + +Esto reduce 5V → 3.33V: `5V × 2.2kΩ/(1.1kΩ+2.2kΩ) = 3.33V` ✓ +El pin Trigger (ESP8266 → sensor) va directo: 3.3V es suficiente para activar el HC-SR04. + +#### Esquema de cableado completo + +Alimentación mixta: +- NodeMCU → **USB** (ordenador o cargador) +- Relay module + HC-SR04 → **fuente externa 5V / 1.5A** + +``` +USB ──────────────────────── NodeMCU (alimentación + lógica 3.3V) + +Fuente 5V/1.5A +├── (+) 5V ──┬── Relay module VCC +│ └── HC-SR04 VCC +└── (−) GND ─┬── Relay module GND + ├── HC-SR04 GND + ├── GND divisor de tensión (extremo inferior R2) + └── NodeMCU GND ← ⚠️ OBLIGATORIO aunque NodeMCU va por USB + Sin este cable los GPIOs no funcionan + +NodeMCU señales: + D1 (GPIO5) ──────────────────────── IN1 relay module (bomba) + D2 (GPIO4) ──────────────────────── Trig HC-SR04 (directo, sin resistencias) + D5 (GPIO14) ──[divisor tensión]───── Echo HC-SR04 (3.3V tras el divisor) +``` + +#### Resistencias disponibles: solo 2.2 kΩ + +Con **dos resistencias de 2.2 kΩ en paralelo** como R1 se obtiene 1.1 kΩ, +que con una tercera de 2.2 kΩ como R2 da exactamente 3.33 V: + +``` +Echo HC-SR04 + │ + [2.2kΩ]──┐ + │ ├── D5 (GPIO14) NodeMCU → 3.33 V ✓ + [2.2kΩ]──┘ + │ + [2.2kΩ] + │ + GND +``` + +Si también tienes una resistencia de **1 kΩ** úsala como R1 (es más sencillo): +R1=1kΩ + R2=2.2kΩ → 3.44 V ✓ + +#### Resistencias para el divisor de tensión + +Necesitas dos resistencias con una relación **R2 ≈ 2 × R1**. +Cualquiera de estas combinaciones es válida: + +| R1 | R2 | Tensión en Echo→ESP | Observaciones | +|---|---|---|---| +| 1 kΩ | 2 kΩ | 3.33 V ✓ | Combinación ideal | +| 1 kΩ | 2.2 kΩ | 3.44 V ✓ | Muy común en kits | +| 2.2 kΩ | 4.7 kΩ | 3.40 V ✓ | Válida | +| 10 kΩ | 20 kΩ | 3.33 V ✓ | Misma ratio, menor corriente | +| 10 kΩ | 22 kΩ | 3.44 V ✓ | Muy común | + +**Cómo medir con multímetro**: selector en Ω (ohmios), puntas en los dos +extremos de la resistencia. Las más comunes en kits naranja/amarillo son +colores de 4 bandas: + +| Valor | Bandas de color | +|---|---| +| 1 kΩ | Marrón – Negro – Rojo – (tolerancia) | +| 2 kΩ | Rojo – Negro – Rojo – (tolerancia) | +| 2.2 kΩ | Rojo – Rojo – Rojo – (tolerancia) | +| 4.7 kΩ | Amarillo – Violeta – Rojo – (tolerancia) | +| 10 kΩ | Marrón – Negro – Naranja – (tolerancia) | +| 22 kΩ | Rojo – Rojo – Naranja – (tolerancia) | + +#### Configuración en Tasmota (interfaz gráfica) + +Menú → **Configuración → Configurar módulo** + +Seleccionar en los desplegables: + +| GPIO | Función a seleccionar | Nota | +|---|---|---| +| GPIO5 | `Relay_i` → `1` | La **i** es crítica (inverted, SunFounder activo LOW) | +| GPIO4 | `SR04 Tri/Tx` → `1` | Trig — salida directa sin resistencias | +| GPIO14 | `SR04 Ech/Rx` → `1` | Echo — entrada con divisor de tensión obligatorio | + +> ⚠️ **Importante**: Trig en GPIO4 (D2) y Echo en GPIO14 (D5), NO al revés. +> Verificado según [documentación oficial Tasmota HC-SR04](https://tasmota.github.io/docs/HC-SR04/). + +Pulsar **Save** — el dispositivo reinicia. + +#### Alternativa: comandos por consola + +Menú → Consola (o `http://192.168.1.42/cm?cmnd=`): + +``` +Backlog GPIO5 Relay_i 1; GPIO4 SR04Tri 1; GPIO14 SR04Ech 1 +``` + +#### Verificar que el sensor funciona + +Tras guardar, en la consola de Tasmota: +``` +Status 10 +``` +Debe aparecer algo como: +```json +{"StatusSNS":{"Time":"...","SR04":{"Distance":45.2}}} +``` + +Si no aparece `SR04`, el build estándar puede no incluirlo. +En ese caso descargar `tasmota-sensors.bin`: +``` +OtaUrl http://ota.tasmota.com/tasmota/release/tasmota-sensors.bin +Upgrade 1 +``` + +### 7. Verificar soporte HC-SR04 + +> ⚠️ **Tasmota 15.4.0 estándar NO incluye SR04.** Hay que instalar `tasmota-sensors.bin`: + +``` +OtaUrl http://ota.tasmota.com/tasmota/release/tasmota-sensors.bin +Upgrade 1 +``` + +Tras el reinicio, los desplegables de GPIO mostrarán `SR04 Tri/Tx` y `SR04 Ech/Rx`. + +> ⚠️ La actualización OTA **borra la configuración de GPIOs**. Después del upgrade +> hay que volver a configurar GPIO4, GPIO5 y GPIO14 en Configurar módulo. + +## Verificar que todo funciona + +Tras guardar los cambios, Tasmota reinicia. Comprueba: + +```bash +# El ESP8266 debe conectar al broker local +curl -s "http://192.168.1.42/cm?cmnd=Status%205" | python3 -m json.tool +# MqttCount debe ser > 0 +``` \ No newline at end of file diff --git a/esquematico/esp8266/#auto_saved_files# b/esquematico/esp8266/#auto_saved_files# new file mode 100644 index 0000000..39b42e3 --- /dev/null +++ b/esquematico/esp8266/#auto_saved_files# @@ -0,0 +1 @@ +/home/f-romero/Documentos/esp8266/esquematico/esp8266/_autosave-esp8266.kicad_sch diff --git a/esquematico/esp8266/_autosave-esp8266.kicad_sch b/esquematico/esp8266/_autosave-esp8266.kicad_sch new file mode 100644 index 0000000..83c26bb --- /dev/null +++ b/esquematico/esp8266/_autosave-esp8266.kicad_sch @@ -0,0 +1,2964 @@ +(kicad_sch + (version 20250114) + (generator "eeschema") + (generator_version "9.0") + (uuid "7a344e0f-c2fc-4d3e-bc0b-91420c86692d") + (paper "A4") + (title_block + (title "Sistema de Riego — Diagrama de cableado") + (date "2026-05-12") + (rev "2") + (company "Proyecto Riego ESP8266") + ) + (lib_symbols + (symbol "Device:R" + (pin_numbers + (hide yes) + ) + (pin_names + (offset 0) + ) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "R" + (at 2.032 0 90) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "R" + (at 0 0 90) + (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 "R_0_1" + (rectangle + (start -1.016 -2.032) + (end 1.016 2.032) + (stroke + (width 0.254) + (type default) + ) + (fill + (type none) + ) + ) + ) + (symbol "R_1_1" + (pin passive line + (at 0 3.81 270) + (length 1.778) + (name "~" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin passive line + (at 0 -3.81 90) + (length 1.778) + (name "~" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "power:+3.3V" + (power) + (pin_names + (offset 0) + ) + (exclude_from_sim no) + (in_bom no) + (on_board no) + (property "Reference" "#PWR" + (at 0 3.81 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+3.3V" + (at 0 3.81 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 "+3.3V_0_1" + (polyline + (pts + (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27) + ) + (stroke + (width 0) + (type default) + ) + (fill + (type none) + ) + ) + (polyline + (pts + (xy 0 0) (xy 0 2.54) + ) + (stroke + (width 0) + (type default) + ) + (fill + (type none) + ) + ) + ) + (symbol "+3.3V_1_1" + (pin power_in line + (at 0 0 270) + (length 0) + (name "~" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "power:+5V" + (power) + (pin_names + (offset 0) + ) + (exclude_from_sim no) + (in_bom no) + (on_board no) + (property "Reference" "#PWR" + (at 0 3.81 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+5V" + (at 0 3.81 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 "+5V_0_1" + (polyline + (pts + (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27) + ) + (stroke + (width 0) + (type default) + ) + (fill + (type none) + ) + ) + (polyline + (pts + (xy 0 0) (xy 0 2.54) + ) + (stroke + (width 0) + (type default) + ) + (fill + (type none) + ) + ) + ) + (symbol "+5V_1_1" + (pin power_in line + (at 0 0 270) + (length 0) + (name "~" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "power:GND" + (power) + (pin_names + (offset 0) + ) + (exclude_from_sim no) + (in_bom no) + (on_board no) + (property "Reference" "#PWR" + (at 0 -6.35 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 0 -3.81 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 "GND_0_1" + (polyline + (pts + (xy 0 0) (xy 0 -1.27) (xy 1.27 -1.27) (xy 0 -2.54) (xy -1.27 -1.27) (xy 0 -1.27) + ) + (stroke + (width 0) + (type default) + ) + (fill + (type none) + ) + ) + ) + (symbol "GND_1_1" + (pin power_in line + (at 0 0 270) + (length 0) + (name "~" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "riego_lib:HC_SR04" + (pin_names + (offset 1.016) + ) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "US" + (at 0 6.35 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "HC_SR04" + (at 0 8.89 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" "HC-SR04 ultrasonic distance sensor" + (at 0 0 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (symbol "HC_SR04_0_1" + (rectangle + (start -3.81 -5.08) + (end 3.81 5.08) + (stroke + (width 0) + (type default) + ) + (fill + (type background) + ) + ) + ) + (symbol "HC_SR04_1_1" + (pin power_in line + (at -6.35 3.81 0) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "4" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin output line + (at -6.35 1.27 0) + (length 2.54) + (name "Echo" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -6.35 -1.27 0) + (length 2.54) + (name "Trig" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at -6.35 -3.81 0) + (length 2.54) + (name "VCC" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "riego_lib:NodeMCU_ESP8266_v3" + (pin_names + (offset 1.016) + ) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "U" + (at 0 20.32 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "NodeMCU_ESP8266_v3" + (at 0 22.86 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" "NodeMCU ESP8266 v3 module" + (at 0 0 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (symbol "NodeMCU_ESP8266_v3_0_1" + (rectangle + (start -10.16 -19.05) + (end 10.16 19.05) + (stroke + (width 0) + (type default) + ) + (fill + (type background) + ) + ) + ) + (symbol "NodeMCU_ESP8266_v3_1_1" + (pin power_in line + (at -12.7 17.78 0) + (length 2.54) + (name "VIN" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "15" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at -12.7 15.24 0) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "14" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -12.7 12.7 0) + (length 2.54) + (name "RST" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "13" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -12.7 10.16 0) + (length 2.54) + (name "EN" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "12" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_out line + (at -12.7 7.62 0) + (length 2.54) + (name "3V3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "11" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at -12.7 5.08 0) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "10" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 2.54 0) + (length 2.54) + (name "CLK/SCLK" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "9" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 0 0) + (length 2.54) + (name "SD0/MISO" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "8" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 -2.54 0) + (length 2.54) + (name "CMD/CS0" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "7" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 -5.08 0) + (length 2.54) + (name "SD1/MOSI" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "6" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 -7.62 0) + (length 2.54) + (name "SD2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "5" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at -12.7 -10.16 0) + (length 2.54) + (name "SD3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "4" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin passive line + (at -12.7 -12.7 0) + (length 2.54) + (name "RSV" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin passive line + (at -12.7 -15.24 0) + (length 2.54) + (name "RSV" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -12.7 -17.78 0) + (length 2.54) + (name "A0" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at 12.7 17.78 180) + (length 2.54) + (name "RST" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "30" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at 12.7 15.24 180) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "29" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin output line + (at 12.7 12.7 180) + (length 2.54) + (name "TX" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "28" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at 12.7 10.16 180) + (length 2.54) + (name "RX" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "27" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 7.62 180) + (length 2.54) + (name "D8/CS" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "26" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 5.08 180) + (length 2.54) + (name "D7/MOSI" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "25" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 2.54 180) + (length 2.54) + (name "D6/MISO" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "24" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 0 180) + (length 2.54) + (name "D5/SCLK" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "23" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at 12.7 -2.54 180) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "22" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_out line + (at 12.7 -5.08 180) + (length 2.54) + (name "3V3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "21" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 -7.62 180) + (length 2.54) + (name "D4/LED" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "20" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 -10.16 180) + (length 2.54) + (name "D3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "19" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 -12.7 180) + (length 2.54) + (name "D2/SDA" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "18" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 -15.24 180) + (length 2.54) + (name "D1/SCL" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "17" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin bidirectional line + (at 12.7 -17.78 180) + (length 2.54) + (name "D0" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "16" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + (symbol "riego_lib:Relay_SunFounder_8CH" + (pin_names + (offset 1.016) + ) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "K" + (at 0 13.97 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "Relay_SunFounder_8CH" + (at 0 16.51 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" "SunFounder 8-channel relay module (active LOW)" + (at 0 0 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (symbol "Relay_SunFounder_8CH_0_1" + (rectangle + (start -5.08 -12.7) + (end 5.08 12.7) + (stroke + (width 0) + (type default) + ) + (fill + (type background) + ) + ) + ) + (symbol "Relay_SunFounder_8CH_1_1" + (pin input line + (at -7.62 8.89 0) + (length 2.54) + (name "IN8" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "8" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 6.35 0) + (length 2.54) + (name "IN7" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "7" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 3.81 0) + (length 2.54) + (name "IN6" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "6" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 1.27 0) + (length 2.54) + (name "IN5" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "5" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 -1.27 0) + (length 2.54) + (name "IN4" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "4" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 -3.81 0) + (length 2.54) + (name "IN3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "3" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 -6.35 0) + (length 2.54) + (name "IN2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "2" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin input line + (at -7.62 -8.89 0) + (length 2.54) + (name "IN1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "1" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at 7.62 1.27 180) + (length 2.54) + (name "GND" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "10" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + (pin power_in line + (at 7.62 -1.27 180) + (length 2.54) + (name "VCC" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (number "9" + (effects + (font + (size 1.27 1.27) + ) + ) + ) + ) + ) + (embedded_fonts no) + ) + ) + (junction + (at 121.92 83) + (diameter 0) + (color 0 0 0 0) + (uuid "366e28ba-71b3-4506-8c48-fceb2d381364") + ) + (junction + (at 129.54 78.74) + (diameter 0) + (color 0 0 0 0) + (uuid "81eee2da-dcf5-4618-a471-f6d50b0d7d55") + ) + (junction + (at 129.54 85.09) + (diameter 0) + (color 0 0 0 0) + (uuid "ea9620d6-a350-40e9-a3a7-31a47bad9b6a") + ) + (no_connect + (at 67.3 82.22) + (uuid "01dc83b3-a494-4ae4-9a13-8554b1ca6ede") + ) + (no_connect + (at 67.3 110.16) + (uuid "0522c9e2-bddb-404f-9ab1-3e11e9e89d1d") + ) + (no_connect + (at 167.38 153.89) + (uuid "0692daa5-f42c-4700-bc19-6e9342b1ee1a") + ) + (no_connect + (at 67.3 87.3) + (uuid "0d03d546-1f45-4311-9698-1b9332fe1689") + ) + (no_connect + (at 67.3 102.54) + (uuid "16b62431-c1f3-4862-97e0-92882416a06b") + ) + (no_connect + (at 92.7 112.7) + (uuid "222e4349-6354-4821-9d58-27c38884df6c") + ) + (no_connect + (at 92.7 102.54) + (uuid "2421ea18-c349-4951-b6b5-b0018fb77484") + ) + (no_connect + (at 92.7 107.62) + (uuid "27cfea11-5e87-4ca3-82f8-3f8ca5b13a72") + ) + (no_connect + (at 92.7 117.78) + (uuid "2a1ca708-357c-4b87-9ee3-ed7e174f0c18") + ) + (no_connect + (at 67.3 92.38) + (uuid "2f307d86-4e8b-4d65-880a-0d3ed9c87385") + ) + (no_connect + (at 92.7 92.38) + (uuid "2ff74317-d72d-462e-8407-5d900da00fc7") + ) + (no_connect + (at 167.38 143.73) + (uuid "3c39ef8d-6027-4829-ab75-f08f4d45465f") + ) + (no_connect + (at 167.38 151.35) + (uuid "5a77c755-9b49-44f0-807f-d4c39675c363") + ) + (no_connect + (at 92.7 110.16) + (uuid "662ace95-a6b7-44a4-be5f-03df39f7c38d") + ) + (no_connect + (at 167.38 138.65) + (uuid "6a8d243a-d24a-4fb0-888e-ebda7ea5ba39") + ) + (no_connect + (at 167.38 146.27) + (uuid "70067450-7091-48ec-bce1-2af561f1d569") + ) + (no_connect + (at 92.7 82.22) + (uuid "791836de-a7ed-422b-9f5c-1f7e28131f9e") + ) + (no_connect + (at 67.3 84.76) + (uuid "8f8d5f5b-e782-4ddc-82b6-1d37441c5c3a") + ) + (no_connect + (at 67.3 97.46) + (uuid "a5381858-47d3-4280-9cb8-015e3c393c5a") + ) + (no_connect + (at 92.7 89.84) + (uuid "a75853ca-49b7-4b8f-b721-4619277a0494") + ) + (no_connect + (at 167.38 148.81) + (uuid "ab2f7060-0ffa-42ff-8ed6-40c08bd7a8ff") + ) + (no_connect + (at 67.3 117.78) + (uuid "ac57a3d2-3139-4324-b8db-e64a03f7b740") + ) + (no_connect + (at 167.38 141.19) + (uuid "b98503a3-48b1-494f-b710-1c76b7389f02") + ) + (no_connect + (at 67.3 112.7) + (uuid "d5b22642-ecf5-48db-a298-d4cee378bda0") + ) + (no_connect + (at 67.3 94.92) + (uuid "d97f99c8-b94e-4b29-aa77-f4223ec661cc") + ) + (no_connect + (at 67.3 89.84) + (uuid "da9c1340-4072-4b13-88ac-19a04f4c01fb") + ) + (no_connect + (at 67.3 100) + (uuid "e23f4178-4687-4e35-9a98-808e5377d50b") + ) + (no_connect + (at 92.7 105.08) + (uuid "e68bf02c-01f1-4222-a29b-88e8796cfcbc") + ) + (wire + (pts + (xy 139.7 92.71) (xy 139.7 106.68) + ) + (stroke + (width 0) + (type default) + ) + (uuid "14344972-1726-4117-afb3-71b2ddd6bc10") + ) + (wire + (pts + (xy 140.97 92.71) (xy 139.7 92.71) + ) + (stroke + (width 0) + (type default) + ) + (uuid "33836e09-86dc-4de0-b888-0a3e7358635e") + ) + (wire + (pts + (xy 129.54 78.74) (xy 137.16 78.74) + ) + (stroke + (width 0) + (type default) + ) + (uuid "4cca352b-3b46-45aa-9f13-d4adda626e75") + ) + (wire + (pts + (xy 129.54 73.66) (xy 129.54 78.74) + ) + (stroke + (width 0) + (type default) + ) + (uuid "5d835f1c-8ffe-401e-8df5-1e0eab34f42e") + ) + (wire + (pts + (xy 121.92 83) (xy 121.92 105.41) + ) + (stroke + (width 0) + (type default) + ) + (uuid "70cfa85c-58e0-43d0-97c3-0e9aafc44943") + ) + (wire + (pts + (xy 121.92 73.66) (xy 123.19 73.66) + ) + (stroke + (width 0) + (type default) + ) + (uuid "7ad3fb3b-35ce-40fc-ac39-fca0bdce0ceb") + ) + (wire + (pts + (xy 123.19 83) (xy 121.92 83) + ) + (stroke + (width 0) + (type default) + ) + (uuid "866098ac-670f-452a-a8fa-a8f597f4ce8c") + ) + (wire + (pts + (xy 129.54 85.09) (xy 129.54 105.41) + ) + (stroke + (width 0) + (type default) + ) + (uuid "896e9a77-09be-4fd6-b4cd-38d80e1c0ae0") + ) + (wire + (pts + (xy 129.54 78.74) (xy 129.54 85.09) + ) + (stroke + (width 0) + (type default) + ) + (uuid "97aed427-130f-408b-8e7d-a17fad691d82") + ) + (wire + (pts + (xy 123.19 73.66) (xy 123.19 83) + ) + (stroke + (width 0) + (type default) + ) + (uuid "9b429ca9-fdb9-4b57-a566-7517d5a5ca56") + ) + (wire + (pts + (xy 140.97 85.09) (xy 129.54 85.09) + ) + (stroke + (width 0) + (type default) + ) + (uuid "a39d0f9c-7ec2-482e-9206-19fc9cf91941") + ) + (wire + (pts + (xy 139.7 106.68) (xy 140.97 106.68) + ) + (stroke + (width 0) + (type default) + ) + (uuid "ae25aa16-0826-423e-9956-543275ca2ef7") + ) + (wire + (pts + (xy 121.92 83) (xy 114.3 83) + ) + (stroke + (width 0) + (type default) + ) + (uuid "b0bfbb2c-09d8-4ffc-8c6f-072857441544") + ) + (wire + (pts + (xy 114.3 83.82) (xy 114.3 83) + ) + (stroke + (width 0) + (type default) + ) + (uuid "fe131879-5b9e-4223-8997-ecda70a809cd") + ) + (label "D1/GPIO5" + (at 167.38 136.11 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "0b5b9d73-855c-414e-aefe-355c956e840d") + ) + (label "D2/GPIO4" + (at 114.3 83.82 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "71e5966c-9ddb-42a6-8941-5723176f5738") + ) + (label "D5/GPIO14" + (at 168.65 78.73 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "72ebd9d4-f356-434e-aa76-4a078a19a8f4") + ) + (label "ECHO_DIV" + (at 168.65 81.27 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "76b5f0a1-a320-4dc2-80b7-e01d6223f452") + ) + (label "D5/GPIO14" + (at 92.7 100 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "ce2b039e-fde0-43bd-b8c1-af7704e0ec5f") + ) + (label "ECHO_DIV" + (at 137.16 78.74 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "d8451973-7e95-40cc-803b-1bb8e6609d6f") + ) + (label "D1/GPIO5" + (at 92.7 84.76 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "e3a2f6ca-bdd0-4005-a786-9435334e8270") + ) + (label "D2/GPIO4" + (at 92.7 87.3 0) + (effects + (font + (size 1.27 1.27) + ) + ) + (uuid "ebc77cdf-bb80-4194-adf2-54158b4151fc") + ) + (symbol + (lib_id "riego_lib:NodeMCU_ESP8266_v3") + (at 80 100 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "0774f576-a659-4d97-bbd6-2004006cec4e") + (property "Reference" "U?" + (at 91.5 79 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "NodeMCU_ESP8266_v3" + (at 80 121 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 80 100 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 80 100 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 80 100 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "2900397e-3864-414e-9060-5a47d51a56de") + ) + (pin "2" + (uuid "42ebabfb-9ae6-47d4-bdf2-6ac752577981") + ) + (pin "3" + (uuid "7ad92593-46e9-494f-9ab0-caa0934cd3ea") + ) + (pin "4" + (uuid "2570175f-65ff-4b1c-adf4-15533464e412") + ) + (pin "5" + (uuid "621b0a5d-35fd-4279-96fa-6966a839d2cc") + ) + (pin "6" + (uuid "aa57a898-7ad1-434c-9adc-98876e2c2758") + ) + (pin "7" + (uuid "9390d371-cdb2-4083-a9e4-43dc15885370") + ) + (pin "8" + (uuid "b84667e9-c84a-4d6e-90b2-347fca116c86") + ) + (pin "9" + (uuid "4e8453ee-9298-4a2c-9124-eae49bb5e029") + ) + (pin "10" + (uuid "1e687d9e-8506-4741-a673-d46039e20b7e") + ) + (pin "11" + (uuid "88e48c7e-2150-443e-845d-da106c4ecdd7") + ) + (pin "12" + (uuid "d892d99c-89ad-49ce-a143-4b6f864030b5") + ) + (pin "13" + (uuid "1b3d63d8-85a0-4b43-a072-87a93f90be99") + ) + (pin "14" + (uuid "17fc21e2-51cf-41e9-ae21-730cee89b413") + ) + (pin "15" + (uuid "54554c5f-bef9-4eaf-bda5-6855adfc612a") + ) + (pin "16" + (uuid "7d275b9f-8f9c-4fb5-a2a5-a611f708b120") + ) + (pin "17" + (uuid "62eb058d-4357-4988-87b8-8a9fde65c76e") + ) + (pin "18" + (uuid "692bcadc-1b84-4ab6-8ab6-ec1b939d387a") + ) + (pin "19" + (uuid "f3c0eada-6bcd-4809-86e4-4f734d028a53") + ) + (pin "20" + (uuid "b8f36247-f0c4-4f28-9c48-142541b62a98") + ) + (pin "21" + (uuid "d3a10157-b671-47de-a874-e61d53337adf") + ) + (pin "22" + (uuid "8a0897fd-fbe9-4b6c-ae4e-5587a2d74733") + ) + (pin "23" + (uuid "870a716c-6527-45a8-abac-c64bb46e7c6d") + ) + (pin "24" + (uuid "95fd3512-8dbf-4ae6-884d-58f1968a374c") + ) + (pin "25" + (uuid "276be60a-84fe-48ee-a9d5-05a31700764c") + ) + (pin "26" + (uuid "670836dd-683c-4fb4-99f1-1860d4c66418") + ) + (pin "27" + (uuid "fa21f0c5-10bd-442d-8a1c-4a1d4050fc27") + ) + (pin "28" + (uuid "b265d8bd-8532-447d-88fa-9e0002da36b4") + ) + (pin "29" + (uuid "a6540d98-1bf0-4b06-aabc-e75b5348cf32") + ) + (pin "30" + (uuid "e3ac0bb7-5268-4f49-98de-d2e5ed928b33") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "U?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:+5V") + (at 182.62 143.73 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "1cbc8360-2b0c-4437-b15e-18bba85eb1fb") + (property "Reference" "#PWR?" + (at 182.62 143.73 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+5V" + (at 182.62 139.92 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 182.62 143.73 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 182.62 143.73 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 182.62 143.73 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "de1f9e7f-3a59-4a83-9223-753b91d4d604") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "riego_lib:HC_SR04") + (at 175 80 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "28609d69-760d-45ce-8225-2e822bbfd5d6") + (property "Reference" "US?" + (at 180 73 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "HC_SR04" + (at 180 76 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 175 80 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 175 80 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 175 80 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "bb28757a-d03a-4119-aff0-477c35fafa43") + ) + (pin "2" + (uuid "4d97e0b9-8d06-4823-951c-04b7178a3774") + ) + (pin "3" + (uuid "966ba1ed-1c65-4b70-834f-7fedb2c764ca") + ) + (pin "4" + (uuid "754f366b-4c05-4c64-b0d7-6d8d5ff7ff91") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "US?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 92.7 115.24 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "387fc5d5-a7bb-4021-bf40-bdb5b2b0a632") + (property "Reference" "#PWR?" + (at 92.7 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 92.7 119.05 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 92.7 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 92.7 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 92.7 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "0aaaf64d-d1be-4196-ba67-c0c805e8539a") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:+3.3V") + (at 92.7 94.92 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "45234073-7066-4281-beb9-d25a64d5a081") + (property "Reference" "#PWR?" + (at 92.7 94.92 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+3.3V" + (at 92.7 91.11 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 92.7 94.92 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 92.7 94.92 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 92.7 94.92 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "a3e87da1-efae-4c18-b8df-930f54f6fb39") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "Device:R") + (at 125.73 105.41 90) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "4800f9be-3a3f-4e98-b1b8-fd60f1287725") + (property "Reference" "R1B?" + (at 125.73 102.87 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "2.2k" + (at 128.27 102.87 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 125.73 105.41 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "~" + (at 125.73 105.41 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 125.73 105.41 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "74f8014e-7637-410b-96fc-fee219371d58") + ) + (pin "2" + (uuid "e52beb0d-2a90-4d56-a5fa-c8e208cf19dc") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "R1B?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 67.3 105.08 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "4aac6887-287a-408e-80c1-45da358de547") + (property "Reference" "#PWR?" + (at 67.3 105.08 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 67.3 108.89 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 67.3 105.08 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 67.3 105.08 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 67.3 105.08 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "4a93e62c-b8a0-4242-b6f7-574c480070cc") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 168.65 83.81 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "66e19b62-656d-4763-a9f7-ed808b11414e") + (property "Reference" "#PWR?" + (at 168.65 83.81 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 168.65 87.62 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 168.65 83.81 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 168.65 83.81 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 168.65 83.81 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "55f7aa64-3e3f-4020-9520-6fed79f4c2b1") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 182.62 146.27 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "6dbd74b6-8848-424b-92d8-a9ff4bfff17a") + (property "Reference" "#PWR?" + (at 182.62 146.27 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 182.62 150.08 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 182.62 146.27 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 182.62 146.27 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 182.62 146.27 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "928c43ec-8406-46c2-b1d6-adb4665f6331") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:+5V") + (at 168.65 76.19 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "6fbe1a59-b32d-4ddb-b46a-c7a870ad8f29") + (property "Reference" "#PWR?" + (at 168.65 76.19 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+5V" + (at 168.65 72.38 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 168.65 76.19 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 168.65 76.19 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 168.65 76.19 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "8388a86d-993d-453a-9afe-8c2f35940940") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "Device:R") + (at 140.97 88.9 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "88c59b33-3597-4e64-ba7d-64432fe805fe") + (property "Reference" "R?" + (at 143 88.9 90) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "2.2k" + (at 145.54 88.9 90) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 140.97 88.9 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "~" + (at 140.97 88.9 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 140.97 88.9 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "306a0e57-1494-49df-8d6c-8598a8712175") + ) + (pin "2" + (uuid "6a94d9ae-68fd-4161-9810-e0888635d087") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "R?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 140.97 106.68 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "8d474414-8c48-4308-9860-f18035bf67f9") + (property "Reference" "#PWR?" + (at 140.97 106.68 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 140.97 110.49 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 140.97 106.68 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 140.97 106.68 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 140.97 106.68 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "2e24bd64-93fe-4b7a-9000-95e21a59e317") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:+3.3V") + (at 67.3 107.62 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "9c626d15-9c3e-4631-aa5f-7a123f016122") + (property "Reference" "#PWR?" + (at 67.3 107.62 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "+3.3V" + (at 67.3 103.81 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 67.3 107.62 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 67.3 107.62 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 67.3 107.62 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "a8a02f9c-b4e4-4e3a-9c12-7aad1d80d80a") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 92.7 97.46 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "c2935d61-302a-46eb-ab5f-edc2b3a6419e") + (property "Reference" "#PWR?" + (at 92.7 97.46 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 92.7 101.27 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 92.7 97.46 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 92.7 97.46 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 92.7 97.46 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "776398c9-d6b4-4023-b7a7-02b76c8d4322") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "power:GND") + (at 67.3 115.24 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "cca118c0-2a83-4a8c-9f47-a6326e953aed") + (property "Reference" "#PWR?" + (at 67.3 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Value" "GND" + (at 67.3 119.05 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 67.3 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 67.3 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 67.3 115.24 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "b3c791f2-e949-4ecc-a0df-6db29ae75f5e") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "#PWR?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "Device:R") + (at 125.73 73.66 90) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "f08eecf5-5070-4498-8930-3d081254c364") + (property "Reference" "R1A?" + (at 125.73 71.12 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "2.2k" + (at 128.27 71.12 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 125.73 73.66 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "~" + (at 125.73 73.66 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 125.73 73.66 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "07cefc2b-3117-4441-9012-0e35eec508cb") + ) + (pin "2" + (uuid "803a2d3f-6c54-474e-b5e7-056e0b09cd1c") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "R1A?") + (unit 1) + ) + ) + ) + ) + (symbol + (lib_id "riego_lib:Relay_SunFounder_8CH") + (at 175 145 0) + (unit 1) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (dnp no) + (uuid "f331a1ed-018c-474c-913e-c86a3d00a413") + (property "Reference" "K?" + (at 181 131 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Value" "Relay_SunFounder_8CH" + (at 181 134 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (property "Footprint" "" + (at 175 145 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Datasheet" "" + (at 175 145 0) + (effects + (font + (size 1.27 1.27) + ) + (hide yes) + ) + ) + (property "Description" "" + (at 175 145 0) + (effects + (font + (size 1.27 1.27) + ) + ) + ) + (pin "1" + (uuid "ae733ed2-7680-47a6-b3df-63ba4c372bee") + ) + (pin "2" + (uuid "647d812c-1b25-4e8c-8d34-eab4ceafc63f") + ) + (pin "3" + (uuid "c0d83486-1859-4233-b276-cc6dff1b4c36") + ) + (pin "4" + (uuid "e0a4201f-4a99-4b82-8e22-3bce0b56e69d") + ) + (pin "5" + (uuid "0e2f82ca-ddc8-45c3-8a60-157d823d526f") + ) + (pin "6" + (uuid "452a82a6-aca0-4ad8-91e7-bd8c8936e503") + ) + (pin "7" + (uuid "77467cab-b8c7-46f6-9cde-2802374ae76a") + ) + (pin "8" + (uuid "1741c463-1d83-4b41-afaf-708109dd4d46") + ) + (pin "9" + (uuid "f0d1b623-1e6c-43cd-b06a-8f3a536100f0") + ) + (pin "10" + (uuid "ae7c0005-eab0-4ab5-ab15-f257be628c6a") + ) + (instances + (project "esp8266" + (path "/7a344e0f-c2fc-4d3e-bc0b-91420c86692d" + (reference "K?") + (unit 1) + ) + ) + ) + ) + (sheet_instances + (path "/" + (page "1") + ) + ) + (embedded_fonts no) +) diff --git a/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_181812.zip b/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_181812.zip new file mode 100644 index 0000000000000000000000000000000000000000..e1b844e6b57b86b7a1af82dea183201fda5152d6 GIT binary patch literal 8048 zcmZ{p1xy{x)@X4K#hv2r?i6>IBE=4Ha1QS76nA%bDPE+wySr;~ckk;>Uf#X`{l7Pp zNoJB++1Z&)GHbSqJTwdz1Ox;C0xh8m*h;KTEc|z+^mm~D9i~q9yzJcE%vNAyLlXmg zW23p@Nd+Z^a26RQ)oEIJCi=CRY)0#&SrqgZp$}&+F)_E5Bgj{#4_JdbSq`?!=X7DA_Tpfo~@}x6tLj z;Bc2a{Us2eBZV*P%C+L~4F|A3quKzEXyKE`)yDD5@G=u-u}s=zEeXhK^wIWP(h1_| z#K`40sgw4SLU5d7RCheU&SK=Y-=A6L7Bz}A_g>Pd2;DI&m=iu{3sCYC{m2n&VKL$o zl@4>iUSk4bg0Zvtj=pvKgXeuo8Vv@sY%ij27SoG48O`x5L6Zk zM|_PrE2^L!t;4s-CA4vKCeU#riaXpe5#bf8&nO}(J??a?s!>e?Z^ccJJv_U>q%95f zC|F>U8~G6SM@gYr>Xc^S#G~Rwq!#ZyE@z%WpQcr@aK{SB*~Lr@Ec6v2TIg?%Yfnxe zBJ+q*pW#3lHAMS&Tgr|%P6)~LkQZtI!WYttcn4JAZSg;~xo}5mpHeFbNb1t!YR)F9Shp8Y7 zIgu(!cLvbYFB3`JVng}lq9jto8$qDF8wi!qLx}*cPMv$(qxbAH-R~YAY$8KU+E`*_ z9u=}NT7oMgRR?4;0iIjd_z+SO=kmzV6&^QEQK|*FdQr^QVI8r5> zpXo(zq#Csr=SwTlqetkH4bK^xW#^4$_LQ%RO)2Zj+4P~vU1si#u1OtY1 zDwcr!u^rDMbH*oV4Q2x@LNL??QE?;0lP5UI-)3sFNh044ka^--%c`%N6KwPJ9A8A; zLB5EW2CSdro zr>dBH4IkusM;%ZTAW2t0wh4*Y5gxi=jF3jN#5{-9ok<_Ribr&zkoN5#>ulm>hA1d- zrZwku@pd@%%RDAtX?%BB$|_wj4ZHK^Pl3Zmxn0+~9(Jz|-{^+DomTwQh^{m7<^9@z z-8_Pi>GmUzsMQ|2{Sy@#?vG5N-z0dR($R3Uxa*#zXjIB)GH`3*y*R-|w940XCGaN| zX?w=jV-jo=5N8LKoH=fr1EUKdR^wfdcZD2@>4=FRjhI>0N+R{Mz4`%UXxvJPkX2$5 zJm?XDdVS*glFqkt6z#3efH3MHVLKx@5jbM-ffiLD6EqNMZzYM$aBNLHgS`6--r;t5 zx|r_rm{_BO@tuUz{7>0-ijQ2i(5o$*tXj7Ir!B=dNk!{Ij*z&iW_v>A!8nq6sSKP3 z0NPJT+Y$1117BI}eZ_E51Pa9-T}9I6!#L22POtG6Cy^=-O#@GjAUQQzV_<{N91f$Q z=DIuZSF>s6IKi!WAbgNBV3BLW1`4)HjrsV<((!I9rnfTkw5XRTlG*RWrh>o}mD@`; z6~hMK#u%L&H7SpZxjBJLeCTN0F!lP&7En;%+;%U*D$x%$a#^4}_|JIJ$#6EVQ2y$9 z5d22vX3Ig9jrYQ7sY@&whpBJj#ARo;OO!Q%6^z+)-DGnR`{!5Xu~@8Kplu)u;wGG? zeXW|taxL7cI!H4|iK}GeV0qn~-*|EFY1G^o=(lO*6YqW%U!;&ZMZk`{%;?*msPJf6 zI#BACc+5d#m`&`6eszEDto(83B0M>q#C^6qG|;O1_9TCHmwtNjVJy0;?H8-z+_(&gMtI&;~qo=XqG)jhQJ|!GrpkrXvJF=;sLT~uZEx~ zM1p++AcE65)U>n)tWZo!igCnXgbB*A#Ph9zEeLx#u>A!*}wk0&=txsi!FCQal z`1SRgYrBFlZUC?T+Ut(?tW>x>9PiX3O%dy}n9ptuFSFo&TZ2(1$}p;pddH@ZOd{UR zCRW~NC+spb4ml`#UYM(2{bE%aXe61YdR|UavhZ9>$^@Qjy88A|vfGSdk-uzkzW!_< z5LhmNV)8bMWs|jbNvy1G1usRUdZcBN{y3ik_K_DE~q)afK^1H;d zQ>eB-Ab*}3evp8d{|1R_z9gzF%C@oGbRXkJl&5Vb--S=eqlarhhB|nYp=4BKh+iTeH~3e6_vlgI?56x4qd*GCr)!YI&UdSSj{z=s2Xu zYdHs&ng-<8uPo)A^QIW_XR`NZK4yq~`f~zXV(qkwp)6{zOz(RqJsyvbMn84lN1z#) z$sW6vhRxouX8MLwmr%3itqMRk|(2J^jQd^!#jQ)Lx# ziO&|=Icz zVYvK%Afwc!f{TA8?O>LN%0=I5Eiq29b>^^D{DD)kpy%mDMLN|JhbZs=E_ED>p+&1g!VDGWU;Qjo0j)x_;-TmX3 zd}(Oh!%&l}JVH}hZi9&jcTn^MgFBu%)rH<2`^p{4|riA7|8)Ba`ftqJ{?#I*Z zFskbENL`#6bHEe8%@>QBf%x8r6}#-@JFMzzCcPdcMZ_1?ZvA2!RqQwy+!d2OhZ+;z zM4Ml_U(WJsLiaZcAHQXgo(A=E?LEqpykYS9`h!xEwliae-|qH*XI^f;-OhCkqy4Oe zL-!rD5nz%CbiV8p_IiF#g7v>EPWH1EyznkHars!%WGRvG_=qj_`*XbFbaQ^H$pYB! ztOgzsFt{b2jhvbr=rq}dayY9NA>6#zWSckUAGl|y7zbu06~5k0hI5z1gN?ID9;@uR z%aI6rKI3u+y2Mv?dnI58xZ^?vB^|wa^bq`s^Y=nt@OUa{@m2F7&-Miqd ziAK^W*(vo_1yr{c=qrulD|o zd>qxfIigY8?X*~T!T(;5T8?78ZrRG-{nE7zKi++zH$7?zG|%l(lf0f``H_Y>)Fj48z}_L z8!SssT5s_WZq+MpI_TWK}8z`U+8-M z>1#JN<~~Z+k#1<^t8vJMTUL@Ha6BL<1Sl*sPJMNVNfGj^4+XdqX0fi z&+gMA$qgY~a-mu?d~D^OtU0^}>XB)KtJ^B+wMIJo)oMn;mylURi>E)az2dr{?Ca!zPWI zU_Gv|ICa+x5(sn!t>Rv+6U&eNb!Sk3sI}=NV$cAo{WJB_XM+Nezg7`LJV`P*{Su-c zXo>B4QSWkXi{rvXNWzEj*ogEn_sw8hF)d?8Pf-@vtPm zjT?H$NM-|lnR7uxV)r0tFH2sUm&k(q2MA?$hZI=&uRdQ-HkuXj* z$6~ZYG3l9;Rnuw{lIec$0V=X6N#8%765aHGg69*O-r{uTE`p9U z^vlAcQ0`2!_^VublHKw66o1E2-l1stSVdQKf6d^UK;PKTpw;vr%l-0uyob`xrc(&r z#H%uUwyi;oGa)y>|B&Z@sXF!**r(*LqW}I!Rd+JB(1;R631mf+T(XZSVbID8hFC48 z0f#(5N6+HxD7JSng(Ko7j{mvcRClW!Da%``FWX!Wx{q-wAdpyla5=%@J;QpRf2*7{cB-WWXPnf-XGr6oxTDmucD~tqXP_ zXMw*bWGfhk9EmSxjH(K(3VIX6(Kb*0@%RkzlU3r%#PSN^5Rb`FLW2~qi#$7-d(82= zY}J^csiB!EjWqSXZz%D&;buume6HF_LLB53tPD!^NWt~xGTU&eX6=HEfM}-jGij5%0X0dF*N;lc@C&tnx<8 zInhDHA|^ds!#XDlAB04=f(<6GE+3Lu-tX||7W^{lz&v`d6G5fxX}fQM`nAzSI^sjg zxq7`G$|($8T3p|w>E@8Z@tV^O^HrgX6l-dyMU?|@T$69M3Eyh)zZ}TzMlHNnA{pTN z3F>KJri?hRMo%6zw3A?;<_B_QFmwTxHV-ax2A1nXGA#$eIeNQ}*49zyJ>?fxQd_Yo ztcacKzq%66{A+SI;G-Lt*RQ6ZM5h<`x7ZFEo~^$HnK)caMjy+1>qs-xdP$oKLwP#e zWqUUvgbv+&EESp^HdXozenS*g0i3PN%njiFK|>jm?hAcJ0U(Zx&!??2(^?o0zEJFu zJw3fRvUTMY!%uIJ5HnTbC^hu;%8dz9dP6P|OT6qDnMBw4@F8u9jtg_E5cduZ$q|Ps z6NX;q)d+{h5(AWo;V<%PNRmyT{>Z27K%0N|1*McLted4jY?ltRzvVGHNhG~#){p0Z zbxgo=Vvwso*!n#%$I|KfK}LBp9OUW5y@d=Q+#o>}_Paj+MuZ`VQ^7}yv?%%{!l-_v zsC-0-4I~4Lf-O* z>s*4Az18jXw@TVldtA{+S8L~`Yw0su(EQ%q^Xxm$_v?Nd%kU^ zljDz5*UgwFAF6a)*B}oJ5rL1GddFd5)TK%e@?DcBT>wryrP4S+6~Q3J zF!@gall3;%c;l(g84E)v#Ff|KH;ez}Wq6a4l_1x&N# z(ipFt&ut8#w30k-nM<`22_2R&uB^l~5A^~WNv5{QmbLqpm?G)l+g8XJdcTY-hKHfOrIXnZCf%6EVvC~ZPyI7Y=tZjpv#`$?Qb8; z=~`}N9p$Qw!ey}85eg{9V5bITO2t|eGb$)^kO7}tPBL zV>+ru=BY6T@>Vm&3t5m(eJbdq7}au^oP%!}k@jh!p)fZOSF62UE{`oa9Ma31n(A!@ ziHTw1MBm|36$L)v6E+0nBJ^51;RdQ^s!Sa#Zcc@H4OJHL&3WzArJO|9xB@;A?&p+zy;ML=*uO=@NIYbeQhH4Zx%tiEK%#jWDb|{xzGw*=4G-tz8oR@7B&+MNT&F$DzvfB~50Jzmrsuoo7iX^4{a`I_ zz(t$(1KZrAcF15q4JHx(98mikF6>o`N=^ZCJ*&k?kam;o+}e*NOiua$etD+;ykQl9 zq-cA@_kAKg=3W?j8zFx)qek58X@S!cb8E&>>eamAM^>A#XS+K_`@qP!pz&_MBY&&d z@SFhxfS6Sl-4AL3>ilfy9qP)Ww8pZOZ?tzrNE>ycQgiuK8HT^}I}3|52+t+GGm-}P z9Wai=vRr>9XObOUsxj#%YSaaoB*v|NS5UF|79VGg!|gs5B&eQ$eUHJ2>CJc_UX}t> z(Fp`8&|oP;>fzTTfO4*x9kcsH2h^e;$ceQIZAuPZs}^e232>fmDv;UzaxKUC^N~Hn zx=p0UPN05iFkKlniX$)Z*)^=XB@Rq7YucEDx?MHO*4B$X$ALVvdKdZU)q3~?VOaPU zq%(-qwEprIl5_~GUreJ-imzq_RTdc_1Q|D`DY|*-QWXcyAt)`kop8M_@t4}yq1dGL%v}XIeMk?DaSa1*L zo(ncc&((WhR2NCbim1Y!G&S3_e;@@|;EMMWsYGqLt*u!tyv@#b-7lxRD)b^c3Hhd z5!-T1SSZh>1}2$ym1v9#7?eRm6rrVOc*LA?MtH+XvOQu$2X`={G}Wd{9tohwm&H-5 z&W~DYtA;=7{Qj2X>1@l&$YI}uhB6hDx{6W6B&lWN8R0yi=9uQ^Y38Xwm0zHOl4%hJ zdXg56WaSJSOe0jCmh@aAOMi(wjr}xVYS8|4W3@Q4K_qd7W|KQQJlEKMwN&}MFh7*V z4Rr#!GR+Zp7=cqAZiHWl;c`xFlu3aVo#L4|hOAW;T+|1T=YpdItxjauk^>w z=rhU!eU~m*Va);EpNEyp=B`$7UHD?qLHw}#JHOR*RFM#Gg+oQL3}QKT*$W`l7%-M~ zl87B6mDUJ<(Q4`Yc59HSXHcE5%~mwiZB0y}{9V&t^-wI(6iKgx{cHcraM;P-t}f6= zE9gbFBxCaHH{ik!2Bf4wasVyK_TX6oV+m@cjbXW-Rt&OS9ciS3%r{Yf6~;oSR}6^> zy&1<7mm43e{AN49)BC9da05>hRy)0Tg;oWW+p`OAQGj<$|-9h^FCwmYWBsABayd= zE!!PAGi@*q@IWe?!z;H8Y zq*Sr^qcc=Iv=_UbBPruorxXKoz#@wYr$MJ}ysAu`g;z^wYmSe;A4A~aDEIlTqmR3h z#SKS%G>aGpv#7_NiNz2YC61g-r>6Zd{et38ssWo!3CV{CUwG&9#L^ZwamTK%pDT1V z-fYIW`;fQn_h%r9JyKj6J?s(4P%mnc)s0`}@jDD=Y!%|G;a4Vh7;?w-#xkU)i&I3R z@SjNenQ4*5%ALw_*4NZ5X19Y&oPpIAtBeosYse7|tdu-cVPVDJSj!+$72#cI64b*$ z6Y~d4>*rzzf8ScbXYKI~mR~gjUs`8M3tukSn}yMbmZp3kNL1t@p-3VA|0UwTmi8a* ze-(`X6aS~0@4s2wztjK19qs-b|L-54f8#ZO3(5bDTmL8iPtyEvyz;MZ{!jd`Z~iC# gPkQ=q+#l_K$*PJxEZn~~!2a!gkPr}L#Q$3TA52>NK>z>% literal 0 HcmV?d00001 diff --git a/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_182653.zip b/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_182653.zip new file mode 100644 index 0000000000000000000000000000000000000000..db8a7d1464c2ce036f59ac98da7cc466a9fd9d83 GIT binary patch literal 11743 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 R6TtuOoWMXp@wERv`!9dUHj@AV literal 0 HcmV?d00001 diff --git a/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_185243.zip b/esquematico/esp8266/esp8266-backups/esp8266-2026-05-12_185243.zip new file mode 100644 index 0000000000000000000000000000000000000000..9bdf953102604bc3e330efdd7a0f1d6ca60f1b13 GIT binary patch literal 14359 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 M!N7(&{%7>R02XU>^#A|> literal 0 HcmV?d00001 diff --git a/esquematico/esp8266/esp8266.kicad_pcb b/esquematico/esp8266/esp8266.kicad_pcb new file mode 100644 index 0000000..c547853 --- /dev/null +++ b/esquematico/esp8266/esp8266.kicad_pcb @@ -0,0 +1,2 @@ +(kicad_pcb (version 20241229) (generator "pcbnew") (generator_version "9.0") +) \ No newline at end of file diff --git a/esquematico/esp8266/esp8266.kicad_prl b/esquematico/esp8266/esp8266.kicad_prl new file mode 100644 index 0000000..18d542a --- /dev/null +++ b/esquematico/esp8266/esp8266.kicad_prl @@ -0,0 +1,131 @@ +{ + "board": { + "active_layer": 0, + "active_layer_preset": "", + "auto_track_width": true, + "hidden_netclasses": [], + "hidden_nets": [], + "high_contrast_mode": 0, + "net_color_mode": 1, + "opacity": { + "images": 0.6, + "pads": 1.0, + "shapes": 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": [ + "vias", + "footprint_text", + "footprint_anchors", + "ratsnest", + "grid", + "footprints_front", + "footprints_back", + "footprint_values", + "footprint_references", + "tracks", + "drc_errors", + "drawing_sheet", + "bitmaps", + "pads", + "zones", + "drc_warnings", + "drc_exclusions", + "locked_item_shadows", + "conflict_shadows", + "shapes" + ], + "visible_layers": "ffffffff_ffffffff_ffffffff_ffffffff", + "zone_display_mode": 0 + }, + "git": { + "repo_type": "", + "repo_username": "", + "ssh_key": "" + }, + "meta": { + "filename": "esp8266.kicad_prl", + "version": 5 + }, + "net_inspector_panel": { + "col_hidden": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "col_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ], + "col_widths": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "custom_group_rules": [], + "expanded_rows": [], + "filter_by_net_name": true, + "filter_by_netclass": true, + "filter_text": "", + "group_by_constraint": false, + "group_by_netclass": false, + "show_unconnected_nets": false, + "show_zero_pad_nets": false, + "sort_ascending": true, + "sorting_column": 0 + }, + "open_jobsets": [], + "project": { + "files": [] + }, + "schematic": { + "selection_filter": { + "graphics": true, + "images": true, + "labels": true, + "lockedItems": false, + "otherItems": true, + "pins": true, + "symbols": true, + "text": true, + "wires": true + } + } +} diff --git a/esquematico/esp8266/esp8266.kicad_pro b/esquematico/esp8266/esp8266.kicad_pro new file mode 100644 index 0000000..8e61510 --- /dev/null +++ b/esquematico/esp8266/esp8266.kicad_pro @@ -0,0 +1,619 @@ +{ + "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": true, + "text_position": 0, + "units_format": 0 + }, + "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.8, + "height": 1.27, + "width": 2.54 + }, + "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": [], + "meta": { + "version": 2 + }, + "rule_severities": { + "annular_width": "error", + "clearance": "error", + "connection_width": "warning", + "copper_edge_clearance": "error", + "copper_sliver": "warning", + "courtyards_overlap": "error", + "creepage": "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_filters_mismatch": "ignore", + "footprint_symbol_mismatch": "warning", + "footprint_type_mismatch": "ignore", + "hole_clearance": "error", + "hole_to_hole": "warning", + "holes_co_located": "warning", + "invalid_outline": "error", + "isolated_copper": "warning", + "item_on_disabled_layer": "error", + "items_not_allowed": "error", + "length_out_of_range": "error", + "lib_footprint_issues": "warning", + "lib_footprint_mismatch": "warning", + "malformed_courtyard": "error", + "microvia_drill_out_of_range": "error", + "mirrored_text_on_front_layer": "warning", + "missing_courtyard": "ignore", + "missing_footprint": "warning", + "net_conflict": "warning", + "nonmirrored_text_on_back_layer": "warning", + "npth_inside_courtyard": "ignore", + "padstack": "warning", + "pth_inside_courtyard": "ignore", + "shorting_items": "error", + "silk_edge_clearance": "warning", + "silk_over_copper": "warning", + "silk_overlap": "warning", + "skew_out_of_range": "error", + "solder_mask_bridge": "error", + "starved_thermal": "error", + "text_height": "warning", + "text_on_edge_cuts": "error", + "text_thickness": "warning", + "through_hole_pad_without_hole": "error", + "too_many_vias": "error", + "track_angle": "error", + "track_dangling": "warning", + "track_segment_length": "error", + "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.0, + "min_connection": 0.0, + "min_copper_edge_clearance": 0.5, + "min_groove_width": 0.0, + "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.0, + "min_text_height": 0.8, + "min_text_thickness": 0.08, + "min_through_hole_diameter": 0.3, + "min_track_width": 0.0, + "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_onpthpad": true, + "td_onroundshapesonly": false, + "td_onsmdpad": true, + "td_ontrackend": false, + "td_onvia": 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_pairs": [], + "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", + "different_unit_footprint": "error", + "different_unit_net": "error", + "duplicate_reference": "error", + "duplicate_sheet_names": "error", + "endpoint_off_grid": "warning", + "extra_units": "error", + "footprint_filter": "ignore", + "footprint_link_issues": "warning", + "four_way_junction": "ignore", + "global_label_dangling": "warning", + "hier_label_mismatch": "error", + "label_dangling": "error", + "label_multiple_wires": "warning", + "lib_symbol_issues": "warning", + "lib_symbol_mismatch": "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", + "same_local_global_label": "warning", + "similar_label_and_power": "warning", + "similar_labels": "warning", + "similar_power": "warning", + "simulation_model_issue": "ignore", + "single_global_label": "ignore", + "unannotated": "error", + "unconnected_wire_endpoint": "warning", + "undefined_netclass": "error", + "unit_value_mismatch": "error", + "unresolved_variable": "error", + "wire_dangling": "error" + } + }, + "libraries": { + "pinned_footprint_libs": [], + "pinned_symbol_libs": [] + }, + "meta": { + "filename": "esp8266.kicad_pro", + "version": 3 + }, + "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)", + "priority": 2147483647, + "schematic_color": "rgba(0, 0, 0, 0.000)", + "track_width": 0.2, + "via_diameter": 0.6, + "via_drill": 0.3, + "wire_width": 6 + } + ], + "meta": { + "version": 4 + }, + "net_colors": null, + "netclass_assignments": null, + "netclass_patterns": [] + }, + "pcbnew": { + "last_paths": { + "gencad": "", + "idf": "", + "netlist": "", + "plot": "", + "pos_files": "", + "specctra_dsn": "", + "step": "", + "svg": "", + "vrml": "" + }, + "page_layout_descr_file": "" + }, + "schematic": { + "annotate_start_num": 0, + "bom_export_filename": "${PROJECTNAME}.csv", + "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": false, + "label": "Qty", + "name": "${QUANTITY}", + "show": true + }, + { + "group_by": true, + "label": "Value", + "name": "Value", + "show": true + }, + { + "group_by": true, + "label": "DNP", + "name": "${DNP}", + "show": true + }, + { + "group_by": true, + "label": "Exclude from BOM", + "name": "${EXCLUDE_FROM_BOM}", + "show": true + }, + { + "group_by": true, + "label": "Exclude from Board", + "name": "${EXCLUDE_FROM_BOARD}", + "show": true + }, + { + "group_by": true, + "label": "Footprint", + "name": "Footprint", + "show": true + }, + { + "group_by": false, + "label": "Datasheet", + "name": "Datasheet", + "show": true + } + ], + "filter_string": "", + "group_symbols": true, + "include_excluded_from_bom": true, + "name": "Default Editing", + "sort_asc": true, + "sort_field": "Referencia" + }, + "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": "", + "space_save_all_events": true, + "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": [ + [ + "7a344e0f-c2fc-4d3e-bc0b-91420c86692d", + "Root" + ] + ], + "text_variables": {} +} diff --git a/esquematico/esp8266/esp8266.kicad_sch b/esquematico/esp8266/esp8266.kicad_sch new file mode 100644 index 0000000..92c715a --- /dev/null +++ b/esquematico/esp8266/esp8266.kicad_sch @@ -0,0 +1,602 @@ +(kicad_sch + (version 20250114) + (generator "eeschema") + (generator_version "9.0") + (uuid "2f7ed679-552b-4119-867b-1f186222309e") + (paper "A4") + (title_block + (title "Sistema de Riego — Diagrama de cableado") + (date "2026-05-12") + (rev "2") + (company "Proyecto Riego ESP8266")) + + (lib_symbols + (symbol "riego_lib:NodeMCU_ESP8266_v3" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "U" (at 0.00 20.32 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "NodeMCU_ESP8266_v3" (at 0.00 22.86 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "NodeMCU ESP8266 v3 module" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "NodeMCU_ESP8266_v3_0_1" + (rectangle (start -10.16 -19.05) (end 10.16 19.05) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "NodeMCU_ESP8266_v3_1_1" + (pin input line (at -12.70 -17.78 0) (length 2.54) + (name "A0" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin passive line (at -12.70 -15.24 0) (length 2.54) + (name "RSV" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin passive line (at -12.70 -12.70 0) (length 2.54) + (name "RSV" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -10.16 0) (length 2.54) + (name "SD3" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -7.62 0) (length 2.54) + (name "SD2" (effects (font (size 1.27 1.27)))) + (number "5" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -5.08 0) (length 2.54) + (name "SD1/MOSI" (effects (font (size 1.27 1.27)))) + (number "6" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -2.54 0) (length 2.54) + (name "CMD/CS0" (effects (font (size 1.27 1.27)))) + (number "7" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 0.00 0) (length 2.54) + (name "SD0/MISO" (effects (font (size 1.27 1.27)))) + (number "8" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 2.54 0) (length 2.54) + (name "CLK/SCLK" (effects (font (size 1.27 1.27)))) + (number "9" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 5.08 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "10" (effects (font (size 1.27 1.27))))) + (pin power_out line (at -12.70 7.62 0) (length 2.54) + (name "3V3" (effects (font (size 1.27 1.27)))) + (number "11" (effects (font (size 1.27 1.27))))) + (pin input line (at -12.70 10.16 0) (length 2.54) + (name "EN" (effects (font (size 1.27 1.27)))) + (number "12" (effects (font (size 1.27 1.27))))) + (pin input line (at -12.70 12.70 0) (length 2.54) + (name "RST" (effects (font (size 1.27 1.27)))) + (number "13" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 15.24 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "14" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 17.78 0) (length 2.54) + (name "VIN" (effects (font (size 1.27 1.27)))) + (number "15" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -17.78 180) (length 2.54) + (name "D0" (effects (font (size 1.27 1.27)))) + (number "16" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -15.24 180) (length 2.54) + (name "D1/SCL" (effects (font (size 1.27 1.27)))) + (number "17" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -12.70 180) (length 2.54) + (name "D2/SDA" (effects (font (size 1.27 1.27)))) + (number "18" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -10.16 180) (length 2.54) + (name "D3" (effects (font (size 1.27 1.27)))) + (number "19" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -7.62 180) (length 2.54) + (name "D4/LED" (effects (font (size 1.27 1.27)))) + (number "20" (effects (font (size 1.27 1.27))))) + (pin power_out line (at 12.70 -5.08 180) (length 2.54) + (name "3V3" (effects (font (size 1.27 1.27)))) + (number "21" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 12.70 -2.54 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "22" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 0.00 180) (length 2.54) + (name "D5/SCLK" (effects (font (size 1.27 1.27)))) + (number "23" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 2.54 180) (length 2.54) + (name "D6/MISO" (effects (font (size 1.27 1.27)))) + (number "24" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 5.08 180) (length 2.54) + (name "D7/MOSI" (effects (font (size 1.27 1.27)))) + (number "25" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 7.62 180) (length 2.54) + (name "D8/CS" (effects (font (size 1.27 1.27)))) + (number "26" (effects (font (size 1.27 1.27))))) + (pin input line (at 12.70 10.16 180) (length 2.54) + (name "RX" (effects (font (size 1.27 1.27)))) + (number "27" (effects (font (size 1.27 1.27))))) + (pin output line (at 12.70 12.70 180) (length 2.54) + (name "TX" (effects (font (size 1.27 1.27)))) + (number "28" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 12.70 15.24 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "29" (effects (font (size 1.27 1.27))))) + (pin input line (at 12.70 17.78 180) (length 2.54) + (name "RST" (effects (font (size 1.27 1.27)))) + (number "30" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "riego_lib:HC_SR04" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "US" (at 0.00 6.35 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "HC_SR04" (at 0.00 8.89 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "HC-SR04 ultrasonic distance sensor" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "HC_SR04_0_1" + (rectangle (start -3.81 -5.08) (end 3.81 5.08) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "HC_SR04_1_1" + (pin power_in line (at -6.35 -3.81 0) (length 2.54) + (name "VCC" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin input line (at -6.35 -1.27 0) (length 2.54) + (name "Trig" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin output line (at -6.35 1.27 0) (length 2.54) + (name "Echo" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -6.35 3.81 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "riego_lib:Relay_SunFounder_8CH" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "K" (at 0.00 13.97 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "Relay_SunFounder_8CH" (at 0.00 16.51 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "SunFounder 8-channel relay module (active LOW)" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "Relay_SunFounder_8CH_0_1" + (rectangle (start -5.08 -12.70) (end 5.08 12.70) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "Relay_SunFounder_8CH_1_1" + (pin input line (at -7.62 -8.89 0) (length 2.54) + (name "IN1" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -6.35 0) (length 2.54) + (name "IN2" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -3.81 0) (length 2.54) + (name "IN3" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -1.27 0) (length 2.54) + (name "IN4" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 1.27 0) (length 2.54) + (name "IN5" (effects (font (size 1.27 1.27)))) + (number "5" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 3.81 0) (length 2.54) + (name "IN6" (effects (font (size 1.27 1.27)))) + (number "6" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 6.35 0) (length 2.54) + (name "IN7" (effects (font (size 1.27 1.27)))) + (number "7" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 8.89 0) (length 2.54) + (name "IN8" (effects (font (size 1.27 1.27)))) + (number "8" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 7.62 -1.27 180) (length 2.54) + (name "VCC" (effects (font (size 1.27 1.27)))) + (number "9" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 7.62 1.27 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "10" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "Device:R" + (pin_numbers hide) + (pin_names (offset 0)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "R" (at 2.032 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "R" (at 0 0 90) (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))) + (symbol "R_0_1" + (rectangle (start -1.016 -2.032) (end 1.016 2.032) + (stroke (width 0.254) (type default)) (fill (type none)))) + (symbol "R_1_1" + (pin passive line (at 0 3.81 270) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive line (at 0 -3.81 90) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "power:GND" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 -6.35 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 0 -3.81 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))) + (symbol "GND_0_1" + (polyline (pts (xy 0 0) (xy 0 -1.27) (xy 1.27 -1.27) (xy 0 -2.54) (xy -1.27 -1.27) (xy 0 -1.27)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "GND_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + (symbol "power:+5V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 0 3.81 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))) + (symbol "+5V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+5V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + (symbol "power:+3.3V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 0 3.81 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))) + (symbol "+3.3V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+3.3V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + ) + + (symbol (lib_id "riego_lib:NodeMCU_ESP8266_v3") (at 80.00 100.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "f4094374-2732-4014-849e-d3b4b6e6dd59") + (property "Reference" "U1" (at 91.50 79.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "NodeMCU_ESP8266_v3" (at 80.00 121.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 80.00 100.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 80.00 100.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "099713b1-4bd0-41b9-9772-f4e5d9482c54")) + (pin "2" (uuid "a0c66e6a-8858-4b1b-8070-fa073cd516f6")) + (pin "3" (uuid "ec938ac1-f0ac-4fb9-ba84-01113a1ac89f")) + (pin "4" (uuid "4edaedc4-8a26-40ce-835e-7e3295851139")) + (pin "5" (uuid "da99f4b4-0274-4e4c-854f-03dcfbee8630")) + (pin "6" (uuid "acbe6818-1945-402c-a740-a2e1bd07fa71")) + (pin "7" (uuid "e1d73a64-e14d-4909-bb64-47a18d7d7cd6")) + (pin "8" (uuid "dd112165-4af3-46cc-b7ea-6c1370e62a63")) + (pin "9" (uuid "1e8a2801-f81f-4a7d-81b2-6ddc116ccda1")) + (pin "10" (uuid "40966c16-d0bc-4684-ad30-7f18dd409795")) + (pin "11" (uuid "ca344cb7-3c71-464d-9e7b-47bc6dc9abf5")) + (pin "12" (uuid "fb6ee2a1-dbf0-4f8a-aed6-76c7e44ca9c4")) + (pin "13" (uuid "6c368f9f-3135-461e-9c17-c91f281266c0")) + (pin "14" (uuid "8c630361-cf42-4288-9484-de722530695a")) + (pin "15" (uuid "cba0b965-0eec-4e35-84b1-524a0a600c79")) + (pin "16" (uuid "7c06910e-d1f5-4106-ba7c-0d11395f259d")) + (pin "17" (uuid "3866a79f-0211-44d9-853e-3f15b6153304")) + (pin "18" (uuid "435afceb-caca-4beb-a55b-7a156c7b170f")) + (pin "19" (uuid "f4679bda-da52-4de3-848c-d7654eb3e37a")) + (pin "20" (uuid "b9d50250-44a5-4e63-957a-657573767174")) + (pin "21" (uuid "41b68337-a75d-4abf-873e-3c963512ccea")) + (pin "22" (uuid "65aefef6-3afb-45e9-a4ad-2d7219eceef5")) + (pin "23" (uuid "b7e509c4-ea0e-4321-8bcb-7f5ee046b1f8")) + (pin "24" (uuid "4a4046ad-5199-451e-ab31-207d1678efb8")) + (pin "25" (uuid "a605417e-38fe-4e64-b793-4aab51452f57")) + (pin "26" (uuid "6623724e-9f8a-4f84-bebf-1d0e0bedc2b1")) + (pin "27" (uuid "8a3da494-5279-44b5-97e8-2769fc9c6a94")) + (pin "28" (uuid "4527a719-8398-4693-89ce-0d53b3733aae")) + (pin "29" (uuid "43d2fda7-6c20-402c-8a42-3eca83c0fb92")) + (pin "30" (uuid "cf034968-8477-45ee-829e-c2318bfe5308")) + ) + (no_connect (at 67.30 82.22) (uuid "a0b7c53e-2d8e-49fc-af67-5bd885427cd6")) + (no_connect (at 67.30 84.76) (uuid "c7ae4d58-993b-4c88-9fda-6d7748868c2b")) + (no_connect (at 67.30 87.30) (uuid "c34253f8-c646-47e6-a488-a781a8c74d5b")) + (no_connect (at 67.30 89.84) (uuid "445dddf2-568c-4fd5-8f2f-e652659ea55d")) + (no_connect (at 67.30 92.38) (uuid "e2a12a62-9dea-4c3e-b0e0-7efbc72de9c4")) + (no_connect (at 67.30 94.92) (uuid "8de157d1-90ec-4e7b-88c2-886d0a016593")) + (no_connect (at 67.30 97.46) (uuid "214a8be6-081e-42e1-8fc1-a24c2bc8b19d")) + (no_connect (at 67.30 100.00) (uuid "018f48e2-7da7-4e89-acf0-bdbf41251d7a")) + (no_connect (at 67.30 102.54) (uuid "d9bea9d3-c6cf-4b93-9392-3abf59c39536")) + (no_connect (at 67.30 110.16) (uuid "1ffdbae3-421c-4d83-8b81-b1e13744d4a5")) + (no_connect (at 92.70 82.22) (uuid "9bd783e9-c48c-46ff-87bf-e880ee86a4ae")) + (no_connect (at 92.70 89.84) (uuid "d9232796-4a85-444f-b0b7-151b57e3b15a")) + (no_connect (at 92.70 92.38) (uuid "27337b75-f6a9-43e4-8057-6a6c6a6b1497")) + (no_connect (at 92.70 102.54) (uuid "68731fe7-e8fa-478d-830a-327e396035b7")) + (no_connect (at 92.70 105.08) (uuid "ed2e67e7-f71e-4f40-9857-730c4f2aece4")) + (no_connect (at 92.70 107.62) (uuid "5fcf155e-16be-442a-ad40-dc65275e6534")) + (no_connect (at 92.70 110.16) (uuid "5bb98d7e-7fe5-4cc4-b891-fb9ac357f1bd")) + (no_connect (at 92.70 112.70) (uuid "12611750-f45c-4747-8123-850d7c7a6ef5")) + (symbol (lib_id "power:GND") (at 67.30 105.08 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "90614cc9-9200-4291-ad36-506daf5b4eae") + (property "Reference" "#PWR01" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 67.30 108.89 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "4069ed1d-9be4-43b0-9552-799bc1874e59"))) + (symbol (lib_id "power:+3.3V") (at 67.30 107.62 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "047670f9-4edf-40cc-893c-43449c60af04") + (property "Reference" "#PWR02" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 67.30 103.81 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "9c3b1c19-cdf2-4ca1-8127-c24c40898562"))) + (no_connect (at 67.30 112.70) (uuid "39689861-7dc9-4caf-bcf7-a8bbfab1a5cf")) + (symbol (lib_id "power:GND") (at 67.30 115.24 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "bf8de27f-d112-4070-8ad7-8cdb72b4c36e") + (property "Reference" "#PWR03" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 67.30 119.05 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "9cd249bd-ccdd-428e-8fe2-e8ec667da17c"))) + (no_connect (at 67.30 117.78) (uuid "81441dfc-f691-4702-8919-485e1e8d3cb6")) + (symbol (lib_id "power:+3.3V") (at 92.70 94.92 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "cc4e5a3d-7359-486d-91d0-45a14a3c6308") + (property "Reference" "#PWR04" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 92.70 91.11 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "04ebe58b-4d3d-4185-b343-a68d4216d4b6"))) + (symbol (lib_id "power:GND") (at 92.70 97.46 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "364ad1ce-3636-402b-abb9-304f2a84daa9") + (property "Reference" "#PWR05" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 92.70 101.27 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "1d267a24-372b-4567-90f6-79779f866033"))) + (symbol (lib_id "power:GND") (at 92.70 115.24 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "62280304-4f55-41e7-9060-3e32ba2e033e") + (property "Reference" "#PWR06" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 92.70 119.05 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "fe400b25-8d95-4c06-bd4e-eac51f57bb43"))) + (no_connect (at 92.70 117.78) (uuid "6414bc55-3285-4ead-87b4-a3d28824afe3")) + (label "D1/GPIO5" (at 92.70 84.76 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "9c1ee272-d8ea-428d-bbeb-40afdd49eaf2")) + (label "D2_TRIG" (at 92.70 87.30 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "1e4d5d67-85e5-4a9a-a1d0-050720ac877c")) + (label "D5_ECHO" (at 92.70 100.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "334aa4e8-d111-4867-8ce1-bdc338232f7c")) + (symbol (lib_id "riego_lib:HC_SR04") (at 175.00 80.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "941a0f07-a824-449e-b83a-257930ef58cd") + (property "Reference" "US1" (at 180.00 73.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "HC_SR04" (at 180.00 76.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 175.00 80.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 175.00 80.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "61170af5-f52b-4718-add5-1a294a219c44")) + (pin "2" (uuid "b4dc9900-90b8-4300-ade8-0c1971099c62")) + (pin "3" (uuid "7a90375b-7331-44f6-bd1c-b325f09e715b")) + (pin "4" (uuid "32911b37-bf7b-415e-90e2-bf0b15e86ad1")) + ) + (symbol (lib_id "power:+5V") (at 168.65 76.19 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "f1713082-cf73-4678-91d0-03009d940b92") + (property "Reference" "#PWR07" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 168.65 72.38 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "a705dfc1-296b-4309-bb36-7c4b79f54320"))) + (symbol (lib_id "power:GND") (at 168.65 83.81 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "97d4e620-7256-4c68-b2f9-b7426670f0f8") + (property "Reference" "#PWR08" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 168.65 87.62 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "00f42a51-d65a-4362-90cd-5d080ec70aa9"))) + (label "D2_TRIG" (at 168.65 78.73 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "5bd72fcb-de2b-44bf-b81c-2bed3fcd84b2")) + (label "ECHO_DIV" (at 168.65 81.27 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "a3b81f76-7c80-4667-bfa2-9e8b6a3f43b7")) + (symbol (lib_id "riego_lib:Relay_SunFounder_8CH") (at 175.00 145.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "e749c7eb-e4a1-4545-8b54-1e3ddf8a5d0e") + (property "Reference" "K1" (at 181.00 131.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "Relay_SunFounder_8CH" (at 181.00 134.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 175.00 145.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 175.00 145.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "c3eeecb1-1504-442d-9048-ce0f5c3396c9")) + (pin "2" (uuid "8c2d5c0d-cbe2-47f5-80d8-d855fe5e6906")) + (pin "3" (uuid "1dab4807-3a6e-4d44-9384-47e4cbd8e01d")) + (pin "4" (uuid "0640cc33-e8d2-407a-9ded-dc6281c8f643")) + (pin "5" (uuid "4f2f6056-10af-41f1-bbcc-7dec1fb8b811")) + (pin "6" (uuid "9faa3128-9ffc-4168-8604-5c666cab31cd")) + (pin "7" (uuid "4adad661-f566-46a3-bf02-6503242fc386")) + (pin "8" (uuid "cdc73ace-ccd3-4f69-a228-e97521b9f8dc")) + (pin "9" (uuid "0bd7a1b5-4398-4ab9-90e2-4ae2a4306148")) + (pin "10" (uuid "dd3d70dc-3d54-4ab0-a9d8-3a3ef07eba7c")) + ) + (symbol (lib_id "power:+5V") (at 182.62 143.73 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "ab3bbc0d-f66a-48d9-85e4-b229642cb29d") + (property "Reference" "#PWR09" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 182.62 139.92 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "90979a1c-a2bb-468c-9db8-233a76c2ec80"))) + (symbol (lib_id "power:GND") (at 182.62 146.27 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "2bfe8a0c-8366-4f1f-983c-342518713f82") + (property "Reference" "#PWR10" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 182.62 150.08 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "6766b538-ca32-4e2a-a5c7-3bbc0b9a01c0"))) + (label "D1/GPIO5" (at 167.38 136.11 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "d28703e8-5c80-42b7-9aef-1a42be7842b4")) + (no_connect (at 167.38 138.65) (uuid "b91d7e27-dd20-4220-b56f-c5d940e8abbc")) + (no_connect (at 167.38 141.19) (uuid "925546e9-42e1-4dcb-a131-edd6dffca827")) + (no_connect (at 167.38 143.73) (uuid "810351ab-f872-486a-8777-8623fa1e822f")) + (no_connect (at 167.38 146.27) (uuid "abdac87b-d47c-44c5-bf60-d1d476001c92")) + (no_connect (at 167.38 148.81) (uuid "7cf3a7f1-4ae8-40d0-a7ad-4ee653606ee4")) + (no_connect (at 167.38 151.35) (uuid "aab02d01-3198-4592-b2e5-27de9f6af818")) + (no_connect (at 167.38 153.89) (uuid "7cd0b474-683b-4784-8765-2a8f18a21930")) + (symbol (lib_id "Device:R") (at 125.00 83.00 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "dbdd8488-d3bb-49c4-ad28-5e4adec358b0") + (property "Reference" "R1A" (at 125.00 80.46 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 127.54 80.46 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "d1ea9a71-841c-4a70-a810-6f7847daa79a")) + (pin "2" (uuid "6d57f0f0-e524-467d-af0a-e08a133bbff6")) + ) + (symbol (lib_id "Device:R") (at 125.00 85.54 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "ca589272-2260-4506-95d2-73e26ab5b2ca") + (property "Reference" "R1B" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 127.54 83.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 125.00 85.54 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 125.00 85.54 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "f2ea9413-2522-4221-a762-bb80d81e3d2f")) + (pin "2" (uuid "820612c8-4ab7-4e32-b63a-71c3c1a138a9")) + ) + (symbol (lib_id "Device:R") (at 128.81 90.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "8f432cd5-747b-4d55-9fe1-3ad102cb9e79") + (property "Reference" "R3" (at 130.84 90.00 90) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 133.38 90.00 90) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 128.81 90.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 128.81 90.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "a626a6fb-e2f9-41b6-ac30-5f9cf9e7748f")) + (pin "2" (uuid "c4dff62d-8b2d-443a-82ba-3e1612f498c8")) + ) + (wire (pts (xy 121.19 83.00) (xy 121.19 85.54)) + (stroke (width 0) (type default)) (uuid "f1944a7f-4f80-4aa6-afc3-0d36557dc963")) + (label "ECHO_DIV" (at 121.19 83.00 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "ebd347a1-95e1-4876-8943-1007f955da0c")) + (wire (pts (xy 128.81 83.00) (xy 128.81 85.54)) + (stroke (width 0) (type default)) (uuid "f9baf9cb-83a0-4b9b-a138-c3d18c0a5185")) + (wire (pts (xy 128.81 85.54) (xy 128.81 86.19)) + (stroke (width 0) (type default)) (uuid "a1305bc4-3a0c-4668-8e74-51b77d06ff9f")) + (junction (at 128.81 85.54) (diameter 0) (color 0 0 0 0) (uuid "50c908c5-de3a-4943-ba01-5ee543b9a8e8")) + (label "D5_ECHO" (at 128.81 83.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "f3d9eb23-6538-4a2b-9380-cc8de35e65c5")) + (symbol (lib_id "power:GND") (at 128.81 93.81 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "1b67032e-6382-405e-985d-4e29b2d1b47d") + (property "Reference" "#PWR11" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 128.81 97.62 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "308bab1e-eb13-46fe-ac0e-f47eefb95f65"))) + + (sheet_instances + (path "/" (page "1"))) +) diff --git a/esquematico/esp8266/fp-info-cache b/esquematico/esp8266/fp-info-cache new file mode 100644 index 0000000..573541a --- /dev/null +++ b/esquematico/esp8266/fp-info-cache @@ -0,0 +1 @@ +0 diff --git a/esquematico/esp8266/riego.kicad_sch b/esquematico/esp8266/riego.kicad_sch new file mode 100644 index 0000000..f8d447a --- /dev/null +++ b/esquematico/esp8266/riego.kicad_sch @@ -0,0 +1,313 @@ +(kicad_sch + (version 20231120) + (generator "eeschema") + (generator_version "9.0") + + (paper "A4") + + (title_block + (title "Sistema de Riego — Diagrama de cableado") + (date "2026-05-12") + (rev "1") + (company "Proyecto Riego ESP8266")) + + (lib_symbols + (symbol "Device:R" + (pin_numbers hide) (pin_names (offset 0)) (in_bom yes) (on_board yes) + (property "Reference" "R" (at 2.032 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "R" (at 0 0 90) (effects (font (size 1.27 1.27)))) + (symbol "R_0_1" + (rectangle (start -1.016 -2.032) (end 1.016 2.032) + (stroke (width 0.254) (type default)) (fill (type none)))) + (symbol "R_1_1" + (pin passive (at 0 3.81 270) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive (at 0 -3.81 90) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))))) + + (symbol "Connector_Generic:Conn_01x04" + (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes) + (property "Reference" "J" (at 0.8636 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "Conn_01x04" (at 2.2 0 90) (effects (font (size 1.27 1.27)))) + (symbol "Conn_01x04_0_1" + (rectangle (start -1.27 -5.08) (end 0 7.62) + (stroke (width 0.254) (type default)) (fill (type background)))) + (symbol "Conn_01x04_1_1" + (pin passive (at -5.08 7.62 0) (length 3.81) + (name "Pin_1" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive (at -5.08 5.08 0) (length 3.81) + (name "Pin_2" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))) + (pin passive (at -5.08 2.54 0) (length 3.81) + (name "Pin_3" (effects (font (size 1.27 1.27)))) (number "3" (effects (font (size 1.27 1.27))))) + (pin passive (at -5.08 0 0) (length 3.81) + (name "Pin_4" (effects (font (size 1.27 1.27)))) (number "4" (effects (font (size 1.27 1.27))))))) + + (symbol "Connector_Generic:Conn_01x02" + (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes) + (property "Reference" "J" (at 0.8636 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "Conn_01x02" (at 2.2 0 90) (effects (font (size 1.27 1.27)))) + (symbol "Conn_01x02_0_1" + (rectangle (start -1.27 -2.54) (end 0 2.54) + (stroke (width 0.254) (type default)) (fill (type background)))) + (symbol "Conn_01x02_1_1" + (pin passive (at -5.08 2.54 0) (length 3.81) + (name "Pin_1" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive (at -5.08 0 0) (length 3.81) + (name "Pin_2" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))))) + + (symbol "power:GND" + (power) (pin_names (offset 0)) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 -6.35 0) (effects (font (size 1.27 1.27)) hide)) + (property "Value" "GND" (at 0 -3.81 0) (effects (font (size 1.27 1.27)))) + (symbol "GND_0_1" + (polyline (pts (xy 0 0) (xy 0 -1.27) (xy 1.27 -1.27) (xy 0 -2.54) (xy -1.27 -1.27) (xy 0 -1.27)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "GND_1_1" + (pin power_in (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))))) + + (symbol "power:+5V" + (power) (pin_names (offset 0)) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) hide)) + (property "Value" "+5V" (at 0 3.81 0) (effects (font (size 1.27 1.27)))) + (symbol "+5V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+5V_1_1" + (pin power_in (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))))) + + (symbol (lib_id "Connector_Generic:Conn_01x04") (at 195.00 100.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "be8f3162-6255-4e12-9b7b-de1da60176b6") + (property "Reference" "J1" (at 197.00 100.00 90) + (effects (font (size 1.27 1.27)))) + (property "Value" "HC-SR04" (at 199.00 100.00 90) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 195.00 100.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 195.00 100.00 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "0b010536-305c-467d-97c8-eea55605001f")) + (pin "2" (uuid "2b34d9d4-36a2-4c3b-b051-8ec179037f2e")) + (pin "3" (uuid "09b79f25-21ce-40ad-aeed-6ff236604c05")) + (pin "4" (uuid "9c43246e-5b57-429d-8b0f-8bd1869d1829"))) + (symbol (lib_id "Connector_Generic:Conn_01x02") (at 195.00 140.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "584a23c6-4c1f-471b-b2bd-1039063311b3") + (property "Reference" "J2" (at 197.00 140.00 90) + (effects (font (size 1.27 1.27)))) + (property "Value" "Relay_IN1" (at 199.00 140.00 90) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 195.00 140.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 195.00 140.00 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "aa70a444-842a-416f-8c16-185a092a2e11")) + (pin "2" (uuid "16066025-ade0-48a3-8722-ce2c53f45081"))) + (symbol (lib_id "Device:R") (at 110.00 95.00 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "a766739a-96d3-4054-8dba-2aa8d4b53627") + (property "Reference" "R1" (at 110.00 92.50 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 110.00 95.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 110.00 95.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "~" (at 110.00 95.00 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "325ad420-851d-45be-b3fd-032ef7495bf1")) + (pin "2" (uuid "5fd2e7a3-b2ab-4517-aaf8-ae3b9eb401ed"))) + (symbol (lib_id "Device:R") (at 110.00 105.00 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "63b6dcf3-9268-4ab6-b2e5-9ba1601f99a0") + (property "Reference" "R2" (at 110.00 102.50 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 110.00 105.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 110.00 105.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "~" (at 110.00 105.00 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "f223134b-df60-4c41-86a6-ae8f2f445b67")) + (pin "2" (uuid "e0da1527-4401-4d94-b75c-57058201c38f"))) + (symbol (lib_id "Device:R") (at 118.81 103.81 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "556e73db-10ff-48af-adbd-f022b500031b") + (property "Reference" "R3" (at 120.84 103.81 90) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 118.81 103.81 90) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 118.81 103.81 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "~" (at 118.81 103.81 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "cc06e2f5-dc9d-4d72-ad44-885cd556d726")) + (pin "2" (uuid "3506333f-0646-4331-8f2c-955cc74f3131"))) + (symbol (lib_id "power:+5V") (at 189.92 92.38 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "b2d9147c-5710-4eaf-9016-df69a395e8f7") + (property "Reference" "#PWR01" (at 189.92 92.38 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Value" "+5V" (at 189.92 88.57 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 189.92 92.38 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 189.92 92.38 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "7d8d9177-ec88-48a1-aa94-3540e8dcf426"))) + (symbol (lib_id "power:GND") (at 189.92 94.92 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "7133ebf9-d4f0-42a0-a10c-c1e4616cae99") + (property "Reference" "#PWR02" (at 189.92 94.92 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Value" "GND" (at 189.92 98.73 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 189.92 94.92 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 189.92 94.92 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "8a3ad7c9-47e8-487d-947e-02dc8b4f1495"))) + (symbol (lib_id "power:GND") (at 118.81 107.62 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "ab298083-93e7-4f57-a3d2-ac9ef37b048e") + (property "Reference" "#PWR03" (at 118.81 107.62 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Value" "GND" (at 118.81 111.43 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 118.81 107.62 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 118.81 107.62 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "3efe9c60-1783-4504-8dfd-a7f448797f67"))) + (symbol (lib_id "power:GND") (at 189.92 140.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "e5d5148f-9835-4a1a-970c-6bf37b071fa0") + (property "Reference" "#PWR04" (at 189.92 140.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Value" "GND" (at 189.92 143.81 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 189.92 140.00 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 189.92 140.00 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "e87e5f8b-e7d9-434d-8f85-bd8e38baa2b8"))) + (symbol (lib_id "power:+5V") (at 200.00 132.46 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "d9b5641a-16d0-43f5-be7b-987a9c26eb99") + (property "Reference" "#PWR05" (at 200.00 132.46 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Value" "+5V" (at 200.00 128.65 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 200.00 132.46 0) + (effects (font (size 1.27 1.27)) hide)) + (property "Datasheet" "" (at 200.00 132.46 0) + (effects (font (size 1.27 1.27)) hide)) + (pin "1" (uuid "1a93679d-b14e-449b-b763-b7769dc86ee7"))) + (wire (pts (xy 103.65 95.00) (xy 106.19 95.00)) + (stroke (width 0) (type default)) + (uuid "ccf67b0b-ca30-4bd0-adb0-b68958741ff2")) + (wire (pts (xy 103.65 105.00) (xy 106.19 105.00)) + (stroke (width 0) (type default)) + (uuid "904fc78f-df99-4296-a2f9-f344c5d8a1e4")) + (wire (pts (xy 103.65 95.00) (xy 103.65 105.00)) + (stroke (width 0) (type default)) + (uuid "f2d85eb0-6279-437f-ad52-56c32b94adc7")) + (wire (pts (xy 113.81 95.00) (xy 118.81 95.00)) + (stroke (width 0) (type default)) + (uuid "21168f7b-7985-488d-a6aa-887ad0425f38")) + (wire (pts (xy 113.81 105.00) (xy 118.81 105.00)) + (stroke (width 0) (type default)) + (uuid "8e8637be-88bd-48fa-a83d-978638fc7c03")) + (wire (pts (xy 118.81 95.00) (xy 118.81 105.00)) + (stroke (width 0) (type default)) + (uuid "4ffae2ac-100d-4689-8bff-c00661e6a238")) + (junction (at 118.81 100.00) (diameter 0) (color 0 0 0 0) (uuid "487ca348-d229-4051-bd8b-69cbd1050d22")) + (wire (pts (xy 118.81 100.00) (xy 189.92 100.00)) + (stroke (width 0) (type default)) + (uuid "34527297-f3b1-4766-b9fc-105032e2d314")) + (junction (at 118.81 100.00) (diameter 0) (color 0 0 0 0) (uuid "fbe47895-a4dd-4760-9f99-6c5aeaf4619b")) + (wire (pts (xy 70.00 97.46) (xy 189.92 97.46)) + (stroke (width 0) (type default)) + (uuid "ecc9db0b-6ab8-4cf0-b0cc-71b478386373")) + (wire (pts (xy 70.00 137.46) (xy 189.92 137.46)) + (stroke (width 0) (type default)) + (uuid "28a4f960-8e1c-4a3c-a279-dc65a64fdfcb")) + (wire (pts (xy 70.00 95.00) (xy 103.65 95.00)) + (stroke (width 0) (type default)) + (uuid "71e12727-2032-4068-85e5-1b298f49077f")) + (wire (pts (xy 70.00 97.46) (xy 70.00 137.46)) + (stroke (width 0) (type default)) + (uuid "c03f0260-65d5-4c5b-91e8-777ebdb6f4a9")) + (label "D5/GPIO14" (at 70.00 97.46 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "7a250f26-5161-4c6d-a7cf-c0050c80a7ef")) + (label "D1/GPIO5" (at 70.00 137.46 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "4a019118-72cd-49d2-a7e6-2d997f8199e1")) + (label "D2/GPIO4" (at 70.00 95.00 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "3c216499-4df2-49d7-b6a0-83ae3e94f872")) + (label "D5/GPIO14" (at 189.92 97.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "14d916fc-d5d2-4bcd-bd40-73516a943334")) + (label "D1/GPIO5" (at 189.92 137.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "c2a656c7-3101-4f79-8697-0c899685a59a")) + (text "NodeMCU ESP8266" (at 35.00 77.46 0) (fields_autoplaced) + (effects (font (size 1.5 1.5) bold)) + (uuid "06ced807-2d1c-4536-91d5-ed9b7990c4d9")) + (text "D5 → GPIO14" (at 35.00 83.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "f812cc2d-2807-46ef-b811-8d57c3cb34d5")) + (text "D2 → GPIO4" (at 35.00 87.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "4d4f96b8-9763-4180-a04b-5aba59e9c4f7")) + (text "D1 → GPIO5" (at 35.00 91.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "cb4f4dcf-b691-4edd-afb3-c00c820a6da5")) + (text "GND (común fuente ext.)" (at 35.00 99.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "5d3fafce-284f-4d68-bb79-294458bdc0d3")) + (text "R1 ∥ R2 = 1.1kΩ (divisor superior)" (at 90.00 86.00 0) (fields_autoplaced) + (effects (font (size 1.0 1.0))) + (uuid "19e3e427-0541-444a-b8df-a1900ea41cb4")) + (text "R3 = 2.2kΩ (divisor inferior)" (at 121.81 103.81 0) (fields_autoplaced) + (effects (font (size 1.0 1.0))) + (uuid "c3c20e39-7bf0-4b9e-86c9-7fb495125fdd")) + (text "Echo 5V → 3.3V" (at 121.81 108.81 0) (fields_autoplaced) + (effects (font (size 1.0 1.0))) + (uuid "64fcb1bd-7e9d-42c9-81ad-623850878006")) + (text "HC-SR04" (at 197.00 90.00 0) (fields_autoplaced) + (effects (font (size 1.5 1.5) bold)) + (uuid "2ecd3679-4bf3-4b13-95e2-685d8069c33a")) + (text "Pin 1: VCC" (at 197.00 92.38 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "628d7cd3-9d28-4318-b8d5-210e89d8689d")) + (text "Pin 2: GND" (at 197.00 94.92 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "fe906e5d-0dae-4a46-9576-21c8139867ac")) + (text "Pin 3: Trig" (at 197.00 97.46 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "3f4c96c9-63a3-4caf-9a3a-e1ee2cb27c3e")) + (text "Pin 4: Echo" (at 197.00 100.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "ba970075-be03-4c31-bbe7-fa147c016ac8")) + (text "SunFounder 8 Relay" (at 197.00 130.00 0) (fields_autoplaced) + (effects (font (size 1.5 1.5) bold)) + (uuid "13e7af34-24e2-461d-90eb-0cbc8a5aa2e0")) + (text "Pin 1: IN1 (lógica LOW activa)" (at 197.00 133.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "17a91afd-1ae6-4cb7-b5db-72389cc8719a")) + (text "Pin 2: GND" (at 197.00 136.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "063e1379-8481-4844-836c-881d28d19cfe")) + (text "+5V externo a VCC del relay" (at 197.00 139.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "0f14b1a1-3cf1-44b3-ad9b-913d4521c615")) + + (sheet_instances + (path "/" (page "1"))) +) diff --git a/esquematico/esp8266/~esp8266.kicad_sch.lck b/esquematico/esp8266/~esp8266.kicad_sch.lck new file mode 100644 index 0000000..23b771b --- /dev/null +++ b/esquematico/esp8266/~esp8266.kicad_sch.lck @@ -0,0 +1 @@ +{"hostname":"f-romero-EQUIP","username":"f-romero"} \ No newline at end of file diff --git a/esquematico/genera_esquematico.py b/esquematico/genera_esquematico.py new file mode 100644 index 0000000..9753a12 --- /dev/null +++ b/esquematico/genera_esquematico.py @@ -0,0 +1,442 @@ +#!/usr/bin/env python3 +""" +Genera el esquemático KiCad 9 — Sistema de Riego ESP8266. +Símbolos propios correctos: NodeMCU ESP8266 v3, HC-SR04, SunFounder 8CH Relay. +""" +import uuid as _uuid, shutil +from pathlib import Path + +def uid(): + return str(_uuid.uuid4()) + +STEP = 2.54 + +def n_y(n_pins, idx): + """Y del pin idx (0-based) para un símbolo con n_pins centrado en 0.""" + return round(-(n_pins - 1) / 2.0 * STEP + idx * STEP, 2) + +# ── Helpers de símbolo ──────────────────────────────────────────────────────── + +def sym_pin(num, name, ptype, at_x, at_y, angle, length=2.54): + return (f' (pin {ptype} line (at {at_x:.2f} {at_y:.2f} {angle}) (length {length:.2f})\n' + f' (name "{name}" (effects (font (size 1.27 1.27))))\n' + f' (number "{num}" (effects (font (size 1.27 1.27)))))') + +def sym_rect(x1, y1, x2, y2, w=0): + return (f' (rectangle (start {x1:.2f} {y1:.2f}) (end {x2:.2f} {y2:.2f})\n' + f' (stroke (width {w}) (type default)) (fill (type background)))') + +def prop(name, val, ax, ay, angle=0, hide=False): + h = '\n (hide yes)' if hide else '' + return (f' (property "{name}" "{val}" (at {ax:.2f} {ay:.2f} {angle})\n' + f' (effects (font (size 1.27 1.27)){h}))') + +def symbol_block(lib_sym_name, ref_prefix, body, pins, ref_ax, ref_ay, val_ay, desc=""): + """lib_sym_name = 'riego_lib:SymName'""" + sym_short = lib_sym_name.split(":")[1] + return (f' (symbol "{lib_sym_name}"\n' + f' (pin_names (offset 1.016))\n' + f' (exclude_from_sim no)\n' + f' (in_bom yes)\n' + f' (on_board yes)\n' + + prop("Reference", ref_prefix, ref_ax, ref_ay) + "\n" + + prop("Value", sym_short, ref_ax, val_ay) + "\n" + + prop("Footprint", "", 0, 0, hide=True) + "\n" + + prop("Datasheet", "", 0, 0, hide=True) + "\n" + + prop("Description", desc, 0, 0, hide=True) + "\n" + + f' (symbol "{sym_short}_0_1"\n' + + sym_rect(*body) + "\n" + + f' )\n' + + f' (symbol "{sym_short}_1_1"\n' + + "\n".join(pins) + "\n" + + f' )\n' + + f' )') + +# ── NodeMCU ESP8266 v3 ──────────────────────────────────────────────────────── +NM_BW = 10.16 # body half-width +NM_BH = 19.05 # body half-height +NM_PX_L = -(NM_BW + STEP) # = -12.70 left pin connection X +NM_PX_R = (NM_BW + STEP) # = +12.70 right pin connection X + +LEFT_PINS = [ + ("1", "A0", "input"), + ("2", "RSV", "passive"), + ("3", "RSV", "passive"), + ("4", "SD3", "bidirectional"), + ("5", "SD2", "bidirectional"), + ("6", "SD1/MOSI", "bidirectional"), + ("7", "CMD/CS0", "bidirectional"), + ("8", "SD0/MISO", "bidirectional"), + ("9", "CLK/SCLK", "bidirectional"), + ("10", "GND", "power_in"), + ("11", "3V3", "power_out"), + ("12", "EN", "input"), + ("13", "RST", "input"), + ("14", "GND", "power_in"), + ("15", "VIN", "power_in"), +] +RIGHT_PINS = [ + ("16", "D0", "bidirectional"), + ("17", "D1/SCL", "bidirectional"), + ("18", "D2/SDA", "bidirectional"), + ("19", "D3", "bidirectional"), + ("20", "D4/LED", "bidirectional"), + ("21", "3V3", "power_out"), + ("22", "GND", "power_in"), + ("23", "D5/SCLK", "bidirectional"), + ("24", "D6/MISO", "bidirectional"), + ("25", "D7/MOSI", "bidirectional"), + ("26", "D8/CS", "bidirectional"), + ("27", "RX", "input"), + ("28", "TX", "output"), + ("29", "GND", "power_in"), + ("30", "RST", "input"), +] + +nm_pins = ( + [sym_pin(n, name, pt, NM_PX_L, n_y(15, i), 0) for i,(n,name,pt) in enumerate(LEFT_PINS)] + + [sym_pin(n, name, pt, NM_PX_R, n_y(15, i), 180) for i,(n,name,pt) in enumerate(RIGHT_PINS)] +) +SYM_NODEMCU = symbol_block( + "riego_lib:NodeMCU_ESP8266_v3", "U", + (-NM_BW, -NM_BH, NM_BW, NM_BH), + nm_pins, 0, NM_BH+1.27, NM_BH+3.81, + "NodeMCU ESP8266 v3 module") + +# ── HC-SR04 ─────────────────────────────────────────────────────────────────── +HC_PX = -6.35 +HC_BODY = (-3.81, -5.08, 3.81, 5.08) +HC_PINS_DEF = [ + ("1", "VCC", "power_in", HC_PX, n_y(4,0), 0), + ("2", "Trig", "input", HC_PX, n_y(4,1), 0), + ("3", "Echo", "output", HC_PX, n_y(4,2), 0), + ("4", "GND", "power_in", HC_PX, n_y(4,3), 0), +] +SYM_HCSR04 = symbol_block( + "riego_lib:HC_SR04", "US", HC_BODY, + [sym_pin(*p) for p in HC_PINS_DEF], + 0, HC_BODY[3]+1.27, HC_BODY[3]+3.81, + "HC-SR04 ultrasonic distance sensor") + +# ── SunFounder 8-channel relay module ──────────────────────────────────────── +RL_BW = 5.08 +RL_BH = 12.70 +RL_LEFT_PX = -(RL_BW + STEP) # = -7.62 +RL_RIGHT_PX = (RL_BW + STEP) # = +7.62 +rl_pins = ( + [sym_pin(str(i+1), f"IN{i+1}", "input", RL_LEFT_PX, n_y(8,i), 0) for i in range(8)] + + [sym_pin("9", "VCC", "power_in", RL_RIGHT_PX, n_y(2,0), 180), + sym_pin("10", "GND", "power_in", RL_RIGHT_PX, n_y(2,1), 180)] +) +SYM_RELAY = symbol_block( + "riego_lib:Relay_SunFounder_8CH", "K", + (-RL_BW, -RL_BH, RL_BW, RL_BH), + rl_pins, 0, RL_BH+1.27, RL_BH+3.81, + "SunFounder 8-channel relay module (active LOW)") + +# ── Device:R (resistencia estándar KiCad) ──────────────────────────────────── +SYM_R = """ (symbol "Device:R" + (pin_numbers hide) + (pin_names (offset 0)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "R" (at 2.032 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "R" (at 0 0 90) (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))) + (symbol "R_0_1" + (rectangle (start -1.016 -2.032) (end 1.016 2.032) + (stroke (width 0.254) (type default)) (fill (type none)))) + (symbol "R_1_1" + (pin passive line (at 0 3.81 270) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive line (at 0 -3.81 90) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))) + ) + )""" + +# ── Símbolos de alimentación ────────────────────────────────────────────────── +SYM_GND = """ (symbol "power:GND" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 -6.35 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 0 -3.81 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))) + (symbol "GND_0_1" + (polyline (pts (xy 0 0) (xy 0 -1.27) (xy 1.27 -1.27) (xy 0 -2.54) (xy -1.27 -1.27) (xy 0 -1.27)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "GND_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + )""" + +SYM_5V = """ (symbol "power:+5V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 0 3.81 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))) + (symbol "+5V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+5V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + )""" + +SYM_3V3 = """ (symbol "power:+3.3V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 0 3.81 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))) + (symbol "+3.3V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+3.3V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + )""" + +LIB_SYMBOLS = "\n".join([SYM_NODEMCU, SYM_HCSR04, SYM_RELAY, SYM_R, SYM_GND, SYM_5V, SYM_3V3]) + +# ── Helpers de elementos de esquemático ─────────────────────────────────────── + +def wire(x1, y1, x2, y2): + return (f' (wire (pts (xy {x1:.2f} {y1:.2f}) (xy {x2:.2f} {y2:.2f}))\n' + f' (stroke (width 0) (type default)) (uuid "{uid()}"))') + +def junction(x, y): + return f' (junction (at {x:.2f} {y:.2f}) (diameter 0) (color 0 0 0 0) (uuid "{uid()}"))' + +def no_connect(x, y): + return f' (no_connect (at {x:.2f} {y:.2f}) (uuid "{uid()}"))' + +def net_label(text, x, y, angle=0): + return (f' (label "{text}" (at {x:.2f} {y:.2f} {angle}) (fields_autoplaced)\n' + f' (effects (font (size 1.27 1.27)))\n' + f' (uuid "{uid()}"))') + +_pwr_cnt = [1] + +def power_sym(sym, x, y): + n = _pwr_cnt[0]; _pwr_cnt[0] += 1 + vy = y - 3.81 if sym in ("+5V", "+3.3V") else y + 3.81 + return (f' (symbol (lib_id "power:{sym}") (at {x:.2f} {y:.2f} 0) (unit 1)\n' + f' (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no)\n' + f' (uuid "{uid()}")\n' + f' (property "Reference" "#PWR{n:02d}" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (property "Value" "{sym}" (at {x:.2f} {vy:.2f} 0)\n' + f' (effects (font (size 1.27 1.27))))\n' + f' (property "Footprint" "" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (property "Datasheet" "" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (pin "1" (uuid "{uid()}")))') + +def place_comp(lib_id, ref, value, x, y, pin_nums, ref_dx=2, ref_dy=-2, val_dx=2, val_dy=2): + pins = "\n".join(f' (pin "{n}" (uuid "{uid()}"))' for n in pin_nums) + return (f' (symbol (lib_id "{lib_id}") (at {x:.2f} {y:.2f} 0) (unit 1)\n' + f' (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no)\n' + f' (uuid "{uid()}")\n' + f' (property "Reference" "{ref}" (at {x+ref_dx:.2f} {y+ref_dy:.2f} 0)\n' + f' (effects (font (size 1.27 1.27))))\n' + f' (property "Value" "{value}" (at {x+val_dx:.2f} {y+val_dy:.2f} 0)\n' + f' (effects (font (size 1.27 1.27))))\n' + f' (property "Footprint" "" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (property "Datasheet" "" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f'{pins}\n )') + +def place_resistor(ref, value, x, y, rotation=0): + """rotation=0 → vertical; rotation=90 → horizontal.""" + if rotation == 90: + rx, ry, ra = x, y - 2.54, 0 + else: + rx, ry, ra = x + 2.032, y, 90 + return (f' (symbol (lib_id "Device:R") (at {x:.2f} {y:.2f} {rotation}) (unit 1)\n' + f' (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no)\n' + f' (uuid "{uid()}")\n' + f' (property "Reference" "{ref}" (at {rx:.2f} {ry:.2f} {ra})\n' + f' (effects (font (size 1.27 1.27))))\n' + f' (property "Value" "{value}" (at {rx+2.54:.2f} {ry:.2f} {ra})\n' + f' (effects (font (size 1.27 1.27))))\n' + f' (property "Footprint" "" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (property "Datasheet" "~" (at {x:.2f} {y:.2f} 0)\n' + f' (effects (font (size 1.27 1.27)) (hide yes)))\n' + f' (pin "1" (uuid "{uid()}"))\n' + f' (pin "2" (uuid "{uid()}"))\n )') + +# ── Posiciones y coordenadas ────────────────────────────────────────────────── +# +# U1 NodeMCU center (80, 100) +# US1 HC-SR04 center (175, 80) +# K1 Relay center (175, 145) +# +# NodeMCU right-side pin X = 80 + 12.70 = 92.70 +# NodeMCU left-side pin X = 80 - 12.70 = 67.30 + +NM_CX, NM_CY = 80.0, 100.0 +HC_CX, HC_CY = 175.0, 80.0 +RL_CX, RL_CY = 175.0, 145.0 + +NM_RPX = NM_CX + NM_PX_R # 92.70 +NM_LPX = NM_CX + NM_PX_L # 67.30 + +def nm_ry(idx): return round(NM_CY + n_y(15, idx), 2) # right side +def nm_ly(idx): return round(NM_CY + n_y(15, idx), 2) # left side (same Y mapping) + +# HC-SR04: pins on left at X = 175 + HC_PX = 175 - 6.35 = 168.65 +HC_PPX = HC_CX + HC_PX +def hc_y(idx): return round(HC_CY + n_y(4, idx), 2) + +# Relay: left-side pins at X = 175 - 7.62 = 167.38 +# right-side pins at X = 175 + 7.62 = 182.62 +RL_LPX = RL_CX + RL_LEFT_PX +RL_RPX = RL_CX + RL_RIGHT_PX +def rl_ly(idx): return round(RL_CY + n_y(8, idx), 2) # IN1-IN8 +def rl_ry(idx): return round(RL_CY + n_y(2, idx), 2) # VCC, GND + +# Device:R con rotation=90 (horizontal): +# pin1 conecta en (X-3.81, Y) [izquierda] +# pin2 conecta en (X+3.81, Y) [derecha] +# Device:R con rotation=0 (vertical): +# pin1 conecta en (X, Y+3.81) [abajo] +# pin2 conecta en (X, Y-3.81) [arriba] + +# Divisor de tensión +# R1A y R1B en paralelo (horizontal) entre D2/GPIO4 y ECHO_DIV +# R3 vertical de ECHO_DIV a GND + +R1A_CX, R1A_CY = 125.0, 83.0 +R1B_CX, R1B_CY = 125.0, 85.54 + +R1A_LP = (R1A_CX - 3.81, R1A_CY) # (121.19, 83.0) +R1B_LP = (R1B_CX - 3.81, R1B_CY) # (121.19, 85.54) +R1A_RP = (R1A_CX + 3.81, R1A_CY) # (128.81, 83.0) +R1B_RP = (R1B_CX + 3.81, R1B_CY) # (128.81, 85.54) + +R3_CX, R3_CY = 128.81, 90.0 +R3_TOP = (R3_CX, R3_CY - 3.81) # (128.81, 86.19) +R3_BOT = (R3_CX, R3_CY + 3.81) # (128.81, 93.81) + +# ── Ensamblado de elementos ─────────────────────────────────────────────────── +E = [] + +# U1 — NodeMCU +E.append(place_comp( + "riego_lib:NodeMCU_ESP8266_v3", "U1", "NodeMCU_ESP8266_v3", + NM_CX, NM_CY, [str(i) for i in range(1, 31)], + ref_dx=11.5, ref_dy=-21, val_dx=0, val_dy=21)) + +# No-connect pines no usados del NodeMCU +# Izquierda: A0(0), RSV(1), RSV(2), SD3(3), SD2(4), SD1(5), CMD(6), SD0(7), CLK(8), EN(11) +for idx in [0,1,2,3,4,5,6,7,8,11]: + E.append(no_connect(NM_LPX, nm_ly(idx))) +# Derecha: D0(0), D3(3), D4(4), D6(8), D7(9), D8(10), RX(11), TX(12) +for idx in [0,3,4,8,9,10,11,12]: + E.append(no_connect(NM_RPX, nm_ry(idx))) + +# Pines de potencia NodeMCU izquierda: GND(9), 3V3(10), RST(12→nc), GND(13), VIN(14→nc) +E.append(power_sym("GND", NM_LPX, nm_ly(9))) +E.append(power_sym("+3.3V", NM_LPX, nm_ly(10))) +E.append(no_connect(NM_LPX, nm_ly(12))) # RST +E.append(power_sym("GND", NM_LPX, nm_ly(13))) +E.append(no_connect(NM_LPX, nm_ly(14))) # VIN + +# Pines de potencia NodeMCU derecha: 3V3(5), GND(6), GND(13), RST(14→nc) +E.append(power_sym("+3.3V", NM_RPX, nm_ry(5))) +E.append(power_sym("GND", NM_RPX, nm_ry(6))) +E.append(power_sym("GND", NM_RPX, nm_ry(13))) +E.append(no_connect(NM_RPX, nm_ry(14))) # RST + +# Etiquetas de señal en NodeMCU (pines derecha que usamos) +# D1/SCL = idx 1, D2/SDA = idx 2, D5/SCLK = idx 7 +E.append(net_label("D1/GPIO5", NM_RPX, nm_ry(1), angle=0)) +E.append(net_label("D2_TRIG", NM_RPX, nm_ry(2), angle=0)) +E.append(net_label("D5_ECHO", NM_RPX, nm_ry(7), angle=0)) + +# US1 — HC-SR04 +E.append(place_comp( + "riego_lib:HC_SR04", "US1", "HC_SR04", + HC_CX, HC_CY, ["1","2","3","4"], + ref_dx=5, ref_dy=-7, val_dx=5, val_dy=-4)) + +E.append(power_sym("+5V", HC_PPX, hc_y(0))) # VCC +E.append(power_sym("GND", HC_PPX, hc_y(3))) # GND +E.append(net_label("D2_TRIG", HC_PPX, hc_y(1), angle=180)) # Trig ← GPIO4/D2 +E.append(net_label("ECHO_DIV", HC_PPX, hc_y(2), angle=180)) # Echo → divisor → D5/GPIO14 + +# K1 — Relay SunFounder 8CH +E.append(place_comp( + "riego_lib:Relay_SunFounder_8CH", "K1", "Relay_SunFounder_8CH", + RL_CX, RL_CY, [str(i) for i in range(1, 11)], + ref_dx=6, ref_dy=-14, val_dx=6, val_dy=-11)) + +E.append(power_sym("+5V", RL_RPX, rl_ry(0))) # VCC +E.append(power_sym("GND", RL_RPX, rl_ry(1))) # GND +E.append(net_label("D1/GPIO5", RL_LPX, rl_ly(0), angle=180)) # IN1 + +# No-connect IN2-IN8 +for idx in range(1, 8): + E.append(no_connect(RL_LPX, rl_ly(idx))) + +# ── Divisor de tensión ──────────────────────────────────────────────────────── +E.append(place_resistor("R1A", "2.2k", R1A_CX, R1A_CY, rotation=90)) +E.append(place_resistor("R1B", "2.2k", R1B_CX, R1B_CY, rotation=90)) +E.append(place_resistor("R3", "2.2k", R3_CX, R3_CY, rotation=0)) + +# Lado izquierdo del paralelo — net D2/GPIO4 +E.append(wire(R1A_LP[0], R1A_LP[1], R1B_LP[0], R1B_LP[1])) # vertical une R1A y R1B left +E.append(net_label("ECHO_DIV", R1A_LP[0], R1A_LP[1], angle=180)) # Echo HC-SR04 → aquí + +# Lado derecho del paralelo — net D5_ECHO (sale hacia GPIO14/D5) +E.append(wire(R1A_RP[0], R1A_RP[1], R1B_RP[0], R1B_RP[1])) # vertical une R1A y R1B right +E.append(wire(R1B_RP[0], R1B_RP[1], R3_TOP[0], R3_TOP[1])) # baja hasta R3 top +E.append(junction(R1B_RP[0], R1B_RP[1])) +E.append(net_label("D5_ECHO", R1A_RP[0], R1A_RP[1], angle=0)) # → GPIO14/D5 + +# GND en R3 bottom +E.append(power_sym("GND", R3_BOT[0], R3_BOT[1])) + +# ── Generar fichero ─────────────────────────────────────────────────────────── +body = "\n".join(E) + +schematic = f"""(kicad_sch + (version 20250114) + (generator "eeschema") + (generator_version "9.0") + (uuid "{uid()}") + (paper "A4") + (title_block + (title "Sistema de Riego — Diagrama de cableado") + (date "2026-05-12") + (rev "2") + (company "Proyecto Riego ESP8266")) + + (lib_symbols +{LIB_SYMBOLS} + ) + +{body} + + (sheet_instances + (path "/" (page "1"))) +) +""" + +out = Path(__file__).parent / "riego.kicad_sch" +out.write_text(schematic, encoding="utf-8") +print(f"Generado: {out}") + +dst = Path(__file__).parent / "esp8266" / "esp8266.kicad_sch" +shutil.copy(out, dst) +print(f"Copiado a: {dst}") diff --git a/esquematico/riego.kicad_sch b/esquematico/riego.kicad_sch new file mode 100644 index 0000000..92c715a --- /dev/null +++ b/esquematico/riego.kicad_sch @@ -0,0 +1,602 @@ +(kicad_sch + (version 20250114) + (generator "eeschema") + (generator_version "9.0") + (uuid "2f7ed679-552b-4119-867b-1f186222309e") + (paper "A4") + (title_block + (title "Sistema de Riego — Diagrama de cableado") + (date "2026-05-12") + (rev "2") + (company "Proyecto Riego ESP8266")) + + (lib_symbols + (symbol "riego_lib:NodeMCU_ESP8266_v3" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "U" (at 0.00 20.32 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "NodeMCU_ESP8266_v3" (at 0.00 22.86 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "NodeMCU ESP8266 v3 module" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "NodeMCU_ESP8266_v3_0_1" + (rectangle (start -10.16 -19.05) (end 10.16 19.05) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "NodeMCU_ESP8266_v3_1_1" + (pin input line (at -12.70 -17.78 0) (length 2.54) + (name "A0" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin passive line (at -12.70 -15.24 0) (length 2.54) + (name "RSV" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin passive line (at -12.70 -12.70 0) (length 2.54) + (name "RSV" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -10.16 0) (length 2.54) + (name "SD3" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -7.62 0) (length 2.54) + (name "SD2" (effects (font (size 1.27 1.27)))) + (number "5" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -5.08 0) (length 2.54) + (name "SD1/MOSI" (effects (font (size 1.27 1.27)))) + (number "6" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 -2.54 0) (length 2.54) + (name "CMD/CS0" (effects (font (size 1.27 1.27)))) + (number "7" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 0.00 0) (length 2.54) + (name "SD0/MISO" (effects (font (size 1.27 1.27)))) + (number "8" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at -12.70 2.54 0) (length 2.54) + (name "CLK/SCLK" (effects (font (size 1.27 1.27)))) + (number "9" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 5.08 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "10" (effects (font (size 1.27 1.27))))) + (pin power_out line (at -12.70 7.62 0) (length 2.54) + (name "3V3" (effects (font (size 1.27 1.27)))) + (number "11" (effects (font (size 1.27 1.27))))) + (pin input line (at -12.70 10.16 0) (length 2.54) + (name "EN" (effects (font (size 1.27 1.27)))) + (number "12" (effects (font (size 1.27 1.27))))) + (pin input line (at -12.70 12.70 0) (length 2.54) + (name "RST" (effects (font (size 1.27 1.27)))) + (number "13" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 15.24 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "14" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -12.70 17.78 0) (length 2.54) + (name "VIN" (effects (font (size 1.27 1.27)))) + (number "15" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -17.78 180) (length 2.54) + (name "D0" (effects (font (size 1.27 1.27)))) + (number "16" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -15.24 180) (length 2.54) + (name "D1/SCL" (effects (font (size 1.27 1.27)))) + (number "17" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -12.70 180) (length 2.54) + (name "D2/SDA" (effects (font (size 1.27 1.27)))) + (number "18" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -10.16 180) (length 2.54) + (name "D3" (effects (font (size 1.27 1.27)))) + (number "19" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 -7.62 180) (length 2.54) + (name "D4/LED" (effects (font (size 1.27 1.27)))) + (number "20" (effects (font (size 1.27 1.27))))) + (pin power_out line (at 12.70 -5.08 180) (length 2.54) + (name "3V3" (effects (font (size 1.27 1.27)))) + (number "21" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 12.70 -2.54 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "22" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 0.00 180) (length 2.54) + (name "D5/SCLK" (effects (font (size 1.27 1.27)))) + (number "23" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 2.54 180) (length 2.54) + (name "D6/MISO" (effects (font (size 1.27 1.27)))) + (number "24" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 5.08 180) (length 2.54) + (name "D7/MOSI" (effects (font (size 1.27 1.27)))) + (number "25" (effects (font (size 1.27 1.27))))) + (pin bidirectional line (at 12.70 7.62 180) (length 2.54) + (name "D8/CS" (effects (font (size 1.27 1.27)))) + (number "26" (effects (font (size 1.27 1.27))))) + (pin input line (at 12.70 10.16 180) (length 2.54) + (name "RX" (effects (font (size 1.27 1.27)))) + (number "27" (effects (font (size 1.27 1.27))))) + (pin output line (at 12.70 12.70 180) (length 2.54) + (name "TX" (effects (font (size 1.27 1.27)))) + (number "28" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 12.70 15.24 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "29" (effects (font (size 1.27 1.27))))) + (pin input line (at 12.70 17.78 180) (length 2.54) + (name "RST" (effects (font (size 1.27 1.27)))) + (number "30" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "riego_lib:HC_SR04" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "US" (at 0.00 6.35 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "HC_SR04" (at 0.00 8.89 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "HC-SR04 ultrasonic distance sensor" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "HC_SR04_0_1" + (rectangle (start -3.81 -5.08) (end 3.81 5.08) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "HC_SR04_1_1" + (pin power_in line (at -6.35 -3.81 0) (length 2.54) + (name "VCC" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin input line (at -6.35 -1.27 0) (length 2.54) + (name "Trig" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin output line (at -6.35 1.27 0) (length 2.54) + (name "Echo" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin power_in line (at -6.35 3.81 0) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "riego_lib:Relay_SunFounder_8CH" + (pin_names (offset 1.016)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "K" (at 0.00 13.97 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "Relay_SunFounder_8CH" (at 0.00 16.51 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Datasheet" "" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (property "Description" "SunFounder 8-channel relay module (active LOW)" (at 0.00 0.00 0) + (effects (font (size 1.27 1.27)) + (hide yes))) + (symbol "Relay_SunFounder_8CH_0_1" + (rectangle (start -5.08 -12.70) (end 5.08 12.70) + (stroke (width 0) (type default)) (fill (type background))) + ) + (symbol "Relay_SunFounder_8CH_1_1" + (pin input line (at -7.62 -8.89 0) (length 2.54) + (name "IN1" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -6.35 0) (length 2.54) + (name "IN2" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -3.81 0) (length 2.54) + (name "IN3" (effects (font (size 1.27 1.27)))) + (number "3" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 -1.27 0) (length 2.54) + (name "IN4" (effects (font (size 1.27 1.27)))) + (number "4" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 1.27 0) (length 2.54) + (name "IN5" (effects (font (size 1.27 1.27)))) + (number "5" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 3.81 0) (length 2.54) + (name "IN6" (effects (font (size 1.27 1.27)))) + (number "6" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 6.35 0) (length 2.54) + (name "IN7" (effects (font (size 1.27 1.27)))) + (number "7" (effects (font (size 1.27 1.27))))) + (pin input line (at -7.62 8.89 0) (length 2.54) + (name "IN8" (effects (font (size 1.27 1.27)))) + (number "8" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 7.62 -1.27 180) (length 2.54) + (name "VCC" (effects (font (size 1.27 1.27)))) + (number "9" (effects (font (size 1.27 1.27))))) + (pin power_in line (at 7.62 1.27 180) (length 2.54) + (name "GND" (effects (font (size 1.27 1.27)))) + (number "10" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "Device:R" + (pin_numbers hide) + (pin_names (offset 0)) + (exclude_from_sim no) + (in_bom yes) + (on_board yes) + (property "Reference" "R" (at 2.032 0 90) (effects (font (size 1.27 1.27)))) + (property "Value" "R" (at 0 0 90) (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))) + (symbol "R_0_1" + (rectangle (start -1.016 -2.032) (end 1.016 2.032) + (stroke (width 0.254) (type default)) (fill (type none)))) + (symbol "R_1_1" + (pin passive line (at 0 3.81 270) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27))))) + (pin passive line (at 0 -3.81 90) (length 1.778) + (name "~" (effects (font (size 1.27 1.27)))) (number "2" (effects (font (size 1.27 1.27))))) + ) + ) + (symbol "power:GND" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 -6.35 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 0 -3.81 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))) + (symbol "GND_0_1" + (polyline (pts (xy 0 0) (xy 0 -1.27) (xy 1.27 -1.27) (xy 0 -2.54) (xy -1.27 -1.27) (xy 0 -1.27)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "GND_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + (symbol "power:+5V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 0 3.81 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))) + (symbol "+5V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+5V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + (symbol "power:+3.3V" + (power) (pin_names (offset 0)) (exclude_from_sim no) (in_bom no) (on_board no) + (property "Reference" "#PWR" (at 0 3.81 0) (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 0 3.81 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))) + (symbol "+3.3V_0_1" + (polyline (pts (xy -0.762 1.27) (xy 0 2.54) (xy 0.762 1.27)) + (stroke (width 0) (type default)) (fill (type none))) + (polyline (pts (xy 0 0) (xy 0 2.54)) + (stroke (width 0) (type default)) (fill (type none)))) + (symbol "+3.3V_1_1" + (pin power_in line (at 0 0 270) (length 0) + (name "~" (effects (font (size 1.27 1.27)))) (number "1" (effects (font (size 1.27 1.27)))))) + ) + ) + + (symbol (lib_id "riego_lib:NodeMCU_ESP8266_v3") (at 80.00 100.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "f4094374-2732-4014-849e-d3b4b6e6dd59") + (property "Reference" "U1" (at 91.50 79.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "NodeMCU_ESP8266_v3" (at 80.00 121.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 80.00 100.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 80.00 100.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "099713b1-4bd0-41b9-9772-f4e5d9482c54")) + (pin "2" (uuid "a0c66e6a-8858-4b1b-8070-fa073cd516f6")) + (pin "3" (uuid "ec938ac1-f0ac-4fb9-ba84-01113a1ac89f")) + (pin "4" (uuid "4edaedc4-8a26-40ce-835e-7e3295851139")) + (pin "5" (uuid "da99f4b4-0274-4e4c-854f-03dcfbee8630")) + (pin "6" (uuid "acbe6818-1945-402c-a740-a2e1bd07fa71")) + (pin "7" (uuid "e1d73a64-e14d-4909-bb64-47a18d7d7cd6")) + (pin "8" (uuid "dd112165-4af3-46cc-b7ea-6c1370e62a63")) + (pin "9" (uuid "1e8a2801-f81f-4a7d-81b2-6ddc116ccda1")) + (pin "10" (uuid "40966c16-d0bc-4684-ad30-7f18dd409795")) + (pin "11" (uuid "ca344cb7-3c71-464d-9e7b-47bc6dc9abf5")) + (pin "12" (uuid "fb6ee2a1-dbf0-4f8a-aed6-76c7e44ca9c4")) + (pin "13" (uuid "6c368f9f-3135-461e-9c17-c91f281266c0")) + (pin "14" (uuid "8c630361-cf42-4288-9484-de722530695a")) + (pin "15" (uuid "cba0b965-0eec-4e35-84b1-524a0a600c79")) + (pin "16" (uuid "7c06910e-d1f5-4106-ba7c-0d11395f259d")) + (pin "17" (uuid "3866a79f-0211-44d9-853e-3f15b6153304")) + (pin "18" (uuid "435afceb-caca-4beb-a55b-7a156c7b170f")) + (pin "19" (uuid "f4679bda-da52-4de3-848c-d7654eb3e37a")) + (pin "20" (uuid "b9d50250-44a5-4e63-957a-657573767174")) + (pin "21" (uuid "41b68337-a75d-4abf-873e-3c963512ccea")) + (pin "22" (uuid "65aefef6-3afb-45e9-a4ad-2d7219eceef5")) + (pin "23" (uuid "b7e509c4-ea0e-4321-8bcb-7f5ee046b1f8")) + (pin "24" (uuid "4a4046ad-5199-451e-ab31-207d1678efb8")) + (pin "25" (uuid "a605417e-38fe-4e64-b793-4aab51452f57")) + (pin "26" (uuid "6623724e-9f8a-4f84-bebf-1d0e0bedc2b1")) + (pin "27" (uuid "8a3da494-5279-44b5-97e8-2769fc9c6a94")) + (pin "28" (uuid "4527a719-8398-4693-89ce-0d53b3733aae")) + (pin "29" (uuid "43d2fda7-6c20-402c-8a42-3eca83c0fb92")) + (pin "30" (uuid "cf034968-8477-45ee-829e-c2318bfe5308")) + ) + (no_connect (at 67.30 82.22) (uuid "a0b7c53e-2d8e-49fc-af67-5bd885427cd6")) + (no_connect (at 67.30 84.76) (uuid "c7ae4d58-993b-4c88-9fda-6d7748868c2b")) + (no_connect (at 67.30 87.30) (uuid "c34253f8-c646-47e6-a488-a781a8c74d5b")) + (no_connect (at 67.30 89.84) (uuid "445dddf2-568c-4fd5-8f2f-e652659ea55d")) + (no_connect (at 67.30 92.38) (uuid "e2a12a62-9dea-4c3e-b0e0-7efbc72de9c4")) + (no_connect (at 67.30 94.92) (uuid "8de157d1-90ec-4e7b-88c2-886d0a016593")) + (no_connect (at 67.30 97.46) (uuid "214a8be6-081e-42e1-8fc1-a24c2bc8b19d")) + (no_connect (at 67.30 100.00) (uuid "018f48e2-7da7-4e89-acf0-bdbf41251d7a")) + (no_connect (at 67.30 102.54) (uuid "d9bea9d3-c6cf-4b93-9392-3abf59c39536")) + (no_connect (at 67.30 110.16) (uuid "1ffdbae3-421c-4d83-8b81-b1e13744d4a5")) + (no_connect (at 92.70 82.22) (uuid "9bd783e9-c48c-46ff-87bf-e880ee86a4ae")) + (no_connect (at 92.70 89.84) (uuid "d9232796-4a85-444f-b0b7-151b57e3b15a")) + (no_connect (at 92.70 92.38) (uuid "27337b75-f6a9-43e4-8057-6a6c6a6b1497")) + (no_connect (at 92.70 102.54) (uuid "68731fe7-e8fa-478d-830a-327e396035b7")) + (no_connect (at 92.70 105.08) (uuid "ed2e67e7-f71e-4f40-9857-730c4f2aece4")) + (no_connect (at 92.70 107.62) (uuid "5fcf155e-16be-442a-ad40-dc65275e6534")) + (no_connect (at 92.70 110.16) (uuid "5bb98d7e-7fe5-4cc4-b891-fb9ac357f1bd")) + (no_connect (at 92.70 112.70) (uuid "12611750-f45c-4747-8123-850d7c7a6ef5")) + (symbol (lib_id "power:GND") (at 67.30 105.08 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "90614cc9-9200-4291-ad36-506daf5b4eae") + (property "Reference" "#PWR01" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 67.30 108.89 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 105.08 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "4069ed1d-9be4-43b0-9552-799bc1874e59"))) + (symbol (lib_id "power:+3.3V") (at 67.30 107.62 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "047670f9-4edf-40cc-893c-43449c60af04") + (property "Reference" "#PWR02" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 67.30 103.81 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 107.62 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "9c3b1c19-cdf2-4ca1-8127-c24c40898562"))) + (no_connect (at 67.30 112.70) (uuid "39689861-7dc9-4caf-bcf7-a8bbfab1a5cf")) + (symbol (lib_id "power:GND") (at 67.30 115.24 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "bf8de27f-d112-4070-8ad7-8cdb72b4c36e") + (property "Reference" "#PWR03" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 67.30 119.05 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 67.30 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "9cd249bd-ccdd-428e-8fe2-e8ec667da17c"))) + (no_connect (at 67.30 117.78) (uuid "81441dfc-f691-4702-8919-485e1e8d3cb6")) + (symbol (lib_id "power:+3.3V") (at 92.70 94.92 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "cc4e5a3d-7359-486d-91d0-45a14a3c6308") + (property "Reference" "#PWR04" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+3.3V" (at 92.70 91.11 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 94.92 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "04ebe58b-4d3d-4185-b343-a68d4216d4b6"))) + (symbol (lib_id "power:GND") (at 92.70 97.46 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "364ad1ce-3636-402b-abb9-304f2a84daa9") + (property "Reference" "#PWR05" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 92.70 101.27 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 97.46 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "1d267a24-372b-4567-90f6-79779f866033"))) + (symbol (lib_id "power:GND") (at 92.70 115.24 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "62280304-4f55-41e7-9060-3e32ba2e033e") + (property "Reference" "#PWR06" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 92.70 119.05 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 92.70 115.24 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "fe400b25-8d95-4c06-bd4e-eac51f57bb43"))) + (no_connect (at 92.70 117.78) (uuid "6414bc55-3285-4ead-87b4-a3d28824afe3")) + (label "D1/GPIO5" (at 92.70 84.76 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "9c1ee272-d8ea-428d-bbeb-40afdd49eaf2")) + (label "D2_TRIG" (at 92.70 87.30 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "1e4d5d67-85e5-4a9a-a1d0-050720ac877c")) + (label "D5_ECHO" (at 92.70 100.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "334aa4e8-d111-4867-8ce1-bdc338232f7c")) + (symbol (lib_id "riego_lib:HC_SR04") (at 175.00 80.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "941a0f07-a824-449e-b83a-257930ef58cd") + (property "Reference" "US1" (at 180.00 73.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "HC_SR04" (at 180.00 76.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 175.00 80.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 175.00 80.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "61170af5-f52b-4718-add5-1a294a219c44")) + (pin "2" (uuid "b4dc9900-90b8-4300-ade8-0c1971099c62")) + (pin "3" (uuid "7a90375b-7331-44f6-bd1c-b325f09e715b")) + (pin "4" (uuid "32911b37-bf7b-415e-90e2-bf0b15e86ad1")) + ) + (symbol (lib_id "power:+5V") (at 168.65 76.19 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "f1713082-cf73-4678-91d0-03009d940b92") + (property "Reference" "#PWR07" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 168.65 72.38 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 168.65 76.19 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "a705dfc1-296b-4309-bb36-7c4b79f54320"))) + (symbol (lib_id "power:GND") (at 168.65 83.81 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "97d4e620-7256-4c68-b2f9-b7426670f0f8") + (property "Reference" "#PWR08" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 168.65 87.62 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 168.65 83.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "00f42a51-d65a-4362-90cd-5d080ec70aa9"))) + (label "D2_TRIG" (at 168.65 78.73 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "5bd72fcb-de2b-44bf-b81c-2bed3fcd84b2")) + (label "ECHO_DIV" (at 168.65 81.27 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "a3b81f76-7c80-4667-bfa2-9e8b6a3f43b7")) + (symbol (lib_id "riego_lib:Relay_SunFounder_8CH") (at 175.00 145.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "e749c7eb-e4a1-4545-8b54-1e3ddf8a5d0e") + (property "Reference" "K1" (at 181.00 131.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "Relay_SunFounder_8CH" (at 181.00 134.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 175.00 145.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 175.00 145.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "c3eeecb1-1504-442d-9048-ce0f5c3396c9")) + (pin "2" (uuid "8c2d5c0d-cbe2-47f5-80d8-d855fe5e6906")) + (pin "3" (uuid "1dab4807-3a6e-4d44-9384-47e4cbd8e01d")) + (pin "4" (uuid "0640cc33-e8d2-407a-9ded-dc6281c8f643")) + (pin "5" (uuid "4f2f6056-10af-41f1-bbcc-7dec1fb8b811")) + (pin "6" (uuid "9faa3128-9ffc-4168-8604-5c666cab31cd")) + (pin "7" (uuid "4adad661-f566-46a3-bf02-6503242fc386")) + (pin "8" (uuid "cdc73ace-ccd3-4f69-a228-e97521b9f8dc")) + (pin "9" (uuid "0bd7a1b5-4398-4ab9-90e2-4ae2a4306148")) + (pin "10" (uuid "dd3d70dc-3d54-4ab0-a9d8-3a3ef07eba7c")) + ) + (symbol (lib_id "power:+5V") (at 182.62 143.73 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "ab3bbc0d-f66a-48d9-85e4-b229642cb29d") + (property "Reference" "#PWR09" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "+5V" (at 182.62 139.92 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 182.62 143.73 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "90979a1c-a2bb-468c-9db8-233a76c2ec80"))) + (symbol (lib_id "power:GND") (at 182.62 146.27 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "2bfe8a0c-8366-4f1f-983c-342518713f82") + (property "Reference" "#PWR10" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 182.62 150.08 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 182.62 146.27 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "6766b538-ca32-4e2a-a5c7-3bbc0b9a01c0"))) + (label "D1/GPIO5" (at 167.38 136.11 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "d28703e8-5c80-42b7-9aef-1a42be7842b4")) + (no_connect (at 167.38 138.65) (uuid "b91d7e27-dd20-4220-b56f-c5d940e8abbc")) + (no_connect (at 167.38 141.19) (uuid "925546e9-42e1-4dcb-a131-edd6dffca827")) + (no_connect (at 167.38 143.73) (uuid "810351ab-f872-486a-8777-8623fa1e822f")) + (no_connect (at 167.38 146.27) (uuid "abdac87b-d47c-44c5-bf60-d1d476001c92")) + (no_connect (at 167.38 148.81) (uuid "7cf3a7f1-4ae8-40d0-a7ad-4ee653606ee4")) + (no_connect (at 167.38 151.35) (uuid "aab02d01-3198-4592-b2e5-27de9f6af818")) + (no_connect (at 167.38 153.89) (uuid "7cd0b474-683b-4784-8765-2a8f18a21930")) + (symbol (lib_id "Device:R") (at 125.00 83.00 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "dbdd8488-d3bb-49c4-ad28-5e4adec358b0") + (property "Reference" "R1A" (at 125.00 80.46 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 127.54 80.46 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "d1ea9a71-841c-4a70-a810-6f7847daa79a")) + (pin "2" (uuid "6d57f0f0-e524-467d-af0a-e08a133bbff6")) + ) + (symbol (lib_id "Device:R") (at 125.00 85.54 90) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "ca589272-2260-4506-95d2-73e26ab5b2ca") + (property "Reference" "R1B" (at 125.00 83.00 0) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 127.54 83.00 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 125.00 85.54 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 125.00 85.54 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "f2ea9413-2522-4221-a762-bb80d81e3d2f")) + (pin "2" (uuid "820612c8-4ab7-4e32-b63a-71c3c1a138a9")) + ) + (symbol (lib_id "Device:R") (at 128.81 90.00 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "8f432cd5-747b-4d55-9fe1-3ad102cb9e79") + (property "Reference" "R3" (at 130.84 90.00 90) + (effects (font (size 1.27 1.27)))) + (property "Value" "2.2k" (at 133.38 90.00 90) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 128.81 90.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "~" (at 128.81 90.00 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "a626a6fb-e2f9-41b6-ac30-5f9cf9e7748f")) + (pin "2" (uuid "c4dff62d-8b2d-443a-82ba-3e1612f498c8")) + ) + (wire (pts (xy 121.19 83.00) (xy 121.19 85.54)) + (stroke (width 0) (type default)) (uuid "f1944a7f-4f80-4aa6-afc3-0d36557dc963")) + (label "ECHO_DIV" (at 121.19 83.00 180) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "ebd347a1-95e1-4876-8943-1007f955da0c")) + (wire (pts (xy 128.81 83.00) (xy 128.81 85.54)) + (stroke (width 0) (type default)) (uuid "f9baf9cb-83a0-4b9b-a138-c3d18c0a5185")) + (wire (pts (xy 128.81 85.54) (xy 128.81 86.19)) + (stroke (width 0) (type default)) (uuid "a1305bc4-3a0c-4668-8e74-51b77d06ff9f")) + (junction (at 128.81 85.54) (diameter 0) (color 0 0 0 0) (uuid "50c908c5-de3a-4943-ba01-5ee543b9a8e8")) + (label "D5_ECHO" (at 128.81 83.00 0) (fields_autoplaced) + (effects (font (size 1.27 1.27))) + (uuid "f3d9eb23-6538-4a2b-9380-cc8de35e65c5")) + (symbol (lib_id "power:GND") (at 128.81 93.81 0) (unit 1) + (exclude_from_sim no) (in_bom yes) (on_board yes) (dnp no) + (uuid "1b67032e-6382-405e-985d-4e29b2d1b47d") + (property "Reference" "#PWR11" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Value" "GND" (at 128.81 97.62 0) + (effects (font (size 1.27 1.27)))) + (property "Footprint" "" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (property "Datasheet" "" (at 128.81 93.81 0) + (effects (font (size 1.27 1.27)) (hide yes))) + (pin "1" (uuid "308bab1e-eb13-46fe-ac0e-f47eefb95f65"))) + + (sheet_instances + (path "/" (page "1"))) +)