Add membership renewals and door unlock

This commit is contained in:
Dorian
2026-05-17 19:17:49 -05:00
parent a28a5756c5
commit e022ac1faa
9 changed files with 410 additions and 79 deletions

View File

@@ -1,5 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="940" viewBox="0 0 1600 940" role="img" aria-labelledby="title desc">
<title id="title">Photo overlay wiring guide for ESP32 DevKit and PN532 NFC module</title>
<title id="title">Photo overlay wiring guide for XIAO ESP32-S3 and PN532 NFC module</title>
<desc id="desc">Annotated photo overlay showing common ESP32 DevKit pins wired to PN532 I2C pins for the L484 NFC door reader.</desc>
<defs>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
@@ -21,7 +21,7 @@
</defs>
<rect class="bg" width="1600" height="940"/>
<text class="title" x="60" y="70">ESP32 + PN532 PHOTO WIRING OVERLAY</text>
<text class="title" x="60" y="70">XIAO ESP32-S3 + PN532 WIRING OVERLAY</text>
<text class="subtitle" x="62" y="104">SUPPLIED BOARD PHOTOS, PN532 IN I2C MODE</text>
<g filter="url(#shadow)">
@@ -34,7 +34,7 @@
<image href="../PN532.jpg" x="1048" y="204" width="454" height="454" preserveAspectRatio="xMidYMid meet"/>
</g>
<!-- ESP32 common DevKit V1 target dots. The supplied ESP32 photo does not expose readable pin labels. -->
<!-- XIAO ESP32-S3 target dots. Confirm against the board silkscreen before powering. -->
<circle class="pinDot" cx="455" cy="728" r="12" stroke="#e23a3a"/>
<circle class="pinDot" cx="455" cy="690" r="12" stroke="#202020"/>
<circle class="pinDot" cx="455" cy="320" r="12" stroke="#3f8cff"/>
@@ -74,18 +74,18 @@
<rect class="tag" x="525" y="662" width="168" height="38" rx="10" stroke="#202020"/>
<text class="tagText" x="544" y="687">GND -> GND</text>
<rect class="tag" x="524" y="302" width="188" height="38" rx="10" stroke="#3f8cff"/>
<text class="tagText" x="543" y="327">GPIO21 -> SDA</text>
<text class="tagText" x="543" y="327">D4 / GPIO5 -> SDA</text>
<rect class="tag" x="524" y="248" width="188" height="38" rx="10" stroke="#ffd23c"/>
<text class="tagText" x="543" y="273">GPIO22 -> SCL</text>
<text class="tagText" x="543" y="273">D5 / GPIO6 -> SCL</text>
<rect class="tag" x="524" y="586" width="168" height="38" rx="10" stroke="#b96cff"/>
<text class="tagText" x="543" y="611">GPIO4 -> IRQ</text>
<text class="tagText" x="543" y="611">D2 / GPIO3 -> IRQ</text>
<rect class="tag" x="524" y="478" width="216" height="38" rx="10" stroke="#34d399"/>
<text class="tagText" x="543" y="503">GPIO5 -> RSTO</text>
<text class="tagText" x="543" y="503">D3 / GPIO4 -> RSTO</text>
</g>
<g>
<rect class="tag" x="62" y="815" width="1476" height="72" rx="18" stroke="#f2ad24"/>
<text class="note" x="92" y="846">VERIFY THE SILKSCREEN/PINOUT ON YOUR EXACT ESP32 BOARD BEFORE POWERING.</text>
<text class="body" x="92" y="873">The ESP32 photo does not show pin labels, so the ESP32 dots follow the common 30-pin DevKit V1 pinout. The PN532 labels are visible in the supplied photo.</text>
<text class="note" x="92" y="846">VERIFY THE SILKSCREEN/PINOUT ON YOUR EXACT XIAO BOARD BEFORE POWERING.</text>
<text class="body" x="92" y="873">Use XIAO D4/GPIO5 for SDA, D5/GPIO6 for SCL, D2/GPIO3 for IRQ, and D3/GPIO4 for reset. Set the PN532 to I2C mode.</text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -1,6 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1400" height="820" viewBox="0 0 1400 820" role="img" aria-labelledby="title desc">
<title id="title">ESP32 to PN532 I2C wiring for L484 door reader</title>
<desc id="desc">Wiring diagram showing PN532 VCC, GND, SDA, SCL, IRQ, and reset pins connected to ESP32 3V3, GND, GPIO21, GPIO22, GPIO4, and GPIO5.</desc>
<title id="title">XIAO ESP32-S3 to PN532 I2C wiring for L484 door reader</title>
<desc id="desc">Wiring diagram showing PN532 VCC, GND, SDA, SCL, IRQ, and reset pins connected to XIAO ESP32-S3 3V3, GND, D4/GPIO5, D5/GPIO6, D2/GPIO3, and D3/GPIO4.</desc>
<defs>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
<feDropShadow dx="0" dy="18" stdDeviation="18" flood-color="#000000" flood-opacity="0.45"/>
@@ -33,7 +33,7 @@
<rect class="panel" x="48" y="42" width="1304" height="736" rx="28"/>
<text class="label" x="92" y="102">L484 NFC DOOR READER WIRING</text>
<text class="small" x="94" y="137">ESP32 DEV BOARD + PN532 NFC V3 MODULE, I2C MODE</text>
<text class="small" x="94" y="137">XIAO ESP32-S3 + PN532 NFC V3 MODULE, I2C MODE</text>
<!-- ESP32 board -->
<g filter="url(#shadow)">
@@ -41,16 +41,16 @@
<rect x="226" y="222" width="164" height="58" rx="10" fill="#d6d6d6" stroke="#5d5d5d" stroke-width="2"/>
<text class="small" x="263" y="257" fill="#111">USB-C</text>
<rect class="chip" x="222" y="350" width="168" height="128" rx="14"/>
<text class="label" x="227" y="420" font-size="24">ESP32</text>
<text class="small" x="222" y="506">DEV BOARD</text>
<text class="label" x="227" y="420" font-size="24">XIAO</text>
<text class="small" x="222" y="506">ESP32-S3</text>
<g>
<circle class="pin" cx="142" cy="302" r="15"/><text class="pinText" x="172" y="308">3V3</text>
<circle class="pin" cx="142" cy="356" r="15"/><text class="pinText" x="172" y="362">GND</text>
<circle class="pin" cx="142" cy="410" r="15"/><text class="pinText" x="172" y="416">GPIO21</text>
<circle class="pin" cx="142" cy="464" r="15"/><text class="pinText" x="172" y="470">GPIO22</text>
<circle class="pin" cx="142" cy="518" r="15"/><text class="pinText" x="172" y="524">GPIO4</text>
<circle class="pin" cx="142" cy="572" r="15"/><text class="pinText" x="172" y="578">GPIO5</text>
<circle class="pin" cx="142" cy="410" r="15"/><text class="pinText" x="172" y="416">D4 / GPIO5</text>
<circle class="pin" cx="142" cy="464" r="15"/><text class="pinText" x="172" y="470">D5 / GPIO6</text>
<circle class="pin" cx="142" cy="518" r="15"/><text class="pinText" x="172" y="524">D2 / GPIO3</text>
<circle class="pin" cx="142" cy="572" r="15"/><text class="pinText" x="172" y="578">D3 / GPIO4</text>
</g>
</g>
@@ -84,19 +84,19 @@
<path class="wireThin" stroke="#ffffff" d="M142 410 C364 420 1012 402 1258 410"/>
<path class="wire" stroke="#3f8cff" d="M142 410 C364 420 1012 402 1258 410"/>
<text class="callout" x="622" y="396">GPIO21 -> SDA</text>
<text class="callout" x="622" y="396">D4 / GPIO5 -> SDA</text>
<path class="wireThin" stroke="#ffffff" d="M142 464 C362 502 1014 448 1258 464"/>
<path class="wire" stroke="#ffd23c" d="M142 464 C362 502 1014 448 1258 464"/>
<text class="callout" x="622" y="488">GPIO22 -> SCL</text>
<text class="callout" x="622" y="488">D5 / GPIO6 -> SCL</text>
<path class="wireThin" stroke="#ffffff" d="M142 518 C376 600 1004 498 1258 518"/>
<path class="wire" stroke="#b96cff" d="M142 518 C376 600 1004 498 1258 518"/>
<text class="callout" x="646" y="566">GPIO4 -> IRQ</text>
<text class="callout" x="646" y="566">D2 / GPIO3 -> IRQ</text>
<path class="wireThin" stroke="#ffffff" d="M142 572 C382 684 1002 576 1258 572"/>
<path class="wire" stroke="#34d399" d="M142 572 C382 684 1002 576 1258 572"/>
<text class="callout" x="616" y="660">GPIO5 -> RSTO/RST</text>
<text class="callout" x="616" y="660">D3 / GPIO4 -> RSTO/RST</text>
<text class="warning" x="92" y="735">VERIFY THE SILKSCREEN ON YOUR EXACT BOARDS BEFORE POWERING.</text>
<text class="note" x="92" y="762">Some PN532 V3 modules label reset as RSTO, RST, or RSTPDN. Set the PN532 switches/jumpers to I2C mode.</text>

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB