Alright, wanted to share what I’ve been up to with this little project I called the ‘x33 watch’. It wasn’t anything too crazy, just something practical I needed for myself.

Getting Started
So, the whole idea started because I wanted a really simple, always-on display showing just a couple of key stats from my home server. Nothing fancy, didn’t want to pull out my phone or log into anything. Just a glanceable little thing.
I remembered I had an old Raspberry Pi Zero W collecting dust in a drawer. Perfect, small and low power. Didn’t need much muscle for this.
Next thing was a screen. Found a tiny OLED display online, the kind that uses I2C. Those are pretty easy to hook up, usually just four wires.
Putting it Together
Here’s the bits I ended up using:
- The Pi Zero W
- That small I2C OLED screen (I think it was 128×64 pixels)
- A few jumper wires
- An SD card
- A basic USB power adapter
First step was getting the operating system onto the SD card. Just grabbed the standard Raspberry Pi OS Lite, flashed it using their tool. Nothing special there.

Then came wiring the screen to the Pi. Had to look up the Pi Zero pinout diagram again, just to be sure. Connected power (3.3V and Ground) and the data lines (SDA and SCL) to the right GPIO pins. Always good to double-check this part so you don’t fry anything.
Booted up the Pi, connected via SSH. Needed to enable the I2C interface using the `raspi-config` tool. Simple menu option.
Then I had to install some software bits. Python was already there, but I needed libraries to actually talk to the screen over I2C and draw stuff on it. Used pip to install the Adafruit CircuitPython OLED library. Ran into a small hiccup with dependencies, had to poke around a bit to get the right versions installed, but got there eventually.
Making it Work
Wrote a simple Python script. My first goal was just to make the screen turn on and show something. Anything. A “Hello” message. Took a few tries, figuring out how to initialize the display object in the code and draw text where I wanted it.
Once “Hello” was showing up, I moved on to getting the actual data.

Getting the CPU temperature on a Pi is easy, just read a system file. Divided the value by 1000 to get degrees Celsius.
For network status, I decided to keep it simple for now and just display the Pi’s own IP address. Used Python’s `socket` library for that.
Stitched it all together in the script: grab temp, grab IP, format them into strings, clear the little screen, draw the new text. Put it in a loop with a `*(10)` so it updates every 10 seconds.
Ran into a problem where the script would sometimes crash if it couldn’t read a value for some reason. Added some basic `try…except` blocks around the parts reading data, just to make it keep running even if there was a temporary glitch.
Last step was making it run automatically when the Pi boots up. Used `crontab` for that. Added a line like `@reboot python /home/pi/my_* &` to run the script in the background on startup. Did a reboot test, and it popped up after a short delay. Success!

End Result
So now, this ‘x33 watch’ device sits there quietly next to my server. It’s just the Pi Zero and the tiny screen in a basic case I had. It sips power and shows me the server CPU temp and IP address at a glance. Exactly what I wanted.
It’s not revolutionary, but it’s a practical little tool built from bits I mostly already had. Been running reliably for a while now. Maybe I’ll add more features later, like disk usage or something, but for now, it does the job. Pretty happy with how this little weekend project turned out.