# Smart Button with E-Ink display ## Description Smart Button Terminal Animator: ESP32 & Raspberry Pi Zero 2 W Edition ## Project Details - **Owner:** vasy_skral - **Created:** 11/8/2023 - **Last Updated:** 11/10/2023 - **Visibility:** Public - **System Architecture:** ```mermaid flowchart TB subgraph USB_C_Power_Data[USB-C Connector] USB_C["USB-C 5V Power/Data"] CC1["CC1 Resistor\n5.1kΩ to GND"] CC2["CC2 Resistor\n5.1kΩ to GND"] TVS_DP["TVS D+ (<1pF) to GND"] TVS_DM["TVS D- (<1pF) to GND"] end USB_C --> VBUS5["5V Rail"] subgraph Power_Conversion[Power Conversion] BUCK5["5V Buck Regulator\nLMR50410"] LDO3V3["3.3V Regulator\nAMS1117-3.3"] end VBUS5 --> BUCK5 --> V33["3.3V Rail"] VBUS5 --> Pi["Raspberry Pi Zero 2 W\n40-pin Header"] VBUS5 --> ESP["ESP32 MCU"] V33 --> Pi V33 --> ESP subgraph Signals[Connectivity] Pi_TX["Pi TXD0 (GPIO14)"] Pi_RX["Pi RXD0 (GPIO15)"] R_SER_TX["47Ω"] R_SER_RX["47Ω"] Pi_LED["Pi LED GPIO"] R_LED["330Ω"] LED["Status LED"] BTN["SW1 Button"] DBG["3-pin UART Debug Header"] end Pi_TX --> R_SER_TX --> ESP:RXD0 ESP:TXD0 --> R_SER_RX --> Pi_RX Pi_LED --> R_LED --> LED --> GND BTN --> Pi Pi_TX --> DBG Pi_RX --> DBG ESP --> EInk["E-Ink Display"] ``` - **System Architecture:** ```mermaid flowchart TB USB_C["USB-C 5V Power Input"] Pi["Raspberry Pi Zero 2 W\n(40-pin header)"] ESP["ESP32 MCU"] EInk["E-Ink Display"] USB_C --> Pi USB_C --> ESP Pi -- "UART" --> ESP ESP --> EInk ``` - **License:** https://creativecommons.org/licenses/by/4.0/ - **Stars:** 4 - **Forks:** 6 - **Copies:** 341 ## Key Components ### D1 — [ESD321DPYR](https://www.flux.ai/corvus96/esd321dpyr.md) - Role: Protection - Datasheet URL: https://www.ti.com/lit/ds/symlink/esd321.pdf?HQS=dis-dk-null-digikeymode-dsf-pf-null-wwe&ts=1690491326127&ref_url=https%253A%252F%252Fwww.ti.com%252Fgeneral%252Fdocs%252Fsuppproductinfo.tsp%253FdistId%253D10%2526gotoUrl%253Dhttps%253A%252F%252Fwww.ti.com%252Flit%252Fgpn%252Fesd321 - Manufacturer Name: Texas Instruments - Role Details: ESD protection diode for USB D+ and D- (capacitance <1pF) - Manufacturer Part Number: ESD321DPYR **Pins:** - GND [pin 2] - IO [pin 1] ### D2 — [ESD321DPYR](https://www.flux.ai/corvus96/esd321dpyr.md) - Manufacturer Part Number: ESD321DPYR - Datasheet URL: https://www.ti.com/lit/ds/symlink/esd321.pdf?HQS=dis-dk-null-digikeymode-dsf-pf-null-wwe&ts=1690491326127&ref_url=https%253A%252F%252Fwww.ti.com%252Fgeneral%252Fdocs%252Fsuppproductinfo.tsp%253FdistId%253D10%2526gotoUrl%253Dhttps%253A%252F%252Fwww.ti.com%252Flit%252Fgpn%252Fesd321 - Role Details: ESD protection diode for USB D+ and D- (capacitance <1pF) - Role: Protection - Manufacturer Name: Texas Instruments **Pins:** - GND [pin 2] - IO [pin 1] ### E-Ink — [HTEW0154T8](https://www.flux.ai/vasy_skral/htew0154t8.md) - Manufacturer Name: Chengdu Heltec Automation technology CO., LTD - Datasheet URL: https://resource.heltec.cn/download/e-ink/154/1.54b%26w/HTEW0154T8_V20/HTEW0154T8_V20.pdf - Product Info Url: https://heltec.org/project/154-e-ink/ - License: https://creativecommons.org/licenses/by/4.0/ - Manufacturer Part Number: HTEW0154T8 - Part Type: Display Device - Purchase Url: https://www.aliexpress.com/item/1005005765133180.html **Pins:** - BUSY [pin 7] - CLK [pin 6] - CS [pin 5] - D/C [pin 3] - GND [pin 2] - SDI [pin 4] - VCC [pin 1] ### ESP1 — [ESP32-PICO-KIT-1](https://www.flux.ai/vasy_skral/esp32-pico-kit-1.md) - Manufacturer Part Number: ESP32-PICO-KIT-1 - Datasheet URL: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-pico-kit-1.html - Manufacturer Name: Espressif Systems - Part Type: Dev Board - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - EN [pin J2_18] - EXT_5V [pin J3_20] - GND [pin J3_3] - GND_1 [pin J2_19] - GND_2 [pin J3_19] - IO0 [pin J3_17] - IO10 [pin J2_10] - IO12 [pin J3_12] - IO13 [pin J3_13] - IO14 [pin J3_11] - IO15 [pin J3_14] - IO18 [pin J2_8] - IO19 [pin J2_6] - IO2 [pin J3_15] - IO20 [pin J2_3] - IO21 [pin J2_4] - IO22 [pin J2_5] - IO23 [pin J2_7] - IO25 [pin J3_6] - IO26 [pin J3_7] - IO27 [pin J3_10] - IO32 [pin J3_8] - IO33 [pin J3_9] - IO34 [pin J2_15] - IO35 [pin J2_14] - IO37 [pin J2_17] - IO38 [pin J2_16] - IO4 [pin J3_16] - IO5 [pin J2_9] - IO9 [pin J2_11] - RXD0 [pin J2_12] - SENSOR_VN [pin J3_5] - SENSOR_VP [pin J3_4] - TXD0 [pin J2_13] - VDD33_1 [pin J2_20] - VDD33_2 [pin J3_18] ### F1 — [1206L050/15YR](https://www.flux.ai/jecstronic/1206l05015yr.md) - Role Details: Input overcurrent protection for Raspberry Pi VBUS - Manufacturer Part Number: 1206L050/15YR - Role: Protection},{ - Manufacturer Name: Littelfuse Inc. - Datasheet URL: https://www.littelfuse.com/media?resourcetype=datasheets&itemid=2b6a1515-d4ee-4c83-8bd4-152b4901b8f5&filename=littelfuse_ptc_1206l_datasheet.pdf - License: https://creativecommons.org/licenses/by/4.0/ - Part Type: Fuse **Pins:** - P1 [pin 1] - P2 [pin 2] ### J_DBG — [Pin Header 01x03 2.54mm Vertical](https://www.flux.ai/adrian95/pin-header-01x03-254mm-vertical.md) - Role Details: UART debug header for Raspberry Pi serial console - Role: Connector - Part Type: Connector **Pins:** - Pin_1 [pin 1] - Pin_2 [pin 2] - Pin_3 [pin 3] ### J_PIZERO — [Raspberry Pi Zero Shield](https://www.flux.ai/jharwinbarrozo/raspberry-pi-zero-shield.md) - Manufacturer Part Number: ADA3708 - Role Details: Raspberry Pi Zero 2 W 40-pin GPIO header footprint - Manufacturer Name: Raspberry Pi Foundation - Role: Connector **Pins:** - ~CE0~/GPIO8 - ~CE1/~GPIO7 - 3V3[1] - 3V3[2] - 5V[1] - 5V[2] - GEN/6GPIO25 - GEN4/GPIO23 - GEN5/GPIO24 - GND[1] - GND[2] - GND[3] - GND[4] - GND[5] - GND[6] - GND[7] - GND[8] - GPIO10/MOSI - GPIO11/SCLK - GPIO12 - GPIO13 - GPIO16 - GPIO17/GEN0 - GPIO18 - GPIO19 - GPIO2/SDA - GPIO20 - GPIO21 - GPIO22/GEN3 - GPIO26 - GPIO27/GEN2 - GPIO3/SCL - GPIO4/GPCKL0 - GPIO5 - GPIO6 - GPIO9/MISO - ID_SC - ID_SD - RXD0/GPIO15 - TXD0/GPIO14 ### J_UART — [Pin Header 02x05 2.54mm Vertical](https://www.flux.ai/adrian95/pin-header-02x05-254mm-vertical.md) - License: https://creativecommons.org/licenses/by/4.0/ - Role Details: UART communication interface between Raspberry Pi Zero 2 W (GPIO14/15) and ESP32 (TXD0/RXD0) - Role: Connector - Part Type: Connector **Pins:** - Pin_1 [pin 1] - Pin_10 [pin 10] - Pin_2 [pin 2] - Pin_3 [pin 3] - Pin_4 [pin 4] - Pin_5 [pin 5] - Pin_6 [pin 6] - Pin_7 [pin 7] - Pin_8 [pin 8] - Pin_9 [pin 9] ### J_USB_C — [2024100002](https://www.flux.ai/adrian95/2024100002.md) - License: https://creativecommons.org/licenses/by/4.0/ - Datasheet URL: https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/834/202410002_Pkg_Spec.pdf - Manufacturer Name: Molex - Manufacturer Part Number: 2024100002 - Part Type: Connector - Role: Connector - Role Details: USB Type-C power and OTG receptacle **Pins:** - CC1 [pin A5] - CC2 [pin B5] - DA- [pin A7] - DA+ [pin A6] - DB- [pin B7] - DB+ [pin B6] - GND1 [pin A1] - GND2 [pin A12] - GND3 [pin B1] - GND4 [pin B12] - RX1- [pin B10] - RX1+ [pin B11] - RX2- [pin A10] - RX2+ [pin A11] - SBU1 [pin A8] - SBU2 [pin B8] - SHIELD1 [pin SH1] - SHIELD2 [pin SH2] - SHIELD3 [pin SH3] - SHIELD4 [pin SH4] - TX1- [pin A3] - TX1+ [pin A2] - TX2- [pin B3] - TX2+ [pin B2] - VBUS1 [pin A4] - VBUS2 [pin A9] - VBUS3 [pin B4] - VBUS4 [pin B9] ### J_USB_C — [2024100002](https://www.flux.ai/adrian95/2024100002.md) - Manufacturer Name: Molex - Role Details: 5V USB-C power input - Datasheet URL: https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/834/202410002_Pkg_Spec.pdf - License: https://creativecommons.org/licenses/by/4.0/ - Role: Connector - Part Type: Connector - Manufacturer Part Number: 2024100002 **Pins:** - CC1 [pin A5] - CC2 [pin B5] - DA- [pin A7] - DA+ [pin A6] - DB- [pin B7] - DB+ [pin B6] - GND1 [pin A1] - GND2 [pin A12] - GND3 [pin B1] - GND4 [pin B12] - RX1- [pin B10] - RX1+ [pin B11] - RX2- [pin A10] - RX2+ [pin A11] - SBU1 [pin A8] - SBU2 [pin B8] - SHIELD1 [pin SH1] - SHIELD2 [pin SH2] - SHIELD3 [pin SH3] - SHIELD4 [pin SH4] - TX1- [pin A3] - TX1+ [pin A2] - TX2- [pin B3] - TX2+ [pin B2] - VBUS1 [pin A4] - VBUS2 [pin A9] - VBUS3 [pin B4] - VBUS4 [pin B9] ### LED1 — [LED 0603 (1608 Metric)](https://www.flux.ai/jharwinbarrozo/led-0603-1608-metric.md) - Role Details: Status indicator LED for Raspberry Pi script execution - Role: LED - Part Type: LED **Pins:** - A [pin 2] - K [pin 1] ### SW1 — [MX1A-11NW](https://www.flux.ai/vasy_skral/mx1a-11nw.md) - License: https://creativecommons.org/licenses/by/4.0/ - Part Type: Switch - Manufacturer Name: Cherry Americas LLC - Manufacturer Part Number: MX1A-11NW - Datasheet URL: https://media.digikey.com/pdf/Data%20Sheets/Cherry%20PDFs/MX%20Series.pdf **Pins:** - 1 [pin 1] - 2 [pin 2] ### U1 — [NLVHC1G14DFT1G](https://www.flux.ai/vasy_skral/nlvhc1g14dft1g.md) - Manufacturer Part Number: NLVHC1G14DFT1G - Part Type: Integrated Circuit - License: https://creativecommons.org/licenses/by/4.0/ - Datasheet URL: https://www.onsemi.com/pdf/datasheet/mc74hc1g14-d.pdf - Manufacturer Name: onsemi **Pins:** - A [pin 2] - GND [pin 3] - NC [pin 1] - VCC [pin 5] - Y [pin 4] ### U2 — [LMR50410Y5FQDBVRQ1](https://www.flux.ai/adrian95/lmr50410y5fqdbvrq1.md) - Role: Power Management - Datasheet URL: https://www.ti.com/lit/ds/symlink/lmr50410-q1.pdf - Role Details: 5V buck regulator for Raspberry Pi Zero 2 W VBUS - Manufacturer Name: Texas Instruments - Part Type: Integrated Circuit - Manufacturer Part Number: LMR50410Y5FQDBVRQ1 - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - CB [pin 1] - EN [pin 4] - FB [pin 3] - GND [pin 2] - SW [pin 6] - VIN [pin 5] ### U3 — [AMS1117-3.3](https://www.flux.ai/adrian95/ams1117-33.md) - License: https://creativecommons.org/licenses/by/4.0/ - Manufacturer Name: ams - Datasheet URL: https://www.snapeda.com/parts/AMS1117-3.3/Advanced%20Monolithic%20Systems/view-part/?ref=search&t=AMS1117-3.3 - Part Type: Integrated Circuit - Manufacturer Part Number: AMS1117-3.3 - Role Details: Regulates 3.3V rail for ESP32 and E-Ink display - Role: Power Conversion **Pins:** - GND [pin 1] - VI [pin 3] - VO [pin 2] *The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/vasy_skral/smart-button-with-e-ink-display](https://www.flux.ai/vasy_skral/smart-button-with-e-ink-display).* --- *Generated from [https://www.flux.ai/vasy_skral/smart-button-with-e-ink-display](https://www.flux.ai/vasy_skral/smart-button-with-e-ink-display)*