Building a Retro-Styled Homebrew Computer & Operating System from micro-controllers

preview_player
Показать описание
I built a homebrew computer using micro-controllers in a custom hardware architecture and operating system. It's been a non-linear journey that started with curiosity about how operating systems worked and took me down several Rabbit holes to end up with a piece that I'm pretty proud of. Most of all, it reminded me of how much I have left to learn :)

This video covers the history of what led to this computer and the actual build. To build the system, I used a variety of microcontrollers from Adafruit, Raspberry Pico, and Sparkfun - primarily based on the RP2040. My background is in software, and I have no real experience with hardware design and development (never effectively soldered before), so I am sure many improvements are possible. Still, as a growth experience, this was amazing. I am hopeful to get feedback. Software development is ongoing and has been done in C/C++ and Python - I'll post a link to the repo in the comments.

Some background video segments are from Pixabay - special thanks there.
Рекомендации по теме
Комментарии
Автор

LOVE this. Blogging it tomorrow. An old-school at home tinkerer project designed around a plant-based extended metaphor; what more could we ask for? This is exactly why Raspberry Pi was created in the first place - to get people back into building their own computers at home.

raspberrypi
Автор

"I have a degree in computer science.... but what I really wanted to be was a film director" vibes here haha.. Nicely done!

ChrisHorneVL
Автор

What wonderful production quality and interesting content for having so few subscribers!

Please if you have the time, continue to post things like this :)

zzzzzzzzzzzzzzzzzzzzzzzzzzzz__
Автор

As a Electronics Engineer I have to say, that you did a great job. But for this project it would be less time consuming and much more reliable to produce a PCB. PCB's are dirt cheap nowadays and high quality. (of course you need to learn how to use a PCB Layout Software first)

Pippo.Langstrumpf
Автор

Absolutely loved it brother. I am a ambitious 17 year old child who loves retro technology and this felt like a bliss to me. Keep it up.

cdkw
Автор

This video is a work of art. I love the diagrams and the interspersed shots of the seasons changing. Jaw droppingly beautiful.

benheadworld
Автор

"it has something like a 2 Hz refresh rate and the shell is known to lock up fairly frequently" Yup, sounds like a typical retro computer to me! Well done! :)

This was a great walkthrough of a neat project, and a great example of how anyone can really jump in and start teaching themselves something new, if they really want to and can just come up with some interesting idea to pursue. I really like it.

foogod
Автор

Cool! My plan for 2024 is to develop some things using hardware rather than always working on software projects, hence I am discovering great videos like yours. I like the idea of getting close to the bare metal. I've ordered various ESP32 modules to play with.

CodingSync
Автор

That is a great thing to do. Your motivation and approach are inspirational - keep going and even though it is not a cutting-edge piece of technology from, let's say, conventional point of view, it's definitely interesting, entertaining and I would say educational. The main thing it brings positive mood and the sense of accimplishment when what you have designed starts to work exactly as you planned. Good luck with it and I'd really like to see where it will go.

eugeniusz
Автор

Very interesting video, enjoyed it. Loved that you see it as an expression of art when it's technology based. I'm a SAP analyst btw!

funkmachine
Автор

One of the best videos i have ever seen :)

Konischiwa
Автор

This guy is basically what I want to be. I am very jealous.
Edit: Also, this is really cool.

RRRNULL
Автор

I’m in my first class discussing x86 assembly. It’s pretty mind numbing

heyyyitsjosh
Автор

Continue the good work, my good sir! now I wanna build my own version asap

ergasterr
Автор

This randomly popped up in my recommended. This channel seems like it'll be huge. Subscriber #382 checking in.

YllowMustang
Автор

This is a really fun project! At my day job I design internal test equipment for consumer product R&D, and for the last year or two I've been working on a modular data acquisition and test automation platform that uses raspberry pi picos on interchangeable cards sending data over a common message bus. There's some parallels with your project and a lot of differences, but I really like seeing how you approached a similar problem from your perspective as a higher level software engineer. I feel like the two entry points to programming are at the very high and the very low level, and coming from the really low level end (my first Real Programming language was Assembly, I hated it. I mostly just do C/C++ in Arduino now) I'm finding that step upwards into higher level stuff both challenging and rewarding. While I know code videos don't tend to do so well on youtube, I'd be interested in some more in-depth videos on the software architecture!

joeofloath
Автор

My approach to the hardware architecture side of things entails a bare bones 6502 system with a couple of UARTs communicating with Picos and ESP32s that run all of the peripherals. The idea is to be able to test and debug all of the subsystems in isolation rather than having to build the whole system out at once.

RealDevastatia
Автор

What a wonderful way to inspire discovery using resources many contemporary hobbyists are already familiar with but have not thought to put together or were too scared to tackle. The modular design lends itself well to experimenting or trying different controllers.

As a non-developer, software development has until recently been very intimidating. I've plateaued with Micro-Python blinking lights projects. Your narrative style here has inspired me to invest more time in the programming side of things.

I'm drawn towards emulating some of the classic computers since buying the kits is expensive. I already have a shelf of SBCs being under utilized. Hehe.

jc-h
Автор

I've been working with the Pi Picos for some time (SDK, not Arduino), and you probably could have built this entire system with a single (or maybe 2) picos if you utilised their lower-level capabilities. With custom code, both TFT graphics and USB can run on a single pico core using DMA and other trickery at >10fps and a reliable 1ms USB polling rate, then there is still an entire core free for some juicy processing (perhaps for networking?). SPI would be a better alternative for intermodule comms, since the pico can clock at 120 MHz (~100Mbps). Arduino libraries will be painfully slow for many specialised tasks, and horrible to develop more advanced systems in.

All that aside, this is a learning project and seeing that this is your first crack at hardware, this is genuinely impressive for a first try!

marcorademan
Автор

Using multiple SBC all mashed together is kind of hilarious. But I guess it's easier (and cheaper) than sourcing a bunch of random Z80s and sticking them all on a breadboard.

I'm surprised you said the RP2040 is maxed out with the keyboard. It's a dual core, 130Mhz CPU. I'd expect you to be able to use that second core for processing. USB is a pain on such small devices, and so I can understand why you just had an entire MCU dedicated to polling it, but a Pico is more than capable of reading the USB protocol properly as still having plenty of room left for processing.

PS/2 devices are hard to find these days, though you can get adapters, and could even make it simpler.

iwantagoodnameplease