Byggeguide, beta
Bygg din egen skjerm.
Du trenger et ESP32-kort, et 4,2″ e-ink-panel fra Waveshare og en USB-kabel. Firmwaren er åpen kildekode, og alt skjermen skal vise, henter den fra Quiver-appen.
- 4
- steg
- 8
- ledninger
- 400 × 300
- piksler
Du trenger Quiver-appen og en Strava-konto. Skjermen viser det appen henter fra Strava.
Finn fram delene
Et kort og et panel er nok til å komme i gang. Knapper, batteri og kabinett kan du legge til senere.
Må ha
- ESP32-kort med Wi-Fi og Bluetooth LE Guiden bruker Arduino Nano ESP32. Kortet trenger MicroPython 1.22 eller nyere.
- Waveshare 4.2″ e-Paper Module Svart/hvit eller svart/hvit/rød, 400 × 300 piksler. Bruk SPI-kabelen som følger med.
- USB-kabel Til å flashe kortet og gi det strøm.
Kjekt å ha
- Trykknapper, 1 til 3 Bytter visning og blar. Én 10 kΩ pull-up per knapp.
- LiPo-batteri Krever et kort som lader og sover på mikroampere.
- MOSFET Slår av strømmen til panelet mellom oppdateringene.
- Ramme eller kabinett En bilderamme, en 3D-printet boks eller en hylle.
Kortet må ha Bluetooth LE til oppsettet og Wi-Fi til å hente bilder. ESP32-S2 mangler Bluetooth og virker derfor ikke. Se kortene som er prøvd.
Sjekk revisjonen før du kjøper. Driveren er skrevet for UC8176-kontrolleren, og enkelte nyere V2-paneler bruker en annen.
Koble panelet til kortet
Panelet har åtte ledninger. Fargene i tegningen er de samme som på kabelen fra Waveshare, så du kan koble farge for farge. Trekk ut USB-kabelen mens du kobler.
Koblingen, ledning for ledning
| Ledning | Panel | Nano ESP32 | GPIO i board.json |
|---|---|---|---|
| Grå | VCC | 3.3V | strøm |
| Brun | GND | GND | jord |
| Blå | DIN | D11 | 38 |
| Gul | CLK | D13 (SCK) | 48 |
| Oransje | CS | D10 | 21 |
| Grønn | DC | D9 | 18 |
| Hvit | RST | D8 | 17 |
| Lilla | BUSY | D7 | 10 |
board.json tar GPIO-numrene i høyre kolonne. Merkene på kortet, som D11, er bare der for å hjelpe deg å finne riktig pinne.
Vil du ha knapper?
Koble hver knapp mellom pinnen og GND, med en 10 kΩ-motstand til 3.3V. Neste visning går på D2 (GPIO 5), side ned på D3 (GPIO 6) og side opp på D4 (GPIO 7). Knappene vekker kortet fra dyp søvn, og uten knapp viser skjermen én visning om gangen.
Bruk eksterne pull-up-motstander: de interne er ikke til å stole på mens kortet sover. Knappene må sitte på GPIO 0–21 på ESP32-S3.
Last inn firmwaren
Kortet trenger MicroPython og filene fra repoet. Du gjør alt fra terminalen på maskinen din, med kortet koblet til over USB.
-
Flash MicroPython
Last ned fila for kortet ditt fra micropython.org/download og flash den. For Nano ESP32 heter den
ARDUINO_NANO_ESP32. -
Hent firmwaren
git clone https://github.com/wext-dev/quiver-device.git cd quiver-device python -m venv .venv && source .venv/bin/activate pip install -r requirements.txt -
Velg panelet ditt i board.json
Kopier
board.example.jsontildevice/board.json. Fila holder bare oppsettet, så passord og token hører hjemme et annet sted.ws-4.2-bwsvart/hvit, raskerews-4.2-bwrsvart/hvit/rød, ca. 15 s{ "panel": "ws-4.2-bwr", "pins": { "button": 5 } } -
Kopier filene til kortet
Kjør kommandoen fra
device/med mpremote.mpremote cp -r quiver main.py board.json :
Par skjermen i appen
Trykk RESET på kortet. Panelet viser «Sett opp skjermen» med en QR-kode, og kortet dukker opp over Bluetooth som Quiver-XXXX.
- Åpne Enheter i appen og trykk Legg til enhet.
- Skann QR-koden på panelet. Appen sender Wi-Fi-passordet kryptert med en nøkkel som bare finnes i koden.
- Vent til panelet sier «Koblet til». Første bilde kommer like etter.
Mål
Skjermen er klar.
Herfra oppdaterer den seg selv over Wi-Fi, også med ny firmware. Velg hva den skal vise i appen, og bygg videre når du vil.
Står det fast?
Panelet viser ingenting
Sjekk at BUSY og RST sitter på riktig pinne, og at panelet i board.json passer med panelet ditt. Sjekk også revisjonen: nyere V2-paneler kan ha en annen kontroller.
Rødt panel viser bare svart
Da står panelet trolig som ws-4.2-bw. Bytt til ws-4.2-bwr og kopier board.json til kortet på nytt.
Kortet dukker ikke opp i appen
Kortet må ha Bluetooth LE. Trykk RESET, og hold telefonen nær panelet mens du skanner.
Guiden er tidlig, og ikke alle kort og panelrevisjoner er prøvd. Spør i forumet hvis noe går galt.
Bygg videre
Andre kort og paneler
Kortet må ha både Wi-Fi og Bluetooth LE. ESP32-S2 har ikke Bluetooth og virker ikke. Med et annet kort enn Nano ESP32 setter du pinnene i board.json selv: ESP32 kan legge SPI på hvilke som helst ledige pinner.
| Kort | Brikke | Merknad | |
|---|---|---|---|
| Arduino Nano ESP32 | ESP32-S3 | Standardoppsettet i board.json. Fint på skrivebordet, men strømlampen står alltid på: ikke til batteri. | Standard |
| Seeed Studio XIAO ESP32-S3 | ESP32-S3 | Lite, med lader. Godt valg for batteri. | Batteri |
| DFRobot FireBeetle 2 ESP32-S3 | ESP32-S3 | Laget for lavt strømforbruk, med lader. | Batteri |
| Adafruit Feather ESP32-S3 | ESP32-S3 | Lader og batterikontakt på kortet. | Batteri |
| ESP32-DevKitC og lignende | ESP32 (WROOM/WROVER) | Har Wi-Fi og Bluetooth LE. Sett pinnene i board.json selv. | Bør virke |
| Panel | Farger | panel | Merknad |
|---|---|---|---|
| Waveshare 4.2″ e-Paper Module (B) | Svart, hvit, rød | ws-4.2-bwr | Rødt for favoritten og ukas kilometer. En full oppdatering tar ca. 15 s. |
| Waveshare 4.2″ e-Paper Module | Svart, hvit (og grått) | ws-4.2-bw | Raskere oppdatering. Kan tegne grått for jevnere tekst. |
Waveshare har byttet kontroller på enkelte nyere revisjoner (V2). Større paneler, som 7.5″, trenger en egen driver.
Kjør på batteri
Det meste av strømmen går til Wi-Fi og TLS mens kortet er våkent. Et svar uten noe nytt rører ikke panelet. Med oppdatering hver halvtime kan et 2000 mAh-batteri vare i år, men bare hvis kortet selv sover på mikroampere. Bruk en MOSFET til å slå av panelet mellom oppdateringene, og to like motstander (f.eks. 100 kΩ) som spenningsdeler hvis du vil se batterinivået.
| Tid | Strøm | |
|---|---|---|
| Våken: Wi-Fi, TLS, én forespørsel | 3–8 s | 80–150 mA |
| Oppdatering av panelet (rødt) | ~15 s | 20–40 mA |
| Dyp søvn (ESP32-brikken) | resten | ~10 µA |
Omtrentlige tall. Mål ditt eget oppsett.
Oppdateringer
Nye versjoner av firmwaren publiseres i repoet, og skjermen henter dem selv over Wi-Fi (OTA). README-en i repoet forklarer hvordan du skrur det av og ruller tilbake.
Sikkerhet
- Kortet har et eget skjermtoken, aldri brukerpassordet ditt. Fjerner du skjermen i appen, slutter tokenet å virke og kortet glemmer Wi-Fi-passordet.
- Oppsettet krever at noen står foran panelet: Wi-Fi sendes kryptert med en hemmelighet som bare finnes i QR-koden, og som er ny for hvert oppsett.
secrets.json(Wi-Fi og token) ligger ukryptert på flash, og kan leses av den som har USB-tilgang til kortet.
