• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Introduction to the SmartCross project

SmartCross

Member
Audio Company
Joined
Apr 14, 2022
Messages
9
Likes
55
Location
Vancouver, BC
Many of us are fascinated by the idea that we can process audio signals precisely and flexibly in the digital domain. Currently, there are numerous options available in the market, including popular offerings like MiniDSP and FusionAMP, each with their unique aspects. People have also brewed their own fascinating solutions at home, using Raspberry Pis and multiple channel DACs.

Today, I would like to introduce you to something new here, something we've been working on for two years. We call it SmartCross. We hope that our work can inject some fresh air into the market.

What is SmartCross?​

SmartCross is an all-in-one device that combines digital processor, DAC converter and amplifier all into a single box. To give you an intuitive feeling:

IMG_9180.jpg
IMG_9176.jpg


Kindly regard this as a work-in-progress ("engineering sample"), and the final product is set to look more visually appealing.

SmartCross is capable of receiving several audio sources and switching between them. It will process the audio with CamillaDSP (crossover, EQ, filters, delay, etc.), and output the signal to four amplifier boards, each with two channels. The amplifier boards can also be replaced with pure DAC boards to provide high fidelity audio signal output.

This started as a DIY project (inspired by the ideas of "ASR Open Source Streamer Project"), but as we gradually finished each part, it becomes less and less likely of being DIYed. We believe that the best way to spread the pleasure of the project is to deliver a piece of finished and tested hardware to your hand at a reasonable price. However, we continue to value the spirit of hacking, thus we will make all software in open source license. Schematics in pdf format will also be released to help hacking. If you have the same DIY spirit as ours, you can also make an output module yourself, and we are more than happy to provide support.

What's different about SmartCross?​

Powerful from Heart​

SmartCross is powered by a generic 64-bit ARM CPU (up to 1.8GHz), which packs way more processing power than dedicated DSP chips. It is possible to run long FIR filters, as many as 200k taps, per channel. You can also add nearly unlimited IIR filters to each channel. We also customized the Linux kernel specifically to fit the needs of realtime audio processing and playback, so you can enjoy stable audio output with minimum processing delay.

DACs are driven by ultra-low-jitter oscillators to enable excellent audio reproduction. Up to 450W SMPS is integrated to allow powerful audio output.

Versatile in Features​

Multiple input sources, including USB Audio, Bluetooth A2DP, S/PDIF, analog signal, and shairport-sync, can be consumed by SmartCross. Intelligent and customizable input-source switching mechanism allows you to listen to what you want conveniently. We are also working on Linux containers support, so you can even setup your own streamer software. Two USB ports are available on the back panel, enabling possible support for external storage media in the future.

CamillaDSP enables customizable DSP processing pipeline, with algorithms such as IIR, FIR, limiter, and compressor. With its open-source nature, you may also develop your own algorithms.

Easy to Use​

SmartCross is equipped with a rotary knob, an IR receiver and an IPS LCD touchscreen. With an intuitive graphical user interface, you can monitor real-time status, switch audio input, edit DSP profile, and change settings, right on the device itself. We also have apps to run on your smartphones and PCs to control the machine, all with the same interface and capability. You can also use a compatible IR remote controller to switch between audio inputs, DSP profiles, and adjust volume.

Class-D audio amplifiers with dedicated DACs are embedded within the machine, so you can directly plug your speakers into it, eliminating the need for external amplifiers. speanON plugs ensure tight and stable connection in just a click. If you would like to use your own amplifiers: no problem at all, DAC-only HiFi output modules are also available.

Open in Mind​

As open-source lovers and promoters, we value openness and collaboration of the community. SmartCross is powered by many open-source projects, including Linux kernel, CamillaDSP, Flutter, BlueALSA, shairport-sync, without which our work would become completely impossible. We contribute back to these projects to allow everyone to benefit from our efforts.

SmartCross aims to be hackable. We will release all of our own source code in GPL once they are stabilized, and you will be able to build the firmware of SmartCross completely from scratch (of course, you are encouraged to contribute back). Schematics in pdf format will also be released to help hacking.

Designed with Craftsmanship​

We believe in perfection. We tried our best to polish all bits in SmartCross, from hardware to software. Circuit boards within the machine (except power supply) are designed in-house specifically for SmartCross, and we paid attention to details from component selection to layout. Similarly, every software component is carefully selected and tailored in the stack. The main controller, built by us, is written in Rust to ensure stability. The device runs mainline Linux and up-to-date components built by bulildroot. We enjoyed state-of-art software technologies a lot while working on this project.

Having said the above, we are only a small and young team, and we have limitations in our knowledge and experience. We know that imperfections are inevitable, and there're certainly bugs and shortcomings in our work. Therefore, we would kindly like to request that you let us know your valuable thoughts, so that we can make our machine one more step toward perfection.

Design details​

This diagram may help you understand SmartCross:

SmartCross.drawio (1).png

Hardware​

The brain of SmartCross is a Rockchip RK3399 CPU. It is mainly in charge of the following:
  • Running audio source services like BlueALSA and shairport-sync;
  • Processing signal with CamillaDSP;
  • Running the controller service to control switching of audio sources, DSP configurations, wireless connections;
  • Running a graphical user interface to display on LCD.
RK3399 has six cores: four small cores (Cortex-A53) and two big cores (Cortex-A72). The big cores are dedicated to DSP processing, to ensure low and stable latency. The rest of the system runs on the small cores. As Linux is a generic operating system, we paid special attention to stability, to ensure smooth audio playback.

We know storage space is important for hacking. A total of 2GB LPDDR3 RAM chips are installed on board, which leaves plenty room for running services you like or future upgrades. The operating system is stored on a 64GB SanDisk High Endurance SD Card to ease hacking and recovery. In case you break the system, you can pull the card out easily and reflash a new system image to it.

To receive S/PDIF and analog input, a PCM9211 chip is used. It converts these sources into I2S signal, and feeds it to CPU. PCM9211 features sample rate detection for SPDIF signals, and analog level detection for analog input, to be utilized by the controller software on CPU.

A high-quality clock generator, SiT9121, is present on the receiver board to generate the 24.576MHz master clock. It outputs LVDS clock signal, and drives the ADC block of PCM9211. The LVDS master clock is passed along to the processor board, and finally to the DAC (Amplifier) boards. Each master clock consumer has a LVDS-to-CMOS converter chip. LVDS ensures low interference and high signal quality.

The Intel AX200 WiFi and Bluetooth combo card connects the machine to internet and other devices. It can receive audio via Bluetooth A2DP, and multiple high quality codecs are supported. It can also support receiving audio via devices compatible to shairport-sync. In the future, we plan to add support to music streaming platform receiver. WiFi is also used to perform OTA firmware updates.

USB audio input is powered by the Linux kernel gadget stack. We provide the option to switch between UAC1 and UAC2, so you can connect the device to almost any computers or phones.
The I2S controller 1 in RK3399 has 8 channels. It's connected from the processor board to the interconnect board, which distributes the i2s signal and power to each of the output modules. As the i2s signals are coming out of the same group, they are naturally synchronized.

You can install any number of different output modules according to your needs. If you need power, you can install TPA3255 modules (in the pictures above); or, if you prefer efficiency, you can install the lower-power MA12070 modules (but these two types of modules cannot co-exist due to power supply voltage constraint). Or, if you prefer to use more advanced external amplifiers, DAC-only PCM5242 or CS43198 modules are also available, and can be mixed with amplifier output modules. The pin definition of the modules will be publicly released for those who prefer designing their own.

The output modules are powered by a bulky Mornsun LOF450-20B36-C supply (for the TPA3255 version), which provides 450W of power output. This is enough if you plan to drive only stereo speakers, because mid-range speakers and tweeters won't consume a lot of power. If you really need more power, you can use your own amplifiers.

The ENABLE signal of the amplifiers is controlled by the CPU, so no click-pop will happen during start-up or shutdown. Furthermore, the power supply has a power-good signal output connected to the CPU, and the amplifier will turn off as soon as the power input is disconnected, to avoid click-pop even on unexpected power disruption.

Software​

SmartCross uses a lot of existing software to achieve its features. There're two main components that we wrote from scratch: the controller and the GUI. You can think of controller as the "backend", and GUI as the "frontend".

The controller is written in Rust. Thanks to Rust's safety and flexibility, we are able to develop code quickly and with few bugs. The controller is in-charge of most SmartCross' features. It connects to other components like CamillaDSP and Bluez to get their status and make configuration changes.

The GUI is written in Flutter, a cross-platform app framework. It's displayed on the touchscreen of the device, and gives you a familiar interface to control the device, if you have used smartphones (I believe you have, right?) Because of it's cross-platform nature, the same GUI is also available on your phones and computers, connecting to the machine via WiFi or USB.

gRPC is used as the communication channel between the controller and the GUI. Thanks to gRPC's bi-directional nature, all changes made in one GUI client (for example, on device's screen) will be reflected immediately on other connected clients, ensuring a smooth experience.

The whole system is built with Buildroot, which downloads and compiles software packages and pack them into one image. The system runs mainline Linux kernel (currently 6.4) with our modifications to enjoy the latest and greatest kernel features. In the future we plan to integrate all our changes to the Linux upstream.

Current progress​

Unfortuantely we are unable to approxiamate when we will complete this project, but I will provide updates here if we make any progress. This is what it looks like now:

We have finished the prototype hardware design, fulfilling all requirements above, as you can see in the picture. However, there're still bits and pieces that need to be fixed.

Software-wise, we have implemented the most critical features, but tweaks are still needed to make the interface easy to use. And there're a lot of features to be implemented. To give you an idea how far we have gone, I attach some screenshots of the GUI here.

下载.png
217a2319-1b9f-4186-bae2-2d653c57fc3c.png
479c0ff1-3e66-4bdc-8e26-56ff8db04dc2.png

下载 (1).png
3be59499-db80-4eff-9e94-39b5a1fb82cf.png
下载 (2).png


Request for Comments​

We sincerely request that you say something about our work: If there's anything you want missing in it? Anything you dislike? Or what do you think it can be used on?

We would also like to talk about a sensitive topic: money. How much do you think our work is worth? We will take your suggestion into consideration. We do not intend to be a commercial product, but we do want to have some extra coffee to drink :)

We really anticipate and appreciate your comments!
 
Looks more like an aspiring manufacturer to me. I remember when Buckeye showed up here and started asking questions.

There is a lot of potential in what you hope to offer with this device. Great that the backbone is all open source and congrats on getting a GUI going to tie it all together into more of a stand alone appliance and I love how you plan to release your source code and schematics after stable too. Smart to plan release versions with or without amps to attract a broader range of users.

I see it as a digital preamp, DSP, ADC, 8ch DAC +/- amplification with a multiplatform GUI.
Not a streamer, but with the potential to be one if you recompile with additional packages?
Will your DAC only version have balanced outputs or the option for them?

Not much else exists like it that isn't DIY. I think the biggest strength you can bring to the project is the GUI and accompanying apps. If you can exploit the important bits of Camilla into simple, intuitive navigation and user friendliness you've definitely got something to offer. Depending on casework and what kind of analog output from the DACs, I'd say $800-1300 without amps.

edit: Perhaps once you've got something presentable try touring the SmartCross in the USA and EU like Okto did. Interested buyers sign up and have a limited time to test it out before shipping it on to the next person in their region. Of course sending it in to Amir will go a long way too.
 
Last edited:
cool! good luck with your project!

is it a 2x8 device only or can it do 8x8 via USB? (sorry if it is stated in the text, i read it fast and did not see it)
 
With 8 channel output I would have thought this would be nice for home cinema i.e. 7.1 mapping - but then I would suggest adding HDMI ARC input?

Also, would love to see your UI as CamillaDSP is great but does need a simplified UI, but multi-channel DSP is a hard concept to simplify
 
Interesting! Welcome and good luck with the product.
 
Looks more like an aspiring manufacturer to me. I remember when Buckeye showed up here and started asking questions.

There is a lot of potential in what you hope to offer with this device. Great that the backbone is all open source and congrats on getting a GUI going to tie it all together into more of a stand alone appliance and I love how you plan to release your source code and schematics after stable too. Smart to plan release versions with or without amps to attract a broader range of users.

I see it as a digital preamp, DSP, ADC, 8ch DAC +/- amplification with a multiplatform GUI.
Not a streamer, but with the potential to be one if you recompile with additional packages?
Will your DAC only version have balanced outputs or the option for them?

Not much else exists like it that isn't DIY. I think the biggest strength you can bring to the project is the GUI and accompanying apps. If you can exploit the important bits of Camilla into simple, intuitive navigation and user friendliness you've definitely got something to offer. Depending on casework and what kind of analog output from the DACs, I'd say $800-1300 without amps.

edit: Perhaps once you've got something presentable try touring the SmartCross in the USA and EU like Okto did. Interested buyers sign up and have a limited time to test it out before shipping it on to the next person in their region. Of course sending it in to Amir will go a long way too.
> Not a streamer, but with the potential to be one if you recompile with additional packages?
Yes, the hardware has the capability to be a streamer. And we will explore how this can be implemented.

> Will your DAC only version have balanced outputs or the option for them?
I plan to only have balanced output. As the +/- signal is symmetrical, you can use one of them as a single-ended output.

> Perhaps once you've got something presentable try touring the SmartCross in the USA and EU
Thank you, I will definitely take this into consideration.

cool! good luck with your project!

is it a 2x8 device only or can it do 8x8 via USB? (sorry if it is stated in the text, i read it fast and did not see it)

The current plan is to do 2x8 (as other sources can only have 2 channels). However 8x8 is certainly possible with future software upgrades.

With 8 channel output I would have thought this would be nice for home cinema i.e. 7.1 mapping - but then I would suggest adding HDMI ARC input?

Also, would love to see your UI as CamillaDSP is great but does need a simplified UI, but multi-channel DSP is a hard concept to simplify

SmartCross is mainly targeted at stereo speakers. However, being able to use it as a 7.1 system is certainly an interesting idea. It doesn't seem feasible to add an HDMI ARC input for now, but it is possible to accept 8ch input via USB, or 5.1ch input via SPDIF DTS/AC3.

> but multi-channel DSP is a hard concept to simplify
Yes, and this is where we need user feedback to do better.

Interesting! Welcome and good luck with the product.

Thank you!

If you are a dealer or manufacturer, please contact @amirm to register as such. Thank you.

Jim
Registered! Thanks.
 
I stumbled upon this while researching digital/active 3-way crossovers and ways of simplifying hardware. As an end goal product, I’m looking for ways to put a streamer, processor/dsp, dac, and Hypex amps in one chassis, similar in size to an AVR.

If your product was offered as a kit for the DIY crowd, a person may be able to squeeze all that hardware into one chassis.
 
Great combo all-in-one idea! Would like to see (this is just subjective, personal preference)
- classic stereo output - 2channels with subwoofer out option (and highpass filter)
- isolate ac/dc and the unit from any high pitch noise
- fm/dab module
- physical buttons on the front for: play/pause, source, treble/bass adjustment (not everyone wants to use touch screen and app, this way theres still something left to control if the screen or remote are gone)
With mentioned wanted features, i wouldnt be concerned with unit price. It would make a serious choice from thousands of boring dac/streamer/amp combinations.
 
I stumbled upon this while researching digital/active 3-way crossovers and ways of simplifying hardware. As an end goal product, I’m looking for ways to put a streamer, processor/dsp, dac, and Hypex amps in one chassis, similar in size to an AVR.

If your product was offered as a kit for the DIY crowd, a person may be able to squeeze all that hardware into one chassis.

For now we prefer to sell complete, working machine due to its complexity to assemble. But as we will publish complete schematics, you may also do modifications to suit your needs (e.g. replacing DAC modules).

Great combo all-in-one idea! Would like to see (this is just subjective, personal preference)
- classic stereo output - 2channels with subwoofer out option (and highpass filter)
- isolate ac/dc and the unit from any high pitch noise
- fm/dab module
- physical buttons on the front for: play/pause, source, treble/bass adjustment (not everyone wants to use touch screen and app, this way theres still something left to control if the screen or remote are gone)
With mentioned wanted features, i wouldnt be concerned with unit price. It would make a serious choice from thousands of boring dac/streamer/amp combinations.
> classic stereo output - 2channels with subwoofer out option (and highpass filter)

With our modular design this is certainly possible.

> isolate ac/dc and the unit from any high pitch noise

We can barely hear any noise in our sample units, so noise might not be a problem. We will try to make some measurements.

> fm/dab module

This should be possible by using Software Defined Radio modules plugged to USB ports on the back of the machine, together with some software support. We will evaluate this option.

> physical buttons

This will increase design complexity of the enclosure (we are not good at this), so it's not an option for now. However we intend to develop software to pair any remote control with the machine, which might be a solution to your concern.
 
If the remote control is good, that would almost annul physical buttons.
By good remote control i consider the following:
- remote control pointing wide angle (not laser precision as in Topping remote).
- sturdy build, at least a hint of premium feel
- functional buttons: switch source, volume, power on/off, play/pause, basic eq controls (if possible)
 
One word of advice would be not to leave us dangling - you want to get feedback on your project and generate possible sales avenues start engaging your potential consumers a bit more! Presumably ASR is not the only place you dumped your announcement but this is the place you'll get the most valuable feedback from if you play your cards right. You've got a great potential product!
 
One word of advice would be not to leave us dangling - you want to get feedback on your project and generate possible sales avenues start engaging your potential consumers a bit more! Presumably ASR is not the only place you dumped your announcement but this is the place you'll get the most valuable feedback from if you play your cards right. You've got a great potential product!
Hi DWPress, Thanks for your reply and recognition of my product!

I'm sure ASR will be a great place to get feedbacks (and I've already got some valuable ones).

The product is still not finished, and need more work on various dimensions on our side. Once I have something presentable like you mentioned, I'll definitely consider the option to make a "tour" and I'll announce it here.

If you'd like to know more about the project or have advice about it, please post it here, and I'm more than happy to answer!
 
When will you be able to submit something to Amir for testing?
 
This looks like an interesting project. Here are a few random thoughts/questions:

Firstly, who is 'we'? Are you an existing hardware/software company with a track record of quality products or just some random guy in his basement with a soldering iron and a dream? Not that either is necessarily good or bad but interacting with an anonymous pseudonym without even any post record on ASR doesn't exactly inspire confidence. Links to company website and/or github project would be nice ...

My system currently consists of an RPI4 running CamillaDSP > Motu M4 > DIY 4 x UCD180 amp > Linkwitz LXminis, all fed by a NAD C658. So in principle SmartCross could be a good match for my usage. However, I already have the hardware, and since everything is working fine, what would SmartCross really do for me other than slightly reduce the number of boxes sitting under my tv? The software side of the project seems the most interesting – and only then if it could run on a Pi.

On a related note - Amir has tested many AVRs and all-in-one devices containing control software, DAC and amps etc. and they rarely achieve SOTA performance and often end up being decidedly mediocre performance-wise. Is there really any advantage in putting everything in one box?

My instinct is that this would be more interesting if it were primarily a software project based on off-the-shelf hardware that could be DIY'ed rather than having to purchase bespoke hardware. I fear it will end up too expensive to be worth the effort. You don't say where you are based but regardless of where you are some of your potential customers will be on the other side of the world. The less physical hardware you have to manufacture/ship the better ...
 
  • Like
Reactions: MCH
It's a very interesting concept. Perhaps HDMI/display out too?

But four internal fans all resonating and vibrating together is not 'hifi'. Consider passive cooling and good ventilation.

Keep us updated. :)
 
Perhaps HDMI/display out too?
Yes, I would lose the display and the physical volume knob and simply have software control and an external screen/tv. My gear is on the other side of the room. I can't read such a tiny display or reach the knob anyway ...
 
Thank you for your interest!

This looks like an interesting project. Here are a few random thoughts/questions:

Firstly, who is 'we'? Are you an existing hardware/software company with a track record of quality products or just some random guy in his basement with a soldering iron and a dream? Not that either is necessarily good or bad but interacting with an anonymous pseudonym without even any post record on ASR doesn't exactly inspire confidence. Links to company website and/or github project would be nice ...

My system currently consists of an RPI4 running CamillaDSP > Motu M4 > DIY 4 x UCD180 amp > Linkwitz LXminis, all fed by a NAD C658. So in principle SmartCross could be a good match for my usage. However, I already have the hardware, and since everything is working fine, what would SmartCross really do for me other than slightly reduce the number of boxes sitting under my tv? The software side of the project seems the most interesting – and only then if it could run on a Pi.

On a related note - Amir has tested many AVRs and all-in-one devices containing control software, DAC and amps etc. and they rarely achieve SOTA performance and often end up being decidedly mediocre performance-wise. Is there really any advantage in putting everything in one box?

My instinct is that this would be more interesting if it were primarily a software project based on off-the-shelf hardware that could be DIY'ed rather than having to purchase bespoke hardware. I fear it will end up too expensive to be worth the effort. You don't say where you are based but regardless of where you are some of your potential customers will be on the other side of the world. The less physical hardware you have to manufacture/ship the better ...

> Are you an existing hardware/software company with a track record of quality products or just some random guy in his basement with a soldering iron and a dream?

It's more like the latter for now (but multiple guys) - but we have not only solder iron, but also SMT station, oscilloscopes, signal generators, etc, and we have experienced embedded developers. That's why we are trying to make something to sell.

I understand your concerns regarding this point. We will have a proper website to publish everything about SmartCross before we can say it's completed. Having a "device tour" and/or sending it to reviewers (including Amir) for testing are being seriously considered and evaluated. We intend to do these before we start to sell it, to actually show you how it's like.

> The software side of the project seems the most interesting – and only then if it could run on a Pi.

The software will likely not run on a Pi without significant modifications, because it has many parts specifically optimized for the SmartCross hardware. But you don't have to use a Pi if you have SmartCross. You may not even have to use your NAD anymore - I'd like to know what's your typical audio source?

> they rarely achieve SOTA performance and often end up being decidedly mediocre performance-wise

We have CS43198 DAC outputs, if performance is very important to you (but that means you have to use external amplifiers). We will also try our best to improve our TPA3255 amplifier performance, but we don't have a number yet for now. We will have the performance properly tested.

> Is there really any advantage in putting everything in one box?

Convenience and easy-to-use is the biggest advantage. Another point is integration, like you can see the temperature and amplifier status directly on screen. You can also control various DAC parameters from screen.

> primarily a software project based on off-the-shelf hardware that could be DIY'ed

I appreciate your point, as we are also DIYers and enjoy DIY. However, it would be difficult to DIY this project based on existing components. For example, RPi4 don't have a 8-channel i2s output, so we cannot use RPi4.

Also, we think that we can reach a broader audience by offering completed and tested hardware.

> I fear it will end up too expensive to be worth the effort.

Could you please tell us how much do you think the "effort" is worth? I really appreciate your numbers.

It's a very interesting concept. Perhaps HDMI/display out too?

But four internal fans all resonating and vibrating together is not 'hifi'. Consider passive cooling and good ventilation.

Keep us updated. :)

For HDMI please see below.

Fans are thermally-controlled. They will only turn on when it's hot (maybe when you are playing really loud), and are typically off. And the temperature thersholds are actually software-controllable, so you may disable the fan if you don't like it.

Yes, I would lose the display and the physical volume knob and simply have software control and an external screen/tv. My gear is on the other side of the room. I can't read such a tiny display or reach the knob anyway ...

The screen of this device is only for displaying the control GUI, so it would not be useful to add an HDMI output.

But, we have a control app with the exact same interface that runs on PC and mobile phones! So if you need to control it from the other side of the room, you can just install the control app in your phone or PC, and control the device over WiFi.
 
Back
Top Bottom