Onion Omega Media Center is a series of Onion Omega-based media center devices. They share a similar look, and compared to my earlier designs, they have a great-looking aluminum case.
I did few audio projects in the past, some using ESP32, some using larger Orange Pi and Raspberry Pi devices. Each has its pros and cons, and with each iteration, I'm trying to focus on the details that were working best for me, while actually using them.
What is special about the Onion Omega is how it is lightweight and powerful at the same time. Based on OpenWRT firmware it is impossible to break (same are used by domestic wifi-routers). It uses onboard SPI storage, so it does not wear out, like SD cards are. It boots in seconds and supports major high-level languages, as well as C/C++. It's up to you and your skill set.
Sure, compared to the ESP32 platform it is not as lightweight, but it is as close as it gets while giving you plenty of memory and space. But when it comes to rapid development, it is another world, compared to ESP32.
Onion Omega HiFi is a first-in-line product that uses the legendary PCM5100 series DAC with supreme audio quality. It exposes line-level output that you can plug into a stereo amplifier. Spend as much as you need on the external amp to deliver the sound you like (personally I prefer late 80's audio gear).
This is a work in progress. Spoiler alert: Loud uses dual MAX98357 DACs with 3W per each of the two channels. Louder in its turn uses TI TAS5805M DAC with dual 22W output.
- MIPS MT7688AN CPU running at 580 Mhz
- 64MB (OM-O2) or 128MB (OM-O2P) of RAM
- 16MB (OM-O2) or 32MB (OM-O2P) of Flash storage
- 2.4GHz WiFi
- 10M/100M Ethernet
- USB 2.0 Host
- MicroSD slot (OM-O2P only)
- PCM5100A 32bit Stereo DAC
- 2.1 VRMS Line level output
- -100 dB typical noise level
- Triple LP5907 3.3 V Ultra-Low-Noise LDO
- 5V USB-C power adapter
- Mechanical dimensions (WxHxD): 88mm x 38mm x 100mm
- Onboard USB-Serial Bridge (UART0)
- Onboard WS2812B LED and LED-Strip header
- IR reader
- TFT SPI Screen header
- External Relay Driver
I2S CLK | I2S DATA | I2S WS | |
---|---|---|---|
Onion Omega | 3 | 1 | 2 |
SPI CLK | SPI MOSI | SPI MISO | SPI CS | DC | RES | LED | |
---|---|---|---|---|---|---|---|
Onion Omega | 7 | 8 | 9 | 6 | 18 | 19 | 15 |
RGB LED | IR INPUT | RELAY OUTPUT | |
---|---|---|---|
Onion Omega | 17 | 16 | 11 |
The first thing to do is to follow the official tutorial. The only pitfall is that you need to use a firmware build before b195. I used b193 to be more specific. A full list of old builds can be found here, and instructions on how to flash custom firmware are here. Short version is below
$ cd /tmp
# For Omega 2 Plus
$ wget http://repo.onion.io.s3.amazonaws.com/omega2/images/omega2p-v0.2.0-b193.bin
$ sysupgrade ./omega2p-v0.2.0-b193.bin
# or Omega 2
$ wget http://repo.onion.io.s3.amazonaws.com/omega2/images/omega2-v0.2.0-b193.bin
$ sysupgrade ./omega2-v0.2.0-b193.bin
The issue with later versions is that at some point I2S was disabled in favor of PWM working on the same pins. It can be restored, but requires a bit more effort.
As soon as you have proper firmware installed you need to issue the following commands
# install necessary packages
$ opkg update
$ opkg install alsa-utils mpg123
# enable I2S
$ omega2-ctrl gpiomux set i2s i2s
# Verify that souncard is present
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: AudioI2S [Audio-I2S], device 0: ralink-i2s-HiFi HiFi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
# Test audio with any audio file or stream, I used my local stream here
$ mpg123 http://192.168.1.42:8000/fg
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
version 1.22.3; written and copyright by Michael Hipp and others
free software (LGPL) without any warranty but with best wishes
Directory: http://192.168.1.42:8000/
Playing MPEG stream 1 of 1: fg ...
ICY-NAME: Fabio & Grooverider
ICY-URL: http://www.icecast.org/
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
ICY-META: StreamTitle='ÿþR - ÿþF';
Voila, we have a sound!
There is quite an old write-up that I did in the past. It should be still applicable and fully compatible with HiFi Omega
This is still a work in progress since it is not one-step instruction. Some links might help to get started
Front | Back | PCB |
---|---|---|
Image coming soon |
Please visit hardware section for board schematics and PCB designs. Note that PCBs are shared as multi-layer PDFs as well as Gerber archives.
Many things I'd try to do if I had a few more extra hours in the day.
- Cross-compile librespot
- Cross-compile snapcast
- Cross-compile Airplay
- Cross-compile LMS client
- Connect to Home Assistant using any of the above
- Configure the TFT Screen and show the VU-meter on it
- Configure LED Strip and IR reader
If you have more time and skills than I do and are ready to check some of those out, please contact me directly. I will try sponsoring the board for you, as long as I have stock available.
You may support our work by ordering this product at Tindie