
BeagleBone Blue – A complete, Linux-enabled robotics computer - jeshwanth
https://beagleboard.org/blue
======
tyingq
Was initially confused, because there was an earlier "BeagleBone Blue" (well,
BlueSteel, I guess) that had nothing to do with robotics:

[http://www.cnx-software.com/2014/06/18/bluesteel-basic-
beagl...](http://www.cnx-software.com/2014/06/18/bluesteel-basic-beaglebone-
black/)

The interesting part of this one, to me, is the Octavo packaging of the AM335X
processor with on-die RAM. That makes the board much simpler. Though, I
thought it would make a bigger difference in price. The BeagleBone wireless
that uses the same chip is ~$68, which is $7 higher than the Black that has
separate RAM.

If you haven't used a BB product, check out the thing that I think is the
biggest upside of these...the built in pair of PRUs. It's like having the best
of a normal linux board plus a microcontroller on the same board. Since the
PRU shares memory with the main CPU, you can offload things that need to be
realtime. That allows for things like a near professional-level LED matrix
controller ([https://trmm.net/LEDscape](https://trmm.net/LEDscape)) or even a
DIY video controller ([https://trmm.net/Mac-SE_video](https://trmm.net/Mac-
SE_video)).

~~~
jarmitage
The project that I am a part of uses the PRUs to implement an ultra-low
latency audio platform: [http://bela.io](http://bela.io)

It's open source, here's the PRU code:
[https://github.com/BelaPlatform/Bela/blob/master/pru_rtaudio...](https://github.com/BelaPlatform/Bela/blob/master/pru_rtaudio.p)

This paper describes the platform in more detail:
[http://www.eecs.qmul.ac.uk/~andrewm/mcpherson_aes2015.pdf](http://www.eecs.qmul.ac.uk/~andrewm/mcpherson_aes2015.pdf)

This paper compares latency achievements using this strategy compared to
Raspberry Pi, Arduino, Max/MSP, etc:
[https://qmro.qmul.ac.uk/xmlui/bitstream/handle/123456789/124...](https://qmro.qmul.ac.uk/xmlui/bitstream/handle/123456789/12479/Moro%20Action-
Sound%20Latency%202016%20Submitted.pdf)

~~~
suraj
Thanks! This looks a really good starting point for a project I am working on.
Using PRU for I2S is genius :) Can you please point me to the detailed
specifications somewhere on [http://bela.io](http://bela.io)?

~~~
jarmitage
Cool! What are you working on? What kind of specification are you looking for?
Feel free to get in touch info@bela.io or forum.bela.io

------
MayeulC
Oh my. This looks perfect to replace the plethora of daughter boards I usually
have in my robotics projects: encoders, power boards for DC and servo motors,
I/O boards. This also looks clearly oriented towards drones, and seems to have
a lot of potential in that regard.

To be fair, I was also recently considering switching to other, more
integrated boards recently; but this one seems particularly well tailored to
my use case, at a decent price, and (perhaps more important in some regard)
open source.

I didn't read the full specification, the only thing I am worried about is the
maximum power draw (especially for DC motors). I also usually use 24V
PSU/batteries, but that's only a minimal inconvenience.

------
andmarios
The title is a bit misleading, this Beaglebone iteration is oriented towards
robotics mainly. It can do autopilot but not without external hardware (e.g
GPS). It does have hardware useful in robotics though that common autopilot
boards miss.

It is very interesting and the price point is good (about €80). A thing that
troubles me is that, with a very quick look, I couldn't find a nice
programming guide.

Recently I switched to Raspberry Pi 3 with a Navio2 HAT for an autopilot
project. Whilst the Navio2 hardware may be expensive and closed, their
software and documentation are top notch. They provide their own rasp pi
distro, with code examples for accessing all sensors and even expose some of
the hardware in sys-fs.

~~~
ajross
> They provide their own rasp pi distro

The story of why this world of "linux" machines is a disaster in seven words.
I'm sure this new BeagleBone is just a tarball flinger too.

~~~
joezydeco
TI (manufacturer of the core on the BeagleBone line) has much better Linux
support than the generic SoC makers out of Asia.

[https://git.ti.com/sitara-linux](https://git.ti.com/sitara-linux)

~~~
ajross
Literally the first repository in that list is their kernel: a 3.14.26 tree.
The 3.14 tree was tagged fully THREE YEARS ago. 3.14 is not a LTS release, and
its last patch version (.26) was released in December of 2014. It's likely
missing a bunch of important fixes that went into the 3.16 LTS tree since. I
don't see anywhere on that site where they're maintaining a more recent
"development" or "upstreaming" kernel either. They just have this one tree.

So given that, tell me what you think the likelihood is of these Sitara
changes ever reaching the mainline kernel tree? Zero? I'll put my money on
zero.

"Much better" than Rockchip or Allwinner maybe. Not "good".

~~~
ashtraywasp
it's supported by mainline kernel. it's probably the best supported cheap open
hardware of its sort out there. every datasheet for each chip on the
beaglebone black is freely available and it can run with no proprietary blobs,
unlike the raspberry pi. it's even supported by the *bsds.

~~~
ajross
Really? Genuine question. Is there a link where I can find someone's .config
for a current mainline kernel I can boot? I swear I'll buy one of these right
now if so.

Note that "no blobs" can't be completely right. I'm like 99% confident these
use PVR SGX graphics, for which there are no open drivers.

~~~
dhess
Yes. Robert Nelson maintains the kernel and various accoutrements for the
BeagleBone Line, and he is fantastic.

Start here:

[http://elinux.org/Beagleboard:BeagleBoneBlack_Debian](http://elinux.org/Beagleboard:BeagleBoneBlack_Debian)

------
Animats
Ah, a board with R/C PWM servo ports. That's a 1970s interface which should
have been replaced by now. There are servos with a bidirectional serial
interface, so you can ask what the actuator is doing, but they're
overpriced.[1] They're about 5x-10x as expensive as standard R/C servos.

There was an open source project, OpenServo, to do something about this, but
it was done by 2008 and seems to be dormant. [2] There's no multi-manufacturer
standard for servos above the dumb level.

Annoying things in low-end robotics: 1) motor controllers with significant
power handling cost too much, although this is improving, 2) encoders cost too
much, although they're simple and every mouse wheel has one, and 3) encoders
are usually fragile plastic add-ons to motors with strong metal cases, instead
of being integrated inside the motor case.

[1] [http://www.trossenrobotics.com/c/robotis-dynamixel-robot-
ser...](http://www.trossenrobotics.com/c/robotis-dynamixel-robot-servos.aspx)
[2] [https://openservo.org/](https://openservo.org/)

~~~
schreiaj
The core problem with the dynamixels is cost. I'm hesitant to use them in any
situation they could get trashed because they are so expensive. Add on that
they are harder to control and it's a recipe for a niche product.

Having used them I loved them, but they aren't a tool I reach for at first.
But now that you've brought them up I kind of want to use them for something.

But why this board has RC PWM Servo ports? Because it's a cheap easy way of
interfacing with things. More importantly, it let's you hook Brushed/Brushless
ESCs up fairly easily to get things moving with motors that draw more than 1
amp.

1) DC Brushed - Spark ESC [https://www.amazon.com/SPARK-Motor-Controller-REV-
Robotics/d...](https://www.amazon.com/SPARK-Motor-Controller-REV-
Robotics/dp/B0187YCAFI) (Disclaimer - I know the owner of Rev, he's a friend)
2) This is really a function of scale more than anything. But yes, they are
expensive. 3) With the advent of 3d printing it's at least manageable to put
something around them

But I agree with you that most of these are incredibly annoying.

~~~
VLM
Speaking of big motors and big torques its interesting to consider CNC machine
tool conversion technology ... Admittedly continuous use, industrial level
indestructibility and temperature levels means expense, but if you want 400+
oz=in of torque for a wheel perhaps, you could do worse than CNC controller
hardware perhaps driven by something other than CNC software. At some point
you have a 5 volt TTL interface thats as simple as direction and step. You'll
be spending maybe $200 per axle but you look at the price of 400+ oz-in servos
or gear motors plus drive circuitry and suddenly its not that bad. 1000+ oz-in
is not out of line for the larger machine tool conversions. Standard NEMA
motor mounts etc. You take 200 steps/rev stepper and add 10-step microstepping
driver like a geckodrive and theres 2000 steps/rev at 400+ oz/in with a simple
TTL interface for maybe $200 (plus power, and steppers are hungry beasts)

~~~
Teever
Could you provide a link to some of these $200 devices for reference?

~~~
VLM
Something like a geckodrive G251 single axis stepper driver for $89 good to
3.5 amps combined with a NEMA 23 stepper one of the lower current 1.8 amp
"long" types $48 on amazon for 340 oz/in torque. That's about $140. That's 68%
of budget for 85% of specified torque.

Its easy to find a NEMA 34 with over 600 Oz/in for $60 on amazon but it'll
probably draw 6 amps at 600 oz/in and you'll need a more expensive controller.
Something like a geckodrive G201X is rated to 7 amps at $127 which just barely
makes spec.

The worlds cheapest stepper paired with the worlds fanciest most
indestructible controller is probably unrealistic.

------
karmajunkie
Arrow is running a special—the BeagleBone Blue for ~$77 with free shipping and
a free raspberry pi 3. Just in case you were on the fence about picking on
up...

[https://www.arrow.com/en/products/bbblue/beagleboardorg](https://www.arrow.com/en/products/bbblue/beagleboardorg)

~~~
comboy
Argh, they won't accept my password with special characters, number, uppercase
letter and lower case letter, with error that "password must contain at least
one number, upper case letter and lower case letter". How stupid is that.

But good for me because I paused shopping to vent here and I realized I may
actually not need it that badly having enough MCUs at home already.

~~~
jameskegel
I'm not sure if this comment contributes to the discussion

~~~
danellis
Poor password policies are always worth pointing out.

~~~
_joel
1password deals with that quite nicely imho

------
acdha
How's the BeagleBone quality these days? I bailed a couple of years ago in the
Black era after fighting with the buggy serial hardware which required a full
power-cycle to recover from faults, and getting tired of the process needed to
upgrade the boot flash without bricking the system.

~~~
dhess
I have fried one or two, but it was my own fault each time. (Do not connect
the +5v from the barrel connector to the GPIO pins!)

I use a BB Black in an outdoor location and it runs 24/7 with no hitches, and
has been for months. It's in San Francisco and it's inside a control box, so
not the most extreme conditions, but it has survived all the recent wet
weather and hot days last summer with aplomb.

edit: I have flashed the firmware numerous times on several boards and have
never had an issue.

------
clayrichardson
I hope they fixed the Easter Egg that blows the CPU if you power up via VDD_5V
and plug the USB cable in.

~~~
clayrichardson
Sorry, order should be reversed: Power up via USB and connect VDD_5V.

------
jwr
What's really great about this board is the practical approach: integrate
things that people will need to build real-life robotics devices. A good
example: 2S LiPo charger, not obvious to do yourself, and required if your
project is supposed to move beyond your benchtop.

------
anujdeshpande
Beagleboard is part of GSoC '17 - so if anyone has any cool open source
project ideas using BB Blue, please do suggest at
[http://bbb.io/gsocideas](http://bbb.io/gsocideas)

------
gte525u
The page linked seems to indicate a cortex-M3 on there somewhere. I don't see
it in the OSD3358 docs or on the BOM. Anyone know if that's a mistake?

~~~
fnj
The main CPU is a Cortex-A8. In additions, there is a PRU-ICSS (Programmable
Real-Time Unit Industrial Communication Subsystem), which has two 32-bit RISC
cores. The latter can handle hard real-time intricacies without any latency
from the A8. It is what sets this board apart from the simple-minded Raspberry
Pi and other boards.

In practice, you can use the A8 as if the PRU is not there for 99% of what you
want to do. You can also get into programming the PRU itself, but this is very
much for the advanced user.

BTW, I don't see the PRU referred to anywhere else as "Cortex-M3".

[https://www.element14.com/community/community/designcenter/s...](https://www.element14.com/community/community/designcenter/single-
board-computers/next-gen_beaglebone/blog/2013/05/22/bbb--working-with-the-pru-
icssprussv2)

~~~
ajross
There are two lines in the spec summary. The PRU is one, a Cortex M3 is
another. It's not unliklely that the SoC indeed has both, intending the ARM
for use as a very low power, always-on sensor listener (e.g. the DSPs that
handle audio and sensor input on phones so they can wake up the main CPUs for
gesture or voice recognition).

~~~
fnj
Except the datasheet [0] does not list anywhere "Cortex-M3", nor reference any
ARM cores other than the Cortex-A8. So if it is there, they are keeping it a
deep secret.

[0] [http://octavosystems.com/octavosystems.com/wp-
content/upload...](http://octavosystems.com/octavosystems.com/wp-
content/uploads/2015/09/OSD335x-Datasheet.pdf)

~~~
mrob
It's used for power management, and it's listed in the full Technical
Reference Manual, page 1172:

[http://www.ti.com/lit/pdf/spruh73](http://www.ti.com/lit/pdf/spruh73)

~~~
smilekzs
What a surprising find! I would imagine Cortex-M3 (with 24 KiB RAM in total) a
huge overkill for just power management. And it totally escapes me why the
realtime co-processors are using a custom ISA solution rather than just using
Cortex-M0/3/4\. Would have been great to leverage the mature toolchain for
Cortex-M!

~~~
ajross
Power management on modern SoCs is actually really complicated. There are
dozens of power rails and clocks for different subsystems that all must be
brought up and down with controlled order and timing if the device is going to
work reliably. This kind of controller is routine on most "big" SoCs these
days.

~~~
smilekzs
Then how about Cortex-M0, instead of M3? Surely enough that can save quite a
bit of area, while still enjoying the good interrupt support of Cortex-M?

~~~
ajross
Presumably so they can share the workload with other tasks, like boot
verification or low power sensor listening. The M3/M4 are still very small
cores.

------
noir_lord
Business partner has been talking about building a CNC router, this thing is
basically _perfect_ for that.

------
_pmf_
Here's an idea: create a subscription service that signs me up for 20 USD per
month and gets me the latest hip boards in a reasonable time frame (I realize
that this specific board is outside of this price range).

~~~
trome
Your gonna end up with a bunch of Amlogic, Allwinner & Rockchip boards with
little to no software support unless you get a bunch of H3 based Allwinner
boards. Most of what is out there is nothing to write home about, the decent
stuff (eg. OrangePi PC) is either pure luck, or browbeating by the community
(OrangePi+ 2e) with the occasional vendor like FriendlyARM coming in using
SOCs that the community mainlined support for.

Then you have incompetent vendors like Olimex, Pine64, Next Thing Co (of
C.H.I.P., the "$9" SBC) that fuck up the hardware, software, or both, and
forget critical stuff like heat spreading copper layers in the SBC (Olimex),
misroute ethernet so it can't actually do a gigabit a sec (Pine64), or lie
about SOC software support and scramble to port the closed blobs that make
their board work forward (Next Thing Co).

~~~
buserror
You are bit hard on Olimex -- to be fair, they release hardware specs,
schematics and so on well in advance, and in true 'open hardware' form -- so
nothing stops you actually reviewing and/or fixing it if you get a chance!

I've used quite a few Olimex boards for pretty serious work project, often as
a prototype before we settle on a 'real' hardware to develop, and I've always
been very pleased with what I've got. Altho, I haven't bough any of their
'really fancy' boards lately.

Disclaimer: I was the one who rewrote and upstreamed the original Mini2440
'friendlyarm' board.

~~~
elijahparker
I'm a big fan of Olimex and have been impressed overall by the reliability of
their boards, and I really appreciate the openness of their hardware and
development process (e.g., you can check out eagle files for boards that
haven't event been released yet and provide feedback)

------
ritonlajoie
Does anyone has a list of websites reviewing all those kind of boards ?

------
technofiend
Now if only ¨they¨ would re-release R2D2 I´d have the perfect project board
for the perfect project bot. But at $500 plus I´m not to inclined to get the
sawzall and soldering iron out.

[https://www.amazon.com/gp/offer-
listing/B002KHN23S/ref=dp_ol...](https://www.amazon.com/gp/offer-
listing/B002KHN23S/ref=dp_olp_all_mbc?ie=UTF8&condition=all)

~~~
VLM
[https://astromech.net/](https://astromech.net/)

They're a little weird about joining before access is granted to see the
goodies and get involved in the group buys and so forth. I've been meaning to
get started on a styrene laser cut but... life, infinite number of things to
do, its warming up outside so I'm more motivated to daydream about my electric
bicycle conversion plans so maybe next winter, etc.

I don't see the point in spending $600 for anything but a 1:1 scale model, and
conveniently you're looking at "high three figures" for styrene unlike the $2K
or so for all aluminum. Also a lot of cost depends on insistence on perfection
delivered today vs "ah I'll put that detail on next winter" attitude. There's
a big cost difference between "I'm building a droid that looks like its in the
R2 family from 50 ft away" vs "I am making a droid that is so good that it
could be used in a hollywood movie as a prop if not main character"

------
lima
Sounds great for ArduPilot.

~~~
dharma1
How is ArduPilot going after the 3DR/Linux foundation drama?

~~~
anujdeshpande
Pretty good actually - [http://ardupilot.org](http://ardupilot.org)

Setup a proper organisation, with proper ways to handle commercial interests,
etc.

------
matt_wulfeck
> On-board 4GB 8-bit eMMC flash storage

Right here is the biggest benefit to these boards over say a raspberry pi. The
IO rate on an SD card is so pitiful. It's extremely slow to do anything other
than writing out logs.

Having 4GB of flash will help speed these little devices up a lot!

------
adityapatadia
Check this library if you want to interact with BB:
[https://github.com/theoctal/octalbonescript](https://github.com/theoctal/octalbonescript)

------
nojvek
This is awesome. Although for any modern robotics project you definitely need
a powerful gpu. What's the support on the board to hook up an external gpu?

~~~
eriknstr
Looking at the kinds of projects they have show on the page, it seems that a
GPU is not useful for most of those.

For the projects where you would benefit from a GPU, you could perhaps
commicate with a bigger computer that does the calculations? Too much latency
for some applications of course but not for others.

If your project really needs a GPU and it needs it on the device that is
controlling the robotics components, I think probably something other than the
BB Blue would be more appropriate.

------
sriram_sun
I just ordered 2 of these from Arrow and received a free RPi 3 as well!

------
TeMPOraL
The board photo seems to call it BeagleBonBlue. Ouch.

------
saycheese
[Comment removed.]

~~~
Orangeair
I think you commented on the wrong thread.

