A TRMNL client for the Nook Simple Touch (BNRV300) and Nook Simple Touch with Glowlight (BNRV350). These devices usually go for around $30 on eBay and have an 800x600 e-ink display.
![]() Configuration screen |
![]() Fullscreen view |
![]() Menu dialog |
Questions or feedback? Please open an issue.
- Prerequisites
- Install
- Device Settings
- Features
- Deep Sleep Mode
- Frames and Cases
- Gift Mode
- Roadmap
- Other Nook Models
- Development
- Disclaimer
- Root the device using the Phoenix Project. I used "phase 4" (the minimal rooted install for customization). The phases were confusing because you do not need phase 1/2/3 (each is a separate backup).
- Buy a TRMNL BYOD license and grab your SSID + API key from Developer Settings after login (or use your own server).
- Download the APK from GitHub Releases.
- Connect the Nook Simple Touch over USB and copy the APK over.
- Open the included
ES File Explorerapp. - In ES File Explorer:
Favorites -> "/" -> "media" -> "My Files". - Tap the APK and install.
- Connect your device to WiFi
- Open the app and configure the device info
In the TRMNL Device settings, set the device type to "Nook Simple Touch" as the TRMNL team was nice enough to add support for this device!
- On-device config UI for device ID, API key, and API URL (BYOS)
- Fetches your screen and shows it fullscreen, bypassing the lock screen until you exit
- Respects playlist intervals to advance to the next screen
- TLS v1.2 via BouncyCastle (not included in Android 2.1)
- BYOD support for TRMNL and custom server URLs
- Reports battery voltage and Wi-Fi signal strength
- Deep sleep mode for 30+ day battery life
- Gift Mode for pre-configuring devices as gifts
Without deep sleep, expect ~60 hours of battery life. With deep sleep and a 30-minute refresh rate, battery lasts 30+ days. The app writes each image to the Nook's screensaver, turns off WiFi, and sets an RTC alarm to wake for the next refresh.
To enable:
- In the app: Enable "Sleep between updates"
- In
Nook Settings → Display → Screensaver: Set to "TRMNL" with 2-minute timeout - In
Apps → Nook Touch Mod: Enable "Hide Screensaver Banner"
The Nook Simple Touch often develops sticky residue on its rubberized surfaces as it ages. iFixit has great teardown and repair guides if you need to clean or refurbish your device.
For a custom frame, I recommend this 3D-printed case on Thingiverse. It requires:
- M3x4 flush screws
- M3x5x4 threaded inserts (soldering iron required to install)
- The original screws and inserts from the Nook Simple Touch
Gift Mode displays setup instructions instead of fetching content—perfect for giving a pre-configured device as a gift.
To set up:
- Buy a BYOD license for the recipient
- Get the friendly device code from trmnl.com/claim-a-device
- In the app: Settings → Enable "Gift mode" → "Configure Gift Mode"
- Enter your name, recipient's name, and the device code
See GitHub Issues for the roadmap and to submit feature requests.
See the CI workflow for build details (build-apk.yml), and the tools/ adb scripts for build/install workflows. A development guide is coming (#8). In the meantime, the project can be built with surprisingly minimal, self-contained dependencies.
This repository targets legacy Nook devices running Android 2.1 (API 7), which requires different tooling and approaches than modern Android. For newer Nook devices like the Nook Glowlight 4, see trmnl-nook.
If you have another Nook model from this era that you'd like to test, please open an issue!
AI was used to help code this repo. I have a software development background, but did not want to relearn old Java and the Android 2.1 ecosystem. Despite best-effort scanning and review, the device and/or this software may contain vulnerabilities. Use at your own risk, and if you want to be safer, run it on a guest network.



