Integrating Waveshare E-Ink Display with ASI Biont AI Agent: Build a Smart Task Dashboard in Minutes

Imagine a physical screen on your desk that always shows your most important tasks, meeting reminders, and daily quotes — without any manual updates. That's the promise of combining a Waveshare E-Ink display with the ASI Biont AI agent. In this case study, we'll walk through how a small SaaS team used this integration to replace a static whiteboard with a dynamic, AI-updated task dashboard, cutting administrative overhead and improving team visibility.

Why E-Ink + AI?

E-Ink (electrophoretic) displays are ideal for always-on information panels: they consume power only when refreshing, are readable in direct sunlight, and retain content even when powered off. The Waveshare series (e.g., 7.5-inch, 5.83-inch) are popular among makers and professionals for dashboards, nametags, and price tags.

However, updating these screens typically requires writing Python or C code, connecting a microcontroller, and manually triggering refreshes. Hard-coding a design means every change (adding a new task, changing a reminder) requires editing the script and re-deploying. That's where an AI agent like ASI Biont shines: it can write the integration code on the fly, connect to your hardware, and update the display based on real-time data — all from a simple chat command.

The Problem: Stale Task Board

A remote team of five developers used a physical whiteboard to track sprint tasks. It required someone to erase and rewrite tasks every day. They tried digital tools (Trello, Notion) but missed the glanceability of a physical board. They bought a Waveshare 7.5-inch E-Ink display and a Raspberry Pi Zero 2 W, intending to build a custom script that would fetch tasks from Notion and display them automatically. But they didn't have time to write and maintain the code, and the project stalled.

The Solution: AI-Driven Integration via SSH

ASI Biont connects to devices through several protocols. For a Raspberry Pi running a full Linux OS, SSH (via paramiko) is the most direct method. The user simply described their goal in the ASI Biont chat: "Connect to my Raspberry Pi at 192.168.1.100 via SSH, username 'pi', password 'raspberry'. Install the Waveshare e-Paper library for Python. Then write a script that reads a JSON file from my local web server (http://192.168.1.50/tasks.json) and displays the top 5 tasks with formatting on the E-Ink screen. Finally, set it to refresh every hour."

ASI Biont's AI agent (using execute_python) wrote and executed a Python script that does exactly that. Here's the simplified version of the generated code (the AI uses paramiko to run shell commands on the Pi, but the final display script runs directly on the Pi):

# This script runs on the Raspberry Pi (deployed via SSH by ASI Biont)
import sys
sys.path.insert(0, '/home/pi/e-Paper/RaspberryPi_JetsonNano/python/lib')
from waveshare_epd import epd7in5b_V2
import requests
import json
from PIL import Image, ImageDraw, ImageFont
import time

def fetch_tasks():
    resp = requests.get('http://192.168.1.50/tasks.json', timeout=5)
    tasks = resp.json()
    return tasks[:5]  # top 5

def update_display(tasks):
    epd = epd7in5b_V2.EPD()
    epd.init()
    # Create image
    image = Image.new('1', (epd.width, epd.height), 255)
    draw = ImageDraw.Draw(image)
    font = ImageFont.truetype('/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf', 24)
    y = 10
    draw.text((10, y), "Today's Tasks", font=font, fill=0)
    y += 40
    for i, task in enumerate(tasks, start=1):
        draw.text((20, y), f"{i}. {task['title']}", font=font, fill=0)
        y += 30
    # Rotate for landscape? Adjust as needed.
    epd.display(epd.getbuffer(image))
    epd.sleep()

if __name__ == '__main__':
    tasks = fetch_tasks()
    update_display(tasks)

The AI then configured a cron job (also via SSH) to run the script every hour: 0 * * * * /usr/bin/python3 /home/pi/update_tasks.py.

How It Works Under the Hood

ASI Biont does not have a "connect device" button. Instead, the user converses with the AI, describing the device and connection details. The AI uses its execute_python capability to run a Python script on the ASI Biont server (in a sandbox). That script uses paramiko to SSH into the target computer (Raspberry Pi) and executes shell commands: installing libraries, writing files, setting cron jobs. The script that actually controls the E-Ink display runs directly on the Pi — making it fast and independent of cloud latency.

For devices without a full OS (e.g., an Arduino or ESP32), ASI Biont would use Hardware Bridge (bridge.py on a local PC) with COM port communication. But for a Raspberry Pi, SSH is cleaner.

Real-World Results

The team deployed this solution within 15 minutes — most of that time was waiting for the Waveshare library to compile on the Pi. The AI handled every technical step: detecting the correct GPIO pins, installing dependencies (spidev, Pillow, requests), and debugging a minor font path issue. The resulting display now automatically shows the top 5 tickets from their Notion database (exported nightly as JSON) and refreshes every hour. Key metrics:

Metric Before After
Time to update task list 5 min (manual rewrite) 0 min (automated)
Freshness of displayed data Up to 24 hours 1 hour
Number of people required 1 dedicated person 0 (AI manages everything)
Effort to change format Hours of coding 5 minutes of chat conversation

The team also extended the integration: they now ask ASI Biont to add a “quote of the day” or a weather forecast to the display, all through simple chat prompts. The AI updates the Python script accordingly and redeploys it.

Other Integration Possibilities for E-Ink

The same approach works for dozens of use cases:

  • Price tags: Updates prices from an e-commerce backend (via MQTT or HTTP API).
  • Meeting room signs: Shows room availability from a Google Calendar feed.
  • Weather dashboard: Pulls data from OpenWeatherMap and displays forecasts.
  • Server monitoring: Shows CPU load, memory, and alerts from Prometheus.

For each, the user just describes the hardware and data source, and ASI Biont writes the glue code.

Why This Matters

Traditional embedded development requires knowing the display's protocol (SPI), handling bitmaps, managing fonts, and writing device-specific code. ASI Biont eliminates all that: it already understands the Waveshare library API, can debug common issues (like wrong bus number or missing SPI enabled), and even optimizes the refresh cycle to extend E-Ink lifespan.

The AI agent also handles error recovery: if the JSON endpoint is down, it displays a fallback message; if the screen fails to initialize, it retries. All without human intervention.

Getting Started with Your Own Integration

  1. Get a Waveshare E-Ink display and a Raspberry Pi (or any Linux SBC with GPIO).
  2. Connect the display as per Waveshare's wiring guide (SPI: MOSI, MISO, SCLK, CS, DC, RST, BUSY).
  3. Enable SPI using raspi-config.
  4. Open ASI Biont chat and describe your setup: "I have a Raspberry Pi at 192.168.1.100, user pi, password raspberry. Connect and install Waveshare e-Paper library. Then write a script that shows the top 5 tasks from a JSON file at http://192.168.1.50/tasks.json on a 7.5-inch E-Ink display. Schedule it every hour."
  5. The AI will respond with validation steps and confirm the deployment.

No need to write a single line of Python yourself. The AI handles everything from library installation to cron task creation.

Core Technical Insight

ASI Biont's strength lies in its ability to adapt to almost any device via execute_python. While the Waveshare E-Ink has no direct AI support, the agent can remotely control a Linux board that drives the display. This pattern — AI talking to a gateway computer that talks to the device — works for thousands of peripherals: cameras (via SSH + OpenCV), sensors (via USB serial), and industrial controllers (via Modbus). The underlying design philosophy: don't force devices to speak AI; make AI speak every device's language.

Conclusion

Integrating a Waveshare E-Ink display with ASI Biont transforms a static screen into a dynamic, intelligent dashboard that adapts to your data without human effort. The AI eliminates the need for manual coding, debugging, and maintenance — you simply tell it what you want, and it builds the entire pipeline.

Whether you're a maker tired of re-flashing firmware or a business looking for a glanceable task board, this integration proves that AI-powered hardware automation is already here. Try it yourself: describe your device and goal in the ASI Biont chat at asibiont.com. The AI is ready to write your next hardware integration.

← All posts

Comments