-
Tap to book a room — powered by your phone's NFC field
04/22/2026 at 16:25 • 0 commentsHere's a real-world use case for this project: an ePaper room sign that you can book with a phone tap. No button, no active radio on the device side, the inki door sign does not need to be powered at all.
For this I put the NFC test circuit into an inki device (https://github.com/c0de111/inki). Used with seatsurfing (https://github.com/seatsurfing/seatsurfing) it shows automatically the current room status — free or booked, who has it, until when. Between automatic updates, the Pico W is completely off. The image stays on the ePaper without any power. For details also see https://hackaday.io/project/203726-inki-low-power-wireless-epaper-device
**What happens when you tap**
1. The ST25DV04KC NFC chip wakes powered from the phone's 13.56 MHz RF field — no current from battery
2. The Android app writes a 16-byte command to the chip's EEPROM: opcode 0x10 (Book Seat) + your user name
3. The chip's GPO pin fires — the P-channel MOSFET switches on — the Pico W boots
4. The Pico reads the command over I²C, extracts the user name
5. It connects to Wi-Fi and sends a booking request to the seatsurfing server
6. Booking confirmed → the Pico refreshes the ePaper with the new state: your name, booking duration
7. The Pico releases its power latch — the MOSFET cuts power — system is offThe ePaper holds the updated booking display without any power.
**Idle: Almost nothing**
The trigger and the energy for this entire transaction came from the phone's RF field. The device contributed no power to being "ready" for a tap — because there is no standby. Not sleeping, not polling — off. Apart from leakage and pull-up currents, the only quiescent draw is the RTC. With an RV-3028, that's 45 nA. A set of AA batteries sustains thousands of wakes.
Active cycle time: roughly 5–8 seconds (Wi-Fi connect + API call + ePaper refresh). Then off again — until the next tap, an RTC alarm, or another wake source.
-
Drawing on your phone, displaying on ePaper via NFC
04/19/2026 at 13:42 • 0 commentsThe idea of this project is to harvest NFC Energy to transmit commands. A command is typically a few bytes. So — how far can we push it?
With the chip at hand, up to 512 bytes, as it turns out. Enough for a 62×62 pixel image, drawn with my finger on my phone screen, packed as a 1-bit bitmap, and transferred entirely over NFC — powered by nothing but the phone's RF field. No cable, no Wi-Fi, no power from the device side. Pixel art - well, not if I do the drawing, as you can see ;) Below the rough Android app.
![]()
The test setup (see video): The Pico W is completely off, no power, no polling, no sleep mode — just a dead circuit waiting for something to happen. Then I approached my phone with the NFC field active.
The ST25DV NFC chip wakes from the phone's RF field, powered entirely by it. The Android app writes the 62×62 pixel bitmap — drawn with my finger on the phone screen, see above — into the chip's EEPROM over NFC. The chip's GPO pin fires. A P-channel MOSFET switches on. The Pico boots, reads the image from the chip over I2C, and refreshes the ePaper display. Then it cuts its own power and goes back to drawing negligible current.
The phone carried the energy. The device carried no listening burden.
**How the image transfer works**
The drawing canvas in the Android app is a 62×62 pixel grid — matching the NFC payload capacity of the ST25DV04KC. Each pixel is one bit. The full image fits in 481 bytes (62 × 62 / 8), well within the chip's 512-byte EEPROM.
When you tap the phone to the chip:
1. The app writes the 481-byte pixel bitfield to the chip EEPROM
2. It then writes a 16-byte "INKI" command header at the end of the EEPROM, with opcode 0x30 (Draw Image)
3. The header write triggers the GPO pin — waking the Pico
4. The Pico reads the opcode, fetches the pixel data from the chip, decodes the bitfield, and renders it on the ePaper displayThe ePaper then holds that image indefinitely — no power required to maintain it.
**Idle: Almost nothing**
The NFC subsystem draws no current from the battery when no phone is present. The ST25DV is powered by the phone's 13.56 MHz RF field. The Pico is completely off between interactions. The ePaper holds its image without power.
Apart from leakage and pull-up currents, the only quiescent draw is the RTC. With an RV-3028, that's 45 nA. A set of AA batteries sustains thousands of wakes - see inki project (https://github.com/c0de111/inki).
caspar