On ARM SoCs you generally can't really talk about 'the GPU'. There are separate:
* 3D accelerator, which is what some people call the GPU, but it only does 3D acceleration (OpenGL ES in most cases) and on newer models it can also run OpenCL - not the case on this SoC which has a Mali-400. This is working with closed source drivers on GNU/Linux.
* a video decoder and sometimes a video encoder, Hantro G1[0] and Hantro H1[1] on this hardware. These are unsupported on GNU/Linux, possibly because Android uses its libstagefright[2] infrastructure and there's limited demand for GNU/Linux support.
* sometimes a 2D accelerator, which would mostly be used for blits, resizing and rotation nowadays. RK3188 actually has two different units with overlapping functionality and which work on GNU/Linux with open source drivers.
Even though the video decoder is unsupported on GNU/Linux, the ARM cores are fast enough to decode 720p and (with some frame loss) 1080p h264 video. I wrote an XV driver[3] for RK3188 which uses hardware support for colorspace conversion and video resizing together with a few other tricks.
Performance-wise, everything is better than a RPi, simply because the Pi's design is (iirc) 2 years old.
Seriously, I'd have nothing against a i/o compatible RPi Model C with a state-of-the-art chipset, gbit ethernet directly wired into the SoC and maaaybe even on-board WiFi/GSM. It's time for an update...
As long as the HW interface is the same (i.e. all connectors at the same place, same pinout) and the SW interface stays the same (e.g. GPIOs mapped at the same places), then you could just drop in a "RPi C" and have vastly bigger resources at your hand.
The idea that everything more than 2 years old is obsolete is funny to me; itself it's rather 90s, when you really did get big jumps in capability every year.
Pi are dependent on Broadcom's SOC plans. They're also determined to keep the cost low. Onboard wifi or bluetooth is concievable, although incurs extra CE approval work costs and there will be the usual complaining about binary blobs. Onboard GSM would be an approvals nightmare and imposes more constraints on the power supply.
The title was just link-bait. At nearly 3x the price of the Pi and lacking the breadth of support, it's not a "Raspberry Pi Alternative" at all, just another in a long history of single board computers.
Unfortunately the software support seems seriously lacking for a lot of these RPi competitors, I'd be reluctant to get one without seeing a sizeable community behind it. Parallela looks to be another interesting alternative.
The RPi can run "normal" distributions in a sense, but all ARM boards need some degree of software customization because there is a lot less standardization in the interfaces to hardware peripherals. x86 CPUs have a standard interface called PCI with which they can dynamically probe what sort of peripherals are attached to them. ARM CPUs don't have such an interface, so connections to peripherals have to be configured in the kernel at compile-time.
The kernel isn't the only thing. What about drivers? Getting random hardware peripherals to work with a single-board computer is not always straightforward. A larger community means there is more documentation out there on how to get things working.
But once it's a peripheral the drivers are loaded as modules and it doesn't matter what the board is ... ?
Sorry, just don't really get it. Been running debian on (mostly headless) ARM boards for about a decade now and I don't really grok why a community around a particular board is that useful. Once you have a system you have a system...
I would have expected a bit more software support from the get go. Only Android and Linaro...a little light for me. To be a beaglebone or Rpi competitor, they will need some more support in terms of OSes and packages. One of the greatest parts to the Pi/BB isnt the cheapness of the hardware, its the fact that almost every linux package runs on them.
Mele A1000G Quad is probably a better bet. Both of them are not very well supported by upstream Linux, but the Mele / AllWinner A31 has been around longer and so has had a bit more work done to figure it out. Also the A31 supports hardware virtualization.
If you want better than RPi, well-supported upstream and with a good community, then go for the dual core A20-based Cubietruck. This also supports hardware virt, and is generally a great development kit.
I should point out that Radxa board comes from the same developer, as Cubietruck: Tom Cubie. So, the communities for Radxa and Cubieboard/Cubietruck are more or less the same.
The communities are actually quite different. Cubietruck uses Allwinner and Radxa uses Rockchip. So one community is centered around linux-sunxi.org and the other around linux-rockchip.info. I don't know the actual overlap, as I'm mostly interested in linux-sunxi stuff - but I doubt that the overlap is actually big/significant.
MALI GPU (ARM's proprietary GPU core), would be at least one reason.
I'm running a completely open source u-boot, kernel and userspace on mine. With the exception of a tiny bootloader[1] which just sets clocks at very early boot. However my open source chain doesn't support some bits of the hardware, although it supports all the bits I care about (serial port, SATA, MMC, virtualization).
[1] This first stage bootloader was probably written in assembly, and has been disassembled and annotated, but no official source is available for it AIUI.
There's also the ODROID U3 from hardkernel, which is in the $60-70 range. Similar specs in terms of computing, I think.
I use these sorts of things as low-power quiet servers for at-home foolery, not for actual home automation, the GPIO stuff is generally wasted on me. =)
Why compare it to a pi if the price is 2.5x the pi - its a different class of device. Hey check out this Radxa alternative that has a built-in FPGA, dual nic, and is even faster! http://www.crowdsupply.com/kosagi/novena-open-laptop/
I can confirm that the BBB uses no more than 500mA while running intensive tasks. I have mine connected to a power supply that only provides that much, and it hasn't had any issues.
I was excited about the BBB specially because of the NAND Flash availability.
In similar fashion as the RPi back in the day lead time is (as far as I can tell) in months
There are hundreds of these mini-computers and they always have poor support because the community is small and the makers just abandon the product. They're like Nokia phones back in the day, you get what you buy and that's it.
The Raspberry Pi has a great community around it that's doing all sorts of things. Multiple independent distros exist and it's a well understood system. This alone makes it superior for many uses than any of these alternatives.
Yeah. I have purchased, then given away both my PandaBoard ES and Intel Galileo.
because, compared to teh Pi, they just aren't well-integrated and the lack of support is a barrier to getting things done.
I used to think the Pi was pretty underpowered, but for most purposes, it's a practical device. I can even code with a full screen editor, and push code to an arduino (a bit slowly). I'll take a slow, but well supported system over a fast unsupported one any day.
I agree though I'd mention that the community behind the BeagleBone Black, while not nearly as large as the Raspberry Pi community, has managed to reach a critical enough mass to mostly avoid the problems you're talking about.
The killer on the BeagleBone Black for me for some uses is the rather terrible maximum resolution for HDMI display output. (For other uses the two dedicated microcontrollers make it a great device). Even the Raspberry Pi has it beat on display resolution, though in an increasingly high-density display world this is a problem that most of these systems suffer from (other than a couple of very high-end developer boards with [somewhat iffily-supported] displayports).
For people who really want something with more oomph than the Pi or the BBB, I'd suggest something built on the imx6 like the Wandboard. Yes, the community is much smaller, but IME it is much easier to "go it alone" or with a small community when you have the sort of documentation that Freescale provides when compared to the usual-suspects of Chinese chipsets like the Rockchip or Allwinner SoCs.
Was coming here to say this same thing, (although I think it is closer to thousands of ARM based mini-machines). The fact is that anyone with even a free CAD package, and something like OSHPark can put out a "ARM PC". And they can probably get enough Linux or Android running to have it throw something up on the screen. With the latter it will look really good on the screen, even when the hardware is ill supported.
So you get one, and you try to do anything with it, and you start running into the 'oh, but that isn't supported' or a Forums link where there are a half dozen messages from a desparate new user that were posted 6 months ago, maybe 100 - 200 views of each, and no replies. A ghost town. (its worse if they don't manage spam but still).
Getting the hardware running is perhaps 5% of the problem, getting a distro on it is perhaps another 10%, getting driver support and documentation for all the bits in the SoC that is like 90%, and then getting app support for the platform is another 90%. Then maybe, just maybe, you have something. Except if you've been relying on volunteers in your forums they have 'real jobs' to go to, if you hire people to do the work you can't sell the boards for the cost of parts and assembly + 20%.[1]
SoC Manufacturer support is critical here since they can provide access to the secret bits on the chip. The BBB is the closest I've seen to being open.
[1] A large number of Chinese manufacturers seem to operate on the assemble it + throw it over the wall model. Which is great if you have an organization which can take the result and support it, but not great if you are depending on community support.
How big of a community do you need? What's the critical mass?
The beagleboard been around for sometime, except it used to run you around $200. You could trivially put a linux distro on a beagleboard before the Pi even existed. Heck, the Beagleboard Black comes with Debian installed and goes for $55 now. Not too bad.
The reality is that the Pi just delivered a very low cost and now they sit in drawers and landfills because Joe Hacker got over the "shiny shiny" aspect of owning it pretty quickly. The same way he has a Wii and a Rock Band set in the basement in a box labeled, "Stuff."
I suspect that the slighter higher cost of entry means that things like the beagleboards are in use doing something interesting while most Pis are either junked or running blinkinglights.sh and will never be touched again.
I'm not sure why people need this stuff either. Put debian on the machine, get access to everything from the debian repos. What more do you actually need?
Still hoping Raspberry Pi would make a dual-core Cortex A53 (ARMv8) version for 2015. At 28nm, it should be pretty cheap by then.
I think dual-core would be preferable to single core, even if it's more expensive than their target, because so many projects are trying to put a "full OS" on Raspberry Pi, and a dual core version would serve that much better in a real world usage scenario (like for education in poor schools and such).
A53 would be nice indeed. I think CPU core count makes very little difference in price, because it's such a small portion of total chip space used. 64 kB L1 and 512 kB L2 (configured in such a way CPU can use it) would be very nice too. I hope it also has 2 GB RAM, at least as much graphics performance. More wouldn't hurt, but Videocore 4 is pretty ok as it is.
USB3, SATA and gigabit ethernet. Or at least 1 PCIe lane.
At this point it's not that these things aren't advances on the Raspberry Pi, it's that the barrier to entry is so low that they're coming out several times a month and there's no reason for the community to center on any one particular platform, no 'killer app' that works not just twice as well as the competition, but 20x as well. To convince the Raspberry Pi community to switch en masse, that is what we're looking for: outliers on the price/performance chart. That's hard to do at $100, from a brand nobody has heard of before, with no guarantee of substantive investment in the future of the product.
Is there some dual-core / quad core board that has an 8-channel (or more) ADC/DAC onboard? I'm looking for some multicore board that has ADC/DAC, rather than GPIO...
If I want a $30 device, I get a pi. If I want to actually spend money, I get a NUC. $100 is a terrible price point for most hobbyist gear -- too expensive for cheap-os, too poor support for real work. Just ask the hard kernel / odroid guys - they have eight cores at about the same price point.
I've evaluated a lot of embedded arm dev boards. The first thing I look at is "Can I run a stock kernel on this board?" If the answer is no, its really a deal breaker. Without a stock kernel you are at the mercy of the vendor for upgrades. And most vendors are really bad at shipping up to date kernel patches.
And to go a little deeper, "Can I get a full TRM for the chip?"
Freescale and TI are pretty solid in this area. The i.MX6 TRM is a freely available 7000+ page PDF.
AllWinner and RockChip? Not counting on it. I went through an ordeal with Ingenic (nee ChinaChip) where it took three levels of pleading with reps to get a badly-translated 50-page document.
I spent so much time with TI and Motorola chips, first in undergrad then at a division of Raytheon that used to be TI, that I got spoiled by being able to pick up a document that had detailed descriptions of every functional unit, external signal, programmable register, and instruction. Then I ventured outside that world, where I couldn't even buy some chips without signing an NDA and submitting a fucking business plan.
I hear ya. And that's where I think some people have gotten lulled by the Raspberry Pi when it comes to these boards.
IMO there's a difference between true eval/dev boards and the (for lack of a better word) devices that are following along the lines of the RPi.
Dev boards used to be large expensive things that did require NDAs and a healthy business relationship with a chipmaker and local FAE. Could you afford the $4K for an OMAP1 eval board? I couldn't.
I'm glad to see some of that stuff come back down to earth, especially now that the big players are cooperating with more-open projects like Beagle/Panda and SABRE. And they're at least following it up with a more open attitude when it comes to documentation, drivers/kernel branches, and online support.
I generally want an almost complete TRM too. In my experience there are many more SoCs with an available TRM than with complete support in the mainline kernel. By the way, there some WIP work for getting RK3188 support in mainline. It can boot but only a small part of the peripherals are supported.
You can never get a complete TRM for high performance ARM SoCs because they all license some IP for which they can't publish the documentation, usually for 3D accelerators and video decoders. You can find leaked Allwinner and Rockchip TRMs, at least for Allwinner A20 (the one used by Cubieboard for example) and RK3066 (which is quite similar to RK3188), so it's a compromise I've accepted in a few cases.
I've been hacking Rockchip RK3188-based devices for a few months now. What caught my attention are the low cost Android PC-on-a-stick and tablets using this SoC. We're talking about $50-ish delivered for a PC-on-a-stick with 2GB of RAM, HDMI output and a WiFi+Bluetooth adapter and $150-$200 for a decently built tablet with similar specs, some even having high-DPI screens.
Radxa Rock (the article keeps talking about 'the Radxa' when that's the name of the company selling Radxa Rock, by the way) is similar to the various PC-on-a-stick, but in a development board form factor and with more I/Os and GPIO exposed.
Rockchip only provides support for Android and more recently Chrome OS, with GNU/Linux support being mostly community developed. The good news is that most hardware is working on GNU/Linux, with the exception of the video decoder and encoder (which is typical for most SoCs)and the NAND driver is closed source because it includes the flash translation layer which is treated as a trade secret by flash vendors. The bad news is that the kernel code developed by Rockchip is a bit crap and the community forks are quite fragmented because there's no central place to centralize various patches. Even so, it's generally straightforward to add support for a new board. We have a wiki[0] and an IRC channel - #linux-rockchip on Freenode if you're interested. The Radxa guys maintain their own fork so at least for their platform it's clear what to use.
I'd say it's a good choice for running Android or for hacking or for doing processing tasks (things like a building packages, running a low power webserver, continuous integration, etc) on GNU/Linux.
Some people in this thread ask/complain about platform-specific GNU/Linux distributions. There's Picuntu[1], but my view is that platform-specific distros are completely unnecessary and even a bit silly. On x86 you don't run Thinkpad-Ubuntu, you just run the generic Ubuntu. This is no different for ARM computers, you can use any generic distribution with a ARM port, with a kernel image compiled for your hardware and maybe one or two other drivers which need to be set up in userspace.
Compared to RPi, RK3188 (and other similar SoC) devices have a massive advantage since it's ARMv7 while RPi is ARMv6 which most distros don't support anymore. The difference in CPU performance compared to Raspberry can't be understated, it has 4 cores which are maybe 2 to 4 times faster for most workloads, about three times the memory bandwidth, four times the RAM, etc.
Did you manage find full RK3188 TRM? I would be interested to play with GNU/Linux on this board, but there's not much you can do without a decent documentation..
65 comments
[ 3.7 ms ] story [ 143 ms ] thread* 3D accelerator, which is what some people call the GPU, but it only does 3D acceleration (OpenGL ES in most cases) and on newer models it can also run OpenCL - not the case on this SoC which has a Mali-400. This is working with closed source drivers on GNU/Linux.
* a video decoder and sometimes a video encoder, Hantro G1[0] and Hantro H1[1] on this hardware. These are unsupported on GNU/Linux, possibly because Android uses its libstagefright[2] infrastructure and there's limited demand for GNU/Linux support.
* sometimes a 2D accelerator, which would mostly be used for blits, resizing and rotation nowadays. RK3188 actually has two different units with overlapping functionality and which work on GNU/Linux with open source drivers.
Even though the video decoder is unsupported on GNU/Linux, the ARM cores are fast enough to decode 720p and (with some frame loss) 1080p h264 video. I wrote an XV driver[3] for RK3188 which uses hardware support for colorspace conversion and video resizing together with a few other tricks.
[0] http://www.verisilicon.com/IPPortfolio_14_58_2_HantroG1.html
[1] http://www.verisilicon.com/IPPortfolio_14_82_2_HantroH1.html
[2] https://source.android.com/devices/media.html
[3] https://github.com/lgeek/xf86-video-fbturbo
Seriously, I'd have nothing against a i/o compatible RPi Model C with a state-of-the-art chipset, gbit ethernet directly wired into the SoC and maaaybe even on-board WiFi/GSM. It's time for an update...
The Pi was never state of the art. IMO losing the standardness in return for better performance would be a poor trade.
Pi are dependent on Broadcom's SOC plans. They're also determined to keep the cost low. Onboard wifi or bluetooth is concievable, although incurs extra CE approval work costs and there will be the usual complaining about binary blobs. Onboard GSM would be an approvals nightmare and imposes more constraints on the power supply.
Why would you need a specific hardware community?
Sorry, just don't really get it. Been running debian on (mostly headless) ARM boards for about a decade now and I don't really grok why a community around a particular board is that useful. Once you have a system you have a system...
(Mostly using it as a media streamer, where on-board wifi is a real plus.)
http://linux-sunxi.org/index.php?title=Mele_M9
If you want better than RPi, well-supported upstream and with a good community, then go for the dual core A20-based Cubietruck. This also supports hardware virt, and is generally a great development kit.
http://linux-sunxi.org/Cubietech_Cubietruck
I'm running a completely open source u-boot, kernel and userspace on mine. With the exception of a tiny bootloader[1] which just sets clocks at very early boot. However my open source chain doesn't support some bits of the hardware, although it supports all the bits I care about (serial port, SATA, MMC, virtualization).
[1] This first stage bootloader was probably written in assembly, and has been disassembled and annotated, but no official source is available for it AIUI.
I use these sorts of things as low-power quiet servers for at-home foolery, not for actual home automation, the GPIO stuff is generally wasted on me. =)
:(
Does anyone know Raspberry Pi alternative that uses little power and supports low power states?
AFAIK RPI has pretty flat power usage at ~500-1000mA. BeagleBone Black seems to be lower power (~200mA?) but it's hard to verify this claim.
(I need a box that will mostly stay idle but online, for things like ssh servers)
[0] - http://www.everbuying.com/product65368.html
The Raspberry Pi has a great community around it that's doing all sorts of things. Multiple independent distros exist and it's a well understood system. This alone makes it superior for many uses than any of these alternatives.
because, compared to teh Pi, they just aren't well-integrated and the lack of support is a barrier to getting things done.
I used to think the Pi was pretty underpowered, but for most purposes, it's a practical device. I can even code with a full screen editor, and push code to an arduino (a bit slowly). I'll take a slow, but well supported system over a fast unsupported one any day.
The killer on the BeagleBone Black for me for some uses is the rather terrible maximum resolution for HDMI display output. (For other uses the two dedicated microcontrollers make it a great device). Even the Raspberry Pi has it beat on display resolution, though in an increasingly high-density display world this is a problem that most of these systems suffer from (other than a couple of very high-end developer boards with [somewhat iffily-supported] displayports).
For people who really want something with more oomph than the Pi or the BBB, I'd suggest something built on the imx6 like the Wandboard. Yes, the community is much smaller, but IME it is much easier to "go it alone" or with a small community when you have the sort of documentation that Freescale provides when compared to the usual-suspects of Chinese chipsets like the Rockchip or Allwinner SoCs.
So you get one, and you try to do anything with it, and you start running into the 'oh, but that isn't supported' or a Forums link where there are a half dozen messages from a desparate new user that were posted 6 months ago, maybe 100 - 200 views of each, and no replies. A ghost town. (its worse if they don't manage spam but still).
Getting the hardware running is perhaps 5% of the problem, getting a distro on it is perhaps another 10%, getting driver support and documentation for all the bits in the SoC that is like 90%, and then getting app support for the platform is another 90%. Then maybe, just maybe, you have something. Except if you've been relying on volunteers in your forums they have 'real jobs' to go to, if you hire people to do the work you can't sell the boards for the cost of parts and assembly + 20%.[1]
SoC Manufacturer support is critical here since they can provide access to the secret bits on the chip. The BBB is the closest I've seen to being open.
[1] A large number of Chinese manufacturers seem to operate on the assemble it + throw it over the wall model. Which is great if you have an organization which can take the result and support it, but not great if you are depending on community support.
My next mini computers will be RPis until I've lots of experience. Felt into the "this is like a RPi but more powerful" trap :)
The beagleboard been around for sometime, except it used to run you around $200. You could trivially put a linux distro on a beagleboard before the Pi even existed. Heck, the Beagleboard Black comes with Debian installed and goes for $55 now. Not too bad.
The reality is that the Pi just delivered a very low cost and now they sit in drawers and landfills because Joe Hacker got over the "shiny shiny" aspect of owning it pretty quickly. The same way he has a Wii and a Rock Band set in the basement in a box labeled, "Stuff."
I suspect that the slighter higher cost of entry means that things like the beagleboards are in use doing something interesting while most Pis are either junked or running blinkinglights.sh and will never be touched again.
P.S. More details at https://news.ycombinator.com/item?id=7679302
But it is hard to keep up sometimes. And many of them are frustrating crap.
I think dual-core would be preferable to single core, even if it's more expensive than their target, because so many projects are trying to put a "full OS" on Raspberry Pi, and a dual core version would serve that much better in a real world usage scenario (like for education in poor schools and such).
dual core version would serve that much better in a real world usage scenario
Explain how this is significantly more educational, or how lack of CPU is some how debilitating to current use.
USB3, SATA and gigabit ethernet. Or at least 1 PCIe lane.
Of which you can only use 4 at a time because Exynos 5410 is broken.
> at about the same price point.
69% more expensive.
Freescale and TI are pretty solid in this area. The i.MX6 TRM is a freely available 7000+ page PDF.
AllWinner and RockChip? Not counting on it. I went through an ordeal with Ingenic (nee ChinaChip) where it took three levels of pleading with reps to get a badly-translated 50-page document.
IMO there's a difference between true eval/dev boards and the (for lack of a better word) devices that are following along the lines of the RPi.
Dev boards used to be large expensive things that did require NDAs and a healthy business relationship with a chipmaker and local FAE. Could you afford the $4K for an OMAP1 eval board? I couldn't.
I'm glad to see some of that stuff come back down to earth, especially now that the big players are cooperating with more-open projects like Beagle/Panda and SABRE. And they're at least following it up with a more open attitude when it comes to documentation, drivers/kernel branches, and online support.
You can never get a complete TRM for high performance ARM SoCs because they all license some IP for which they can't publish the documentation, usually for 3D accelerators and video decoders. You can find leaked Allwinner and Rockchip TRMs, at least for Allwinner A20 (the one used by Cubieboard for example) and RK3066 (which is quite similar to RK3188), so it's a compromise I've accepted in a few cases.
Radxa Rock (the article keeps talking about 'the Radxa' when that's the name of the company selling Radxa Rock, by the way) is similar to the various PC-on-a-stick, but in a development board form factor and with more I/Os and GPIO exposed.
Rockchip only provides support for Android and more recently Chrome OS, with GNU/Linux support being mostly community developed. The good news is that most hardware is working on GNU/Linux, with the exception of the video decoder and encoder (which is typical for most SoCs)and the NAND driver is closed source because it includes the flash translation layer which is treated as a trade secret by flash vendors. The bad news is that the kernel code developed by Rockchip is a bit crap and the community forks are quite fragmented because there's no central place to centralize various patches. Even so, it's generally straightforward to add support for a new board. We have a wiki[0] and an IRC channel - #linux-rockchip on Freenode if you're interested. The Radxa guys maintain their own fork so at least for their platform it's clear what to use.
I'd say it's a good choice for running Android or for hacking or for doing processing tasks (things like a building packages, running a low power webserver, continuous integration, etc) on GNU/Linux.
Some people in this thread ask/complain about platform-specific GNU/Linux distributions. There's Picuntu[1], but my view is that platform-specific distros are completely unnecessary and even a bit silly. On x86 you don't run Thinkpad-Ubuntu, you just run the generic Ubuntu. This is no different for ARM computers, you can use any generic distribution with a ARM port, with a kernel image compiled for your hardware and maybe one or two other drivers which need to be set up in userspace.
Compared to RPi, RK3188 (and other similar SoC) devices have a massive advantage since it's ARMv7 while RPi is ARMv6 which most distros don't support anymore. The difference in CPU performance compared to Raspberry can't be understated, it has 4 cores which are maybe 2 to 4 times faster for most workloads, about three times the memory bandwidth, four times the RAM, etc.
[0] http://linux-rockchip.info/ [1] http://home.g8.net/