Category: Raspberry Pi

  • The PicoBook

    The PicoBook

    The Gadget that started it all

    I wanted to build something that felt like a real product – not just blinking LEDs or hello world examples. A small, book-shaped device that could fetch and display content seemed like the perfect way to integrate multiple embedded concepts: wireless connectivity, display control, user interaction, and physical assembly.

    What I Built

    Wi-Fi connectivity: Connects to an EC2-hosted PHP API for messages.

    OLED Display: Renders JSON-parsed titles/authors with line wrapping and centering.

    On-demand fetch: A GPIO button triggers content refresh.

    Enclosure: Made from scored, folded, and cut plastic.

    Power: Runs via USB

    Hand-built: Fully hand-assembled and soldered.

    The Learning Journey

    Choosing MicroPython: I started with MicroPython because I wanted to focus on the system integration challenges rather than getting bogged down in low-level details. This turned out to be both a blessing and a limitation – while it let me build a complete working system quickly, it also left me feeling disconnected from what was actually happening at the hardware level.

    First Real I2C Experience: Getting the OLED display working taught me about I2C communication, pull-up resistors, and the importance of proper wiring. When things didn’t work, I had to learn to use a multimeter and logic analyzer to debug the communication.

    The Physical Reality: Building the enclosure by hand – scoring, cutting, and cementing plastic – made me realize how much engineering goes into making electronics practical and durable. It’s one thing to have a breadboard prototype; it’s another to create something that can survive being handled.

    What This Project Taught Me

    This project proved I could build complete embedded systems, but it also revealed my limitations. The MicroPython abstraction layer made me realize I wanted to understand what was happening closer to the hardware. This dissatisfaction with high-level abstractions became the driving force behind everything that followed – my dive into baremetal C, my attempts at bootloader development, and ultimately my decision to build a computer from discrete logic components.

    Technologies Used

    Microcontroller: Raspberry Pi Pico W

    Firmware: MicroPython

    Display: I2C OLED

    User input: GPIO button

    Enclosure: Hobby plastic, glue, knife

    Why This Project Mattered

    PicoBook wasn’t just my first embedded project – it was proof that I could take an idea from concept to working product. But more importantly, it showed me that I was more interested in understanding the fundamentals than just getting things to work. That realization shaped every project that followed.