Arduino/Teensy based SBC

A project log for Arduino Desktop

The desktop with an arduino as the main processor. Multitasking, Gaming, Graphics, and (later) File IO

dylan-brophyDylan Brophy 05/16/2024 at 15:080 Comments

In the previous log I planned to build a new Arduino-Desktop type system, with a more powerful microcontroller like the Teensy 4.1 or ESP32.  I decided to go with the Teensy 4.1, because it has a lot of useful features out of the box for me to work with, and although it doesn't have WiFi, WiFi can be easily added with an ESP8266 or ESP32 attachment.  The Teensy 4.1 on its own provides Ethernet, a blazing fast processor, SDIO, I2S audio, a USB host, and 8 UARTs.

The board I'm working on makes use of all of it - it provides Ethernet, 4 USB ports, audio, and will provide several headers for connecting more stuff.  I wish the KiCad rendering of my half-baked board had 3D models for the connectors, but it doesn't, so please just imagine that you see them:

In the picture above the USB / audio ports are in different places than in the overlayed drawing, but other than that, I'm really surprised the PCB lines up so well, considering I completely eyeballed the component placement.  You can see where I plan to put certain headers and such, which I've tailored to certain devices I think I'd want to connect to the system.  The headers on the far left match up to pinouts on certain SparkFun devices, for example their GPS modules and QWIIC breakouts.  Those modules should be drop-in to this system.  I want to put a connector for LCD displays up there too, which would have an 8-bit bus and I2C for a touch screen.  The expansion card slot on the top is an 8-bit bus compatible with my #Z80 overpowered computer project I worked on previously, so the card I designed for it will fit.  Other than those headers, I want to add a few more for LoRa and WiFi devices, and headers for connecting other boards for a larger system.  We'll see if I actually have enough IO pins to do all that though.

The schematic so far:The audio circuitry in the top right is pretty complicated, since it provides its own linear regulators and a separated analog ground, with filtering.  Its probably way overkill for what I'm doing, but I like to make things overkill I guess ¯\_(ツ)_/¯.

The four USB ports are connected to a TUSB2046 hub, to expand the Teensy's number of available ports.  Since each USB port may draw up to an amp or so, I made sure to equip the board with a nice fat buck regulator, shown top-left.  Again, probably way overkill to provide up to 6A 5v to the board, but whatever.

The rest of it is pretty self-explanatory - there is an Ethernet MagJack and a level shifter to the 5v expansion slot.  I still need to add a bunch of headers to the board.

I've integrated most of these devices to #NTIOS (Arduino OS) on their own, but I don't think I've integrated quite so many on one board at the same time.  Anyway, this board should give me a lot to play with.  I mean, it's basically a Teensy-based SBC at this point.