This story starts three months ago.
Back then, I naively believed that hanging an ePaper dashboard in my hallway would be a "weekend project." Simple requirements: show temperature, humidity, maybe a weather forecast. No fancy LCD screens, no touch interface—just a quiet, elegant, eye-friendly e-ink display.
"Use ESPHome!" everyone in the community said. "It's easy!" they promised.
So I stepped into the abyss.
Day one, I spent four hours figuring out how to display a single line of text. Day two, I finally got a temperature reading to appear—in the top-left corner, in a font so small it looked like ants marching across the screen. "No problem, " I told myself. "Just adjust the coordinates."
it.printf(120, 85, id(font_large), "%.1f°C", id(temperature).state);Changed it. Compiled. Waited. Three minutes passed. Ten minutes passed. Finally flashed—and the number ran right off the edge of the screen.
Just like that, my weekend became two weeks. Two weeks became a month.
Want to add an icon? First, research Material Design Icons fonts. Then calculate the glyph encoding. Then pray it actually renders.
Want to adjust the layout? Every change requires recompiling. Every compile takes 3-5 minutes. I started questioning my life choices.
Want stable code? Ha. When ESPHome 2025.11.0 dropped, my meticulously tuned month-old code exploded into a wall of red errors. That night, I stared at the screen in silence for a very long time.
I knew it was time to find another path.
A New HopeIf you have a reTerminal E1001 or E1002 in your hands right now, congratulations—you're about to skip all the pain I went through.
I developed an integration called Seeed HA Discoveryspecifically to solve this problem. The core philosophy is simple:
Flash firmware once. Connect to WiFi. Subscribe to entities. Done.
No YAML. No coordinate calculations. No compile waits. No worrying about the next update breaking everything.
Let me walk you through the process. I promise it'll be ten thousand times more pleasant than my ESPHome adventures.
What You'll NeedBefore we embark on this journey, make sure your backpack contains:
Hardware: A reTerminal E1001 (7.5-inch monochrome) or E1002 (7.3-inch color), a USB-C data cable (make sure it's a data cable, not one of those charge-only imposters), and a computer.
Software: A running Home Assistant instance, HACS already installed (if not, head to hacs.xyz and sort that out first), and Chrome or Edge browser (Safari and Firefox won't work—don't ask how I know).
Network: Your WiFi name and password, and it must be 2.4GHz. 5GHz? The ESP32 doesn't speak that language.
Ready? Let's go.
Chapter One: Breathing Life Into Your reTerminalFirst, flip your reTerminal over and find that tiny power switch. Slide it to ON. Then connect it to your computer with the USB-C cable.
Here's a pitfall I need to warn you about: If the device is asleep, the firmware won't flash. I once spent half an hour wrestling with a device that "appeared connected" before realizing it was playing dead. The solution is simple—press the green button on top of the device to wake it up.
Opening the Magic PortalOpen this URL in your browser:
🔗 limengdu.github.io/Seeed-Homeassistant-Discovery
You'll see a clean page listing firmware options for different devices. Find your model (E1001 or E1002) and click the "InstallFirmware" button next to it.
Your browser will pop up a window asking which serial port to connect to. Choose the one that looks like "USB JTAG" or "USB Serial." If you're not sure, just pick the first one—worst case, try another.
One-Click LiftoffOnce connected, click the "Install" button.
It'll ask if you want to erase the device. If you've previously flashed other firmware (ESPHome, SenseCraft, whatever), check that box for a fresh start. If you're just updating, leave it unchecked to keep your WiFi config.
Then wait. About one or two minutes, the progress bar completes, and "Installation complete!" appears on screen—congratulations, your reTerminal has been reborn.
Pro tip: Don't get twitchy fingers and unplug the cable mid-process. I know waiting is boring, but the consequences of disconnecting halfway through... you don't want to experience that.
Open the Seeed HA Discovery GitHub repository:
🔗 github.com/limengdu/Seeed-Homeassistant-Discovery
Scroll down and find that shiny "OPEN HACS REPOSITORY ON MY HA" button. Click it.
Your browser will ask which Home Assistant address to jump to. If it guesses correctly, click "Open link"; if not, manually enter your HA address, something like http://192.168.1.xxx:8123.
HACS will open automatically and ask if you want to download this integration. Click "Download". Wait for it to finish.
Restart and Grab Some CoffeeGo to Settings → System → Restart and let Home Assistant reboot.
This takes a minute or two. Perfect time to get some water or scroll your phone. When you come back, everything will be ready.
Chapter Three: Guiding Your reTerminal HomeThe WiFi Pairing RitualAfter flashing, your reTerminal transforms into a WiFi hotspot with a name like:
Seeed_reTerminal_E1001_APSeeed_reTerminal_E1002_AP
Grab your phone and connect to this hotspot. Normally, a configuration page will pop up automatically. If it doesn't (phones can be unreliable like that), manually open your browser and visit http://192.168.4.1.
On this page, select your home WiFi network, enter the password, and click "Connect".
That's it. The reTerminal will restart and quietly join your network.
If everything goes smoothly, head back to Settings → Devices & Services in Home Assistant. You'll see a newly discovered device waiting for you. Click it and complete the pairing.
If it doesn't appear automatically (this occasionally happens in complex network environments), add it manually: click "Add Integration", search for "Seeed HA Discovery", and enter the device's IP address. You can find the IP in your router's admin page.
Chapter Four: The Moment of MagicTell It What You Want to SeeNavigate to Settings → Devices & Services → Seeed HA Discovery and click on your reTerminal device.
Click the gear icon to open the configuration panel. This is where the magic happens.
Click to add entities, then select what you want displayed on your e-ink screen:
- Living room temperature sensor? Add it.
- Bedroom humidity? Add it.
- Weather forecast? Absolutely.
- Door lock status? Why not.
You can subscribe to up to 20 entities at once, though keep in mind the screen's UI is designed to display 6 entities optimally. Choose your most important ones wisely—think of it as curating your dashboard's greatest hits.
Submit when you're done.
And then... that's it.
No YAML. No coordinates. No waiting for compiles. Your selected entities appear on the e-ink screen automatically, arranged in a pre-designed layout that just looks good.
The first time I saw this work, I stared at the screen for a solid thirty seconds. Not because something was wrong, but because... it just... worked? Just like that?
Yes. Just like that.
Right now, the integration focuses on one thing and does it well: entity subscription.
If you want additional features—like programming the physical buttons, adjusting refresh intervals, or customizing the display behavior—you'll need to dive into the firmware yourself. The good news? The code is completely open source.
🔧 Firmware Source Code:
- reTerminal E1001: reTerminal_E1001_HASubscribe_Display.ino- reTerminal E1002: reTerminal_E1002_HASubscribe_Display.ino
Fork it, modify it, make it yours. The reTerminal has three physical buttons just waiting for a purpose, and the refresh timing can be tuned to your exact needs. If you're comfortable with embedded development, the codebase is well-structured and ready for your contributions.
For those who just want a working dashboard without touching code, the current functionality is plenty. Subscribe to your entities, let it refresh automatically, and enjoy your new low-maintenance display.
Looking Back on This JourneyLet's compare the two paths:
The ESPHome Path: Learn YAML syntax → Research font configuration → Calculate pixel coordinates → Wait for compile → Discover broken layout → Modify code → Wait for another compile → Repeat endlessly → Update breaks everything → Start over from scratch.
The Seeed HA Discovery Path: Flash firmware → Configure WiFi → Subscribe to entities → Done.
I'm not saying ESPHome is bad. For scenarios requiring extreme customization, it remains a powerful tool. But if you just want an e-ink dashboard that works—actually works, without the headaches—now you have a better option.
Final ThoughtsThree months ago, I thought I needed to become a YAML expert to own an e-ink dashboard.
Now, a reTerminal E1002 hangs in my hallway, quietly displaying indoor temperature, outdoor weather, and air quality index. It emits zero light pollution, and every visitor asks: "What is that? So cool."
If you want a dashboard like this, now you know how to get there.
Go ahead. Enjoy that feeling of "it just works." That feeling I once believed existed only in legends.
Useful Links- Seeed HA Discovery Project:github.com/limengdu/Seeed-Homeassistant-Discovery
- Web Flasher:limengdu.github.io/Seeed-Homeassistant-Discovery
- reTerminal E1001 Documentation:wiki.seeedstudio.com/getting_started_with_reterminal_e1001
- reTerminal E1002 Documentation:wiki.seeedstudio.com/getting_started_with_reterminal_e1002
If you successfully recreate this project, come share your results in the community. I'd love to see what everyone displays on theirs—after all, I walked this road alone for too long. It's time for some company.






Comments