A 2020 Samsung TV, a custom OS drawn in dots, Doom at 34 fps, and a phone as the controller. Built with Claude over Wi-Fi. No root.
My 2020 Samsung TV runs Doom at 34 fps
Two evenings, one laptop, one Wi-Fi network. No root and no modified firmware. This site is the full log of how it was done, in the same dot-matrix style as the OS itself.
I saw a tweet about someone who used Claude and his Wi-Fi to customise his TV, and I wanted the same. Over two evenings my 2020 Samsung TV got a home screen I designed, ran Doom at 34 frames per second, played Snake, and started taking commands from my phone. Everything was installed over Wi-Fi from my laptop.
I didn't write most of this code by hand. I had the foundation: I know how web apps, networks and devices fit together, and I had a clear picture of what I wanted. My job was to set the direction, make the calls and refuse anything that looked mediocre. Claude, Anthropic's AI, did the network scanning, the reverse engineering, the code and the debugging.
The logs
- 01Getting inA TV called "SONY", Developer Mode, signing apps, and debugging a black screen with no console.▸
- 02The launcherTwo rejected designs, then a dot-matrix OS. How the ripple renderer works, with a live demo.▸
- 03Doom at 34 fpsA canvas that silently draws nothing, a function eating 90% of every frame, and an engine rebuild.▸
- 04Phone remoteScan a QR, your phone becomes the controller. From 80 ms via Singapore to 10 ms on the TV itself.▸
- 05TV Browser+A cursor, jump mode and a phone touchpad for any website, and the wall that forced WebRTC.▸
- 06LessonsWhat didn't work, what bit us, and what I took away about building with an AI.▸
Try it on your TV
Everything is open source. If you have a Samsung TV from roughly 2017–2021 (Tizen 3 to 6), you can install it tonight.
- DotOS (launcher, Doom, Snake, phone remote): github.com/prutxvi/samsung-tv-dotos
- TV Browser+ (TizenBrew module): github.com/prutxvi/tv-browser-plus
Tip: the dots at the top right change the accent colour, just like Customize → Accent colour on the TV.