Brainstorming | Collecting Some Pains & Dreams of SBCs


#1

With the development of SBCs, more and more brands and kind of SBCs could be found on the market.Eventually, have you find real suitable SBCs for you? How about it?

Recently, we have collected some idea about their pains when using existing SBCs & their dreams for future/new SBCs from some professionals.This is a meaningful thing.So here we would like to share their opinions with you,if U also have some inspiration,WELCOME to leave your footprints in here.

Pains

  1. Kernel is too old and too custom. Mainline, buildroot, manufacturer git, which patch? Too fragmented.
  • Choose mainline, stable linux

  • Beaglebone has package mismanagement, compatibility issues, always outdated, and no future roadmap

    ------Ken

  1. Support just Android
  • Please support both Linux and Android

    ------ Gytis

  1. There are many RK3399 boards out there.
  • Please make yours stylish, so that it can sit next to my Playstation 4

    ------Denis

  1. Insufficient sound options.
  • I want multiple i2s, spdif, i2s input, …

    ------Ken

  1. Documentation is hard to get, need to dig, get upset
  • Please make everything clear, and easy to find, nothing hidden.

    ------Darren

  1. No support for graphics drivers, makes for a useless board
  • Please ensure your graphic drivers are the best.

    ------Mick

  1. MicroUSB is insufficient as a power source
  • Please support USB-C P.D. (power delivery)

  • Or provide us with a barrel jack DC plug

    ------Mick

  1. GPIOs that don’t work, non-functional
  • I2C

  • SPI

  • 3D Graphics

  • ------Mick

  1. Raspberry Pi has two issues.
  • First, it does not have built-in EMMC chip

  • It does not support Type-C interface

  1. Khadas VIM has two issues.
  • It does not support Gigabit Ethernet interface

  • It does not support USB 3.0 interface.

    ------Mr.徐

  1. Raspberry Pi 3B+ for Drone Applications
  • 1.4 GHz quad-core is faster than earlier SBCs, but ultimately underpowered for machine learning & vision.

  • Only fast enough for our core flight controller code.

  • Hardware x264 encoding is barely supported which makes streaming high quality footage difficult.

  • The official Raspberry Pi cameras are terrible quality.

  • Dual CSI-2 would be ideal for stereovision.

  • The 40-pin GPIO header is limited.

  • We need more than one i2c bus, but enabling the second one on the Pi is a hack.

    ------Ken

  • i2c should operate stably at 1Mhz. The Pi’s default is 100kHz, and while it worked at 400kHz reliably, we didn’t test 1MHz as it sounded like we were asking for trouble.

  • More UARTs. Only one is available on the Pi and requires you to disable the serial console.

  • We need more GPIOs.

  • Only 1GB of RAM

    ------Ken

  1. Raspberry Pi Roadmap DOES NOT cater to high-end applications
  • An important goal of theirs is maintaining a cheap (~$35) price point

  • Educational use cases also take a priority.

  • Unclear what chipset they’ll be using in their next generation.

    ------------Ken


Dreams

  1. Thriving community and fan-base
  • SBC proven to be reliable by its millions of users.

    ------Mick

  1. Onboard O/S developers, e.g. Armbian “Armbian is our preferred O/S”
  • …?

    ------Mick

  1. Support for gigabit ethernet
  • GbE is behind a USB3 bridge

  • Direct GbE connectivity to the SoC

  • or via switch IC

    ------Mr.徐

  1. IoT projects:
  • They want access to GPIOs, SPI, I2C, UARTs, MIPI-CSI, MIPI-DSI.

  • Ability to connect 5v or 3.3v logic devices.

  • They want lots of GPIO options. Pi compatible header is a must for cross-compatibility with Pi hats, but extra GPIOs over and above the Pi is great.

  • I have never seen an SBC that can support more than one Pi hat!!

  • Range of wireless protocols: LoRa, WiFi, GNSS, CAT-M1, RF, Bluetooth. So M.2 key slots supporting those would be great.

    ------Mick

  1. Casual Maker:
  • Primarily they want low prices

  • They want access to GPIOs, SPI, I2C, UARTs, MIPI-CSI, MIPI-DSI.

  • Ability to connect 5v or 3.3v logic devices.

  • Don’t need lots of GPIOs.

  • They want a small footprint. The smaller the better.

  • Castellated or breakout style modules are the best to be using.

  • LiPo battery charging is also an important option.

    ------Mick

  1. Media Centre Projects:
  • Require USB3, SATA, and/or M.2 key slots and Fast GbE.

  • They want to be able to have storage options.

  • They want to be able to stream 4K or 1080p videos.

  • They want to run KODI and have it functional.

  • They also want it to be quiet. Fanless designs that don’t throttle the SoC are preferrable.

  • HDMI input would be a bonus.

    ------Mick

  1. Artificial Intelligence or Machine Learning projects:
  • High-end users.

  • They want to be able to run ML on a very fast CPU. The more cores and the higher the clock rate the better.

  • They don’t really need GbE

  • Ability to connect many cameras and process on-board would be ideal.

  • Access to GPIOs is important, probably more so than IoT. They want to be able to drive servos and motors.

  • More than likely they’d be running it in some robotics setup.

  • HDMI input would be a bonus.

    ------Ken

  1. Games/retro projects:
  • These people primarily want to be able to connect up some controller, either by USB or GPIOs and play retro games run in emulators such as MAME.

  • They also have storage needs as a full set of MAME ROMs will end up being around 10G. If you include PS2/PS3/SEGA Saturn plus every single console on the market you’d get to around 1TB.

  • They don’t really need 4K, 1080p is the highest resolution they’d need.

    ------Mick

  1. Blockchain projects:
  • Distributed storage device based on block chains

  • Support Gigabit Ethernet

  • Support USB 3.0 interfaces

  • Minimum configuration of 2.0GHZ CPU, 2G DDR3 RAM, 8G ROM

  • Operating systems that support Android, Ubuntu, Centos, etc.

  • The Chinese version of the development manual is even better.

    ------Mr.徐

  1. Clustering
  • Power efficient while increasing performance

  • Low cost scalable platform that could be used for stuff like building a compact rendering cluster which can be seen with products like the raspberry pi cluster hat.

  • Edge product is going in the right direction for people wanting to build a small cluster/super computer

    ------Darren

  1. Drone Building
  • More powerful SBCs for our flight controllers

  • Computer vision applications on the vehicle

  • Nvidia Jetson TX, and Jetson Xavier

  • Khadas Edge looks like an attractive SBC for evaluating the RK3399, and we appreciate the gold fingers that get 340-pins out.

  • We’re looking for SBCs that push the envelope and thus are willing to pay a higher price point.

  • Large number of PWM outputs.

  • Plenty of GPIO.

  • PRUs (Programmable realtime units)

  • Ditch the 40-pin RPi header. Power/industry users don’t need HATs. 40-pins is far too few.

  • At least 2 i2c buses. 4 UARTs. PWM would be nice, but optional. As many additional GPIOs as possible.

  • Faster CPUs & more cores. TDP is not a big concern from a power draw perspective, but is important for the cooling solution we require.

  • GPU / CUDA cores / tensor cores (NVIDIA Jetson series does this well). We don’t need this on our primary SBC, but our auxiliary SBCs need this for image processing.

  • Dual CSI-2 for stereovision that are compatible with the cameras out there these days (unlike the RPi CSI).

  • Kernel mods must be upstreamed to mainline.

  • Should go without saying, but WiFi & BT are required and better work well.

  • For fast data acquisition and logging, we prefer an eMMC slot for storage.

  • A robust community if the board has lots of idiosyncrasies. If everything works smoothly, then the community is less important.

  • [Stretch] A set of co-processors that shares memory (mmap) with the primary processor, similar to the Beaglebone PRUs, is wonderful for moving PWM-like controls out of a separate Arduino.

  • At least 4GB of RAM.

  • We always run headless, so we do not need any display advancements.

  • Hardware video encoding to reduce video processing and streaming latency. (Jetson does this well)

    ------Ken

  1. General projects:
  • PoE capability and/or LiPo charging.

  • Decent PMIC to allow possible over/under-clocking.

  • SD/eMMC support with boot selector, or simple method to load eMMC.

  • USB Type-C is fast becoming a requirement.

    ------Mick

  1. Example of a dream SBC:
  • FriendlyElec’s NanoPi Duo.

  • The smallest SBC in a breadboard friendly package

  • That can also fit onto a baseboard and expand out everything to ports.

    ------Mick

  1. Castellated package
  • High-end SBC on the market that came in a castellated package. Now that’d be nice!

  • Something like an RK3399 with 2mm castellated edges, but with a standard Pi header and form factor.

  • It’d a product that can be included in 3rd party products, (I know of at least two products that are waiting for this) or used solo with standard Pi headers.

  • The castellation would allow far more GPIOs to be pushed out, but wouldn’t take up much board real-estate.

  • You could provide a reasonably priced adaptor board breaking out the castellation to normal 2.54mm headers for those people who struggle with that pitch, but even then most people would be able to use the standard pi header.

    ------Mick

  1. No Port SBC
  • Interestingly a lot of people don’t use all the USB ports of the Pi

  • Providing an option where you can buy an SBC without USB and GbE ports, (or the ability to solder on yourself), is something I haven’t seen yet.

  • This would make this sort of SBC the thinnest SBC around and would be fairly versatile.

    ------Mick

  1. Why is Edge Great?
  • A DIMM style compute module that can be used standalone.

  • Being able to break out a whole lot more GPIOs than normally exists is a great idea.

    ------Ken

  1. Balanced SBC
  • Having the right features at the right price

  • Maintaining a good performance to power consumption

  • Having great documentation.

    ------Darren

  1. Company Direction
  • More company’s developing across different architectures

  • Most SBC’s use ARM based CPU’s but I think it could be great if they/you also developed a RISC-V based alternative as well.

    ------Darren

****UPDATE DATE(BEIJING TIME):2018/9/12 18:32

Pending…Welcome your idea…


#2

a clusterboard like this thing: https://www.pine64.org/?product=clusterboard-with-7-sopine-compute-module-slots

with an integrated ethernet switch (no more cascades of ethernet cables to tie around!), and possibly console UARTs multiplexing, and a rounder number of slots than 7… (something like huh… 10 ? :stuck_out_tongue: )


#3

Not a real problem at least with RTL8153 – more IRQs than necessary but works. If the person was talking about RPi 3 B+… then nope, the GbE chip there is behind a USB2 bridge and low performing anyway. But everything USB related on any Raspberry Pi is a mess anyway since the VideoCore is too old and limited.

I don’t believe that’s a Khadas top priority (fancy style / good looking is more important)

There you go: Core and Core2

…will soon work with RK3399 SoMs (later with RK3399Pro if everything works). Pine folks already address this market.


#4

@tkaiser not sure what your comment means exactly: pine64’s clusterboard should be compatible with RK3399 SoMs ?

I assumed each and every manufacturer just went on with its own custom-I-make-it-just-how-I-like-and-the-rest-of-the-world-might-as-well-die pinout without bothering with standardization (except for a few expensive options like Qseven and such)


#5

Pine folks plan to develop compatible SoMs with RK3399 and maybe also RK3399Pro to be used with their clusterboard (or customer’s variants – there exist rather large installations relying on SoPine64 in custom clusters but as everone knows Allwinner’s A64 is pretty limited – that’s why there’s demand for RK3399)

Unlike Khadas guys TL Lim from Pine communicates in the open. You just need to read the IRC backlog from the last 2-3 weeks: http://irc.pine64.uk

Wrt different SoM formats… well, the standardized are all pretty expensive, the one from RPi folks is totally useless (since no IO pins on the connector except their laughable single USB2 connection to the outside), Pine folks did therefore their own thing and Olimex for various reasons also the same: https://www.olimex.com/Products/SOM204/


#6

Thank you for your sharing.


#7

Thank you for your sharing. This is a good collision of ideas.


#8

Pains

1.We use them for connected nodes on our robots. They don’t directly drive mechanisms but do directly control sensor inputs.

------Marshall

2.Hardware:

• Regarding the Raspberry, the main problem is the lack of connection schemes. I know it is not opensource but sometimes it is required to know all the connections with the processor

• In these SBCs, connecting a lithium battery is a nightmare because they do not have special circuits for this (according to what I read on the website of khadas, the Edge has this solved).

• Another problem with these SBCs is that not all of them have test pads, which complicates the work when troubleshooting is required.

• SBCs like the Raspberry do not have enough mounting holes. The main problem is when hats are placed, they are left floating on one side of the SBC, without having a support point.

• All these SBCs need fancoolers and heatsinks for any real work, and they are not designed with this in mind. And when they are installed, it is almost impossible to place hats, so elevators are always required to connect them and hacks to be able to fix the fancoolers to the pcb.

• Lack of high-speed connectors

• Lack of connectors for sata disks

Software:

• Although Raspbian and its variations allow the use of SBCs, to do a real job, Ubuntu is always needed, so an image that works 100% is required. Raspbian is for very basic users, and people who are not going to use the SBC to its maximum potential. The users that use Ubuntu are the ones that will give a real contribution to the SBC communication.

------Miguel

3.I have done in depth testing for over 20 SBC and Android boxes and there was a lot of pain and disappointment. For example, OrangePi form factor was more suitable for me but the source was broken and the ROM had so many issues in Bluetooth and WiFi. The main reason that I settled with Khadas as my fav dev board is that the ROM works and could build easily from sources.

------Rami

4.I just purchased a new raspberry pi 3+ to start testing and development on. I need to configure my physical server at home, which currently is very very under powered. I will not be compile quickly, so that will bottleneck me for a while, cloud platforms are not affordable at the moment for the actual horsepower needed.

The code that builds a open source operating system is your code and it’s my code. Just because I’m creating and modify the source code for a board that’s not currently supporting doesn’t mean it’s my operating system. Yes the modification and bug killing for the raspberry pi is challenging, but at the end of the day you just want the awesome operating system that google built on your board. Not mine, So there will be no logos at are not in the original up to date source code and no alterations that are not performance based.

It seems like a cool project from more than just “get a working Chrome OS”, but I feel like I’d need to go from a 10,000ft view and drill down to not get lost.

it seems headless chrome raspbian image, setup local DNS and done a few other things with the Pi like patching their latest OS to allow a mix of static interface definitions and dynamic dhcp ones.

-------Erbas

5.Single board computers are under-powered & have a strange mix of very specific / general components.

Most of the higher performing chipsets are used for tv set top boxes which means including ir receivers et al that are not useful in other contexts.

Lack of power over ethernet.

------Leonid

6.Currently the biggest problem with existing SBC’s is having the right features at the right price while maintaining a good performance to power consumption and having great documentation is often hard to find particularly with less known SBC’s.

------Darren


Dreams

1.CAN Bus support, support for redundant power sources.

Wide range of Power inputs from ~3/4v up to 19v.

Support for using USB Battery packs as external power sources.

Gigabit ethernet.

USB3.0/3.1 and USB C connectors.

------Marshall

2.For me, all SBCs in the future must have the following:

• Minimum 4 GB of RAM

• Minimum 64GB internal disk

• High speed connectors

• Connectors for sata

• Integrated 3G GPRS communication

• Circuits for battery charging and POE

• Fully detailed circuits, and test pads for troubleshooting.

• Heatsink and fancooler installed by default

• Power supply from 3Vdc to 15Vdc

• Suitable power connectors. Mini or micro USB are not appropriate connectors, a barrel Jack is required.

------Miguel

3.Support for larger Sony Exmor/Starviz sensors, such as the IMX385, or even micro 4/3

------Adam Langley

4.In my experience,

-Focus on enabling small-meduim scale solutions.

-It does not need more power or more storage space. This is not a media center to store movies, if user wish, can plug usb flash/SSD or network drive. Bigger storage increases the price and is pretty useless. 8GB/1GB is just enough.
Since each board is serving a single purpose solution there is no need for many I/O pins. This increase board form factor and many pins Just few something like 4-5 is enough. Also one usb host is enough.

-Focus on wireless. The Khadas already have done good job. But IoT needs good range/tx_power of Bluetooth and WiFi. If Khadas also add a slot for SIM that would cover many IoT cases. LAN is also nice to have.

-Power. For nice compact IoT solution, I imagine that Khadas can power it when plugged via 5v USB OTG to upload software. but then when it is deployed in the field, it should also accept 12v power. Would be amazing if there is a small power board that plugs to the side of the main board that provides 220v to 12v power. which will power the board. I can tell you this will make devs happy. because what is the point of small form factor if the power supply is almost same size or double. with the 12v and 220v you can integrate the solution anywhere.

-Price. if you have followed those advices you will get a reasonable priced IoT board. which will allow devs to deploy small scale IoT solutions.

-Form factor: thin is important. if you take my points into consideration, you will get a smaller board, which could fit next to it the attachable power board 220v. then the resulting size will match the current VIM size.

------Rami

**** UPDATE DATE(BEIJING TIME):2018/9/13 11:18

Pending…Welcome your idea…