Hacker News new | past | comments | ask | show | jobs | submit login
PocketBeagle – A $25 open-source USB-key-fob computer (beagleboard.org)
508 points by jarmitage on Sept 21, 2017 | hide | past | favorite | 197 comments

Hey, Erik Welsh from Octavo Systems here. We make the chip in the PocketBeagle (https://octavosystems.com/octavo_products/osd335x-sm/). Ask me anything.

Thanks for posting!

I'm curious about what motivated your design choice to use serial EEPROM instead of serial Flash? You could fit a 64 Mbit (2000x larger), 100 MHz (5x faster) Flash IC in the same package.

Downsides would be a few tens of microamps of standby power consumption (a rounding error given the other devices on the board/in the package), page-level erase and re-write (you have plenty of RAM to handle that hassle), and slightly reduced write endurance (but at a few hundred thousand cycles instead of a few thousand cycles, what applications would possibly notice the difference?).

The difference between 4kB (enough to store a serial number and a small bootloader) and 8 MB (large enough for small applications) is significant! The board could be half the size if it didn't need the uSD socket.

What is the EEPROM used for where Flash wouldn't be a better choice?

The design goal around the EEPROM was to have a small space for device and board configuration information. The EEPROM sits on I2C0 in order to maintain pin compatibility with the AM335x and so the data rates to access that memory are not terribly good. We are considering future products that would integrate larger non-volatile storage as well.

EEPROM allows you to write individual bytes. Flash requires you to write many bytes (~256) at once.

Some flash chips compensate by including a small amount of RAM to handle read-modify-write operations.

Flash doesn't always require writing many bytes at once, only erasing many bytes at once. Erasing means setting all the bits in a block to 1 (0xff). It's often possible to write individual bytes, although there's no way to switch a bit from 0 to 1 without erasing the whole block.

Technically correct... the best kind of correct? :)

It's actually a really useful characteristic to keep in mind. If you're writing logs, for example, writing the same block multiple times gives you:

* faster writes

* lower peak power consumption

* lower flash wear

* less chance of data corruption should power fail mid-write

Hi Erik - why are the SIPs ~ $30-40 in quantity on DigiKey while the PocketBeagle is only $25?

We're currently using Olimex's Am3352-SOM module in a product, and the Octavo SIP makes it simple enough to do a board down instead of a module... if only the SIPs were cheaper.

The pricing shown on Digikey and Mouser is only up to 100 units, i.e. small volumes. If you would like to discuss pricing for larger quantities, please contact sales@octavosystems.com

One other thing that I will mention is that the 21mm x 21mm form factor of the OSD335x-SM enables designs that would not be possible with other SOMs or discrete components since is 60% smaller than a discrete implementation.

Well, it's $43.73 for one SIP on DigiKey, yet I can buy the PocketBeagle for $25? For comparison the CHIP-Pro embeddable module is $16 (and does lots more).

Erik stated: "ask me anything", but maybe he didn't see this post?

What's the situation with control of TrustZone on this chip? In particular, are there any manufacturer-fused keys, and are there any user-fusable signing keys?

Unfortunately, the AM335x in the OSD335x-SM is general purpose only (i.e. only the non-secure side of the processor is exposed). In our development board (https://octavosystems.com/octavo_products/osd3358-sm-red/) for the OSD335x-SM, we have added a TPM and Secure NOR to allow customers to perform secure boot and have secure key storage. Please contact us (https://octavosystems.com/contact/) if you have any questions about this.

What's the deets on the Cortex-M3? Is that accessible to the end user, or is that blackboxed and NDA'd? (Cough cough, IPM... >_>!)

How's this stock up to the BBB as far as power usage goes?

What's the supply chain look like for your silicon? Planning to maintain stock at the distributors?

Any plans for a non/through hole? Exposing the ethernet and MDIO pin headers for another SD card would be awesome. (Props for putting USB on the headers, and keeping the underside empty!)

Edit: Looks like you're planning more on using this as a demo-board for your chip. Does powering the chip from the LiPo handle the RTC, so I can stop dropping a DS1307 onboard? ;)

The Cortex-M3 is for power management. You can find details from TI (http://processors.wiki.ti.com/index.php/Debugging_AM335x_Sus... http://processors.wiki.ti.com/index.php/AM335x_Linux_Power_M...).

The OSD335x-SM uses the same power management solution as the BBB. The chip itself will consume less power than the BBB since it doesn't have all the additional peripherals.

We currently have stock as DigiKey and Mouser and will maintain stock. If you have additional questions on supply, feel free to contact us (https://octavosystems.com/contact/)

We do have other development boards for this processor (https://octavosystems.com/octavo_products/osd3358-sm-red/) more expensive, but more features.

There are still some issues around RTC. The PMIC that we use (TPS65217C) doesn't support RTC-only mode, so unfortunately, you will still probably want to use the discrete RTC to get the standby time you need.

> you will still probably want to use the discrete RTC


Thanks for the responses Eric!

Do you have example source code (to borrow a term from Stack Overflow -- Minimal Complete Verifiable Examples) for all of the features that the chip provides?

I've worked with the larger version of this in the past (Beaglebone Black). I really think the two 2 200MHz PRUs [1] are very neat, allowing some nice realtime applications with a standard *nix distribution. They can run without the main CPU, and even wake the main CPU, for lower power tasks. You can access the PRU memory directly with mmap, and the PRU access to system memory space.

I used them to bit-bang MDIO (used by ethernet PHYs) and JTAG for debugging and burning fuses (strict timing requirements) in an IC.

It's cheap, easy to use, with good support, and much less of a barrier than an FPGA+ARM solution.

[1] http://elinux.org/images/d/da/Am335xPruReferenceGuide.pdf (page 14 for block diagram)

The OSD335x-SM contains an AM335x processor from Texas Instruments. This processor has a well established customer base and was used on the BeagleBone Black. Depending on what you want to do, there should be an example (both bare-metal and linux) for what you are trying to do. Feel free to contact us (https://octavosystems.com/contact/) if you have any specific questions.

I'm confused, 335X was designed and made by TI many years ago, is it outsourced to octavo now?

also wish it had some sort of networking option, e.g. esp8266 or wifi/BLE, kind of a standard need these days.

The AM335x processor is still made by TI. We are able to get silicon wafers from TI and then package them together with DDR, power management and passives into a single BGA device that you can use. This makes design and manufacturing of custom embedded hardware easier and faster.

then you should say you are a SiP(system-in-package) maker, not a chip maker? the difference is huge.

> We are able to get silicon wafers from TI and then package them...

Wow. I've started to become mildly interested in chip manufacturing tech, and the fact that you can do that is really amazing. I'm very curious how this actually works!

What's the compatibility like for existing BBB capes? Assuming one does a quick pin-conversion daughterboard to convert the PB pinout to the same dimensions as the BBB.

Also is the U-Boot/Linux source between the PB and BBB the same? Namely due to the Octavo being more of a complete solution than the AM3358/PMIC/EEPROM setup the BBB has

I made priority of choosing pins not used by LCD or eMMC on BeagleBone Black so that many capes not reassigning those pins could be adapted. The pinout was also done to work with a large number of existing breakout boards.

The EEPROM identifier requires a small update to the bootloader and device tree.

What are the primary uses you see for this device? Any interesting projects out there already that you're aware of?

Home / Building / Industrial automation, IoT, Motor control, i.e. anything that would use an AM335x processor / BeagleBone Black. There are a number of cool projects that have been done with BeagleBone Blue (https://beagleboard.org/blue) that uses another of our products and there will be a lot of interesting projects coming around this device and PocketBeagle.

Hi Erik, The JTAG pads looks a little different from usual JTAG pads for previous BeagleBone series. Is there cables or connectors that I can connect those pads?

I also noticed that the OSD335x-SM has got a EEPROM, which previous OSD335x module doesn't have. So basically OSD335x-SM is just a smaller and slightly better module than the previous one?

Yes. Unfortunately, with the form factor of the PocketBeagle, it was not able to use a standard JTAG connector footprint. I do not know of any standard cables or connectors to connect to those pads. I would also ask on the BeagleBoard forums.

Yes. The OSD335x-SM is a smaller and more optimized module than the original OSD335x. Based on customer feedback from the OSD335x, we optimized the pin out to ease routing and reduced the size to enable more space constrained applications (The OSD335x-SM is 60% smaller than a discrete implementation: https://octavosystems.com/2017/08/30/smaller-cheaper-pcbs/)

Thanks Erik.

How stable is the current chip design? I.e. will it be around for quite some time now?

Are you planning on letting clients customise the internal layout at some point?

What are your long-term goals and plans (that you can disclose)?

We plan to support our chip longer than TI supports the AM335x (the processor inside the OSD335x-SM).

This is just the second device in what we see is a large space for System-in-Package devices. Please contact us (https://octavosystems.com/contact/) if you would like to discuss plans and goals in more detail.

I love that this has the PMU built-in. When running on battery, whats the approximate minimum power consumption this can achieve (gpu disabled, processor active)?

You can see the power application note for the OSD335x at:



the power consumption numbers for the OSD335x-SM will be similar.

What is a "zero-depth pipeline" (from https://github.com/beagleboard/pocketbeagle/wiki/FAQ)? That's a CPU which isn't pipelined, like the 80386, or something else?

Yes. The "zero-depth pipeline" is in relation to the Programmable Real-Time Units (PRUs) that are part of the AM335x. The PRUs are separate CPUs from the Cortex A8 that allow the AM335x inside the OSD335x-SM to perform real-time, low-latency operations, like industrial or motor control.

FLOSS graphics driver?

The AM335x inside the OSD335x uses an SGX hardware core. You can see more details: https://eewiki.net/display/linuxonarm/BeagleBone+Black#Beagl...

So the answer is "no", since it depends on the blobs from TI. That's too bad.

The SGX is an accelerator. You can run 2D graphics fine with the omapdrm driver from kernel.org. At least, that's how it is on the AM437x.

The AM335x has the same SGX accelerator as the AM437x so it has the same 2D/3D basic behavior. For more information on the software architecture see: http://processors.wiki.ti.com/index.php/Processor_Linux_SDK_...

Is this conceptually similar to mixing a Raspberry Pi Zero with a Teensy? Or, to be more abstract and less specifically wrong, it's a general purpose computer that also has microcontrollers (which, for my interest, happen to be similar to those in the Teensy)?

More or less. The AM335x SoC that is inside the OSD335x has a number of smaller, more specialized CPUs in addition to the main Cortex A8 CPU. This allows you to off-load smaller, real-time tasks. There are some other good comments in this thread about using the PRUs.

> board for beginners professionals alike.

might want to notify your customer they have a typo in the first paragraph of their website

Could you post some power usage stats? I don't see any on the website.

We have not posted any power application notes for the OSD335x-SM, but the power application notes from the OSD335x will be similar:

https://octavosystems.com/app_notes/osd335x-power-applicatio... https://octavosystems.com/app_notes/osd335x-software-control...

Do you have plans to eventually make something more pro-sumer oriented? I love all of these small board projects, but feel there is a woefully underserved market in the "it could be a desktop replacement" category.

I think this product, a development board for industrial application developers, is already pro-sumer oriented product. Pro-sumer product does not always mean latest and high-performance hardwares. These kinds of things never look at a desktop replacement.

Module, you are packaging a module from off the shelf parts.

Can someone please just hook up something like this to a portable monitor and keyboard, put it in a nice sleek chassis, and add a massive battery? Something running at a low clock speed with a modern build good enough to run emacs, ssh, but with the added benefit of being light and having 20+ hours battery.

The best portable monitors I know of (and I have an entire collection of 22-ish full HD monitors in search of the Holy Grail which is a carry on sized full HD monitor as large as possible but they don't make cheap thin 19-20 full HD monitors) are the top half of this shop https://shop57714512.world.taobao.com/ Use Superbuy as your taobao proxy. These are tripod mountable full HD IPS monitors with a CNC machined case and a driver board. Very basic but has all you need. If you prefer aliexpress, https://www.aliexpress.com/item/1920-1080-17-3-inch-IPS-Disp... and https://www.aliexpress.com/item/2ms-15-6-inch-1920x1080-IPS-... and so on seems to be the same thing.

Another solution is https://www.packedpixels.com/ but the size is not so great.

I currently carry a Sharp LL-S201A which is slightly larger than the above ones -- I got a great deal off eBay for once. If I didn't then probably I'd get one of the 17" ones above -- the Sharp needs a VESA mount which makes things unwieldly.

Ps. packedpixels are small but their height of 240mm closely matches the height of the ThinkPad 25/T470 of 232.5mm . An USB C to dual DisplayPort MST hub and a charger like https://smile.amazon.com/Charger-Premium-MacBook-Convert-Tos... could provide for two of those on both sides of the display (45W for laptop, 15W for the displays, you could even charge your phone while at it). It's an option.

Wow those are some nice prices, thanks for the links!

If you want a low-end ARM laptop, buy a low-end ARM laptop.[1]

[1] https://www.pine64.org/?page_id=3707

Wow that is an incredible price. Comparing that to the OLPC XO[1] just shows how far tech has come in the last 10 years.

[1] https://en.wikipedia.org/wiki/OLPC_XO

I feel that if you want to buy a "disposable" laptop might as well put 60$ more in it and buy one of the cheap ASUS laptop, you'll get an infinitely better build quality (for the price range), x86 and better distro compatibility.

Very neat! Thanks for sharing

Looking more closely, is that thing for real? It started as a Kickstarter. The site says "Note: PINEBOOK next shipment date will be on August 25th, 2017. Ship from Hong Kong." and "We will fulfill the BTO queue based on first come first served basis and starting on 28 March 2017. Our sales team will email when it is your turn in the queue." Not good, considering they announced in 2015. Is there a real product like this, as in "you order it and it shows up without any nonsense?"

The Pine A64 board was a 2015 Kickstarter. The Pinebook was announced November 2016, and apparently starting shipping last April. The "you order it" step sounds a little convoluted, though. You sign up to their waiting list, and when they've got a production slot for you, they ask for Paypal information, your address, etc. You'll apparently receive the device a short time after the production date.

I ordered a PINE64 and IoT stamp on June 10th and received it on June 24th. YMMV, but they seem fine.

That's just a board. Anybody can get boards made easily. What about the laptop?

I own the 14" Pinebook. I don't recommend it. Almost all of the distribution images with support for the device is done by a single guy[1], and the keyboard is terrible at registering key presses. This is a known issue[2], but there's no support or warranty on the device so if you buy it before it's fixed, you're out of luck.

Besides that, the quality and the feel of the device is pretty nice.

I bought it because I figured it'd be a decent netbook to break out when there's a network issue or that I could use it for IRC or programming while traveling. Instead it's just collecting dust.

[1] https://github.com/ayufan-pine64 [2] https://forum.pine64.org/showthread.php?tid=4729

11.6" Pinebook owner here. This version doesn't have the keyboard issue, but they've had trouble sourcing the screens, so it can take ages before the 11.6'' is produced and shipped. I was lucky to order it not long after it was announced.

And yeah, it's mainly Ayufan busting his butt with all of the pinebook distros, with a little help from two or three others. But he's pretty much hammered out all the issues that Ubuntu had upon the pinebook's initial release, and he's active on the Pine64 IRC if you ever run into any issues.

I run xenial ubuntu with i3wm, and it's fine for on-the-go programming. I've been using it to learn Common Lisp at coffee shops. Don't bother if you're a React/Angular/Vue etc developer; the build tools will take too long for it to be productive. I'm not even sure if it can handle ruby sass, for scss scripts.

So yeah, it's great if you want to tinker with a cheap ARM notebook. But not great as a daily driver, or any complicated dev work.

From what I have read they have a very slow queue so I don’t imagine they’re over committing.

And frankly the rest of the laptop is not very complicated.

Thanks for the link I've never heard of these before!

There's the pinebook which is the laptop version of what you are describing https://www.pine64.org/?page_id=3707

How's the battery on the pinebook?

According to that page it has a 10000 mAh battery, and according to this [1] review it lasts about six hours.

[1] https://hackaday.com/2017/04/28/hands-on-with-the-pinebook/

eh.. Why do manufacturers speak mAh instead of watts??

people get very annoyed when they know what that really means. Say for example, every power bank available says 10,000 mAh, or 20,000 mAh (or whatever), but all those are at 3.6 volts (not at 5 volts). As most of the other specs is in 5 volts, most people don't even know this.

> eh.. Why do manufacturers speak mAh instead of watts??

Neither amp-hours nor watts measure energy. Watts measure power, which is irrelevant for a laptop battery, and amp-hours measure nothing unless you know the battery voltage.

The spec for a battery should be in joules or watt-hours.

Enough with the watt-hours already! Let's all just measure batteries using Joules, we have a unit specifically for quantities of electrical energy.

A watt-hour is 3600 Joules, which is not a nice round number, but it's fairly easy to remember. At least they're both proper units of energy.

My thinkpad battery holds 5e23 eV of energy.

Both because using mAh in consumer electronics became common with NiCd and NiMH cells before they broke the 1A limit, and today because it allows writing a bigger number on ads.

This is basically what I did with my Acer netbook for a few years. I threw Arch Linux on it and used it through most of college.

With the largest battery I could find for it, it easily got at least 10 hours, IIRC. I don't believe it approached 20 hours, but this was also about 7-8 years ago.

I don't remember the exact model (it was one of the later ones they made, I believe). I have it around here somewhere if you really want to know which one it was.

The worst part about it was the screen resolution. It was something like 1024x600. There were a few applications and light games that assumed your screen was at least 768 pixels tall (Photoshop CS2, for example, which otherwise worked perfectly in WINE).

For something a bit more modern, I'm continually intrigued by the GPD Pocket Mini Laptop [1].

[1] https://www.gearbest.com/tablet-pcs/pp_613003.html?lkid=1106...

I don't think the battery life was there, but people used to be really into turning Motorola Lapdocks, originally intended for their Atrix phones, into Raspberry Pi machines.

A Chromebook might be able to do what you require for 9-10 hours, with a little tweaking.

I have a Baytrail based Chromebook running GalliumOS (Ubuntu + XFCE) that is good for about 10 hours of usage (in an 11 inch form factor, a larger laptop could accommodate a larger battery). Apollo Lake is rolling out now and should be even better (~30% performance increase should lead to more time idling with the same workload). I'd expect firmware/software support for running generic Linux on it in 6 months or so.

Probably wont hit 20 hours, but I could imagine 12-14, which is pretty respectable.

I would like one of these. I spend most of my time on ssh and maybe one or two webpages.

I want to embed something like this into a nice mechanical keyboard, with some way of hooking up to a display (possibly an Android tablet or something head-mounted). Finally, ultra portable computing with a decent keyboard!

You may be interested in the Pocket CHIP, it's pretty much what you asked for minus the sleek case, and I don't think the battery lasts quite that long (but it's open source and hackable so you can add your own if you want):


Sounds a lot like a phone

Flash Ubuntu Touch onto a phone, and tape on a bluetooth mini keyboard.

isn't the screen the biggest consumer of power for any laptop nowadays? I wonder what's the theoretical maximum battery life you could get out of this sort of setup if you had (say) the current macbook pro battery but the beagleboard

Probably not, considering that some CPUs in laptops go past 20 or 30 Watts. Most displays don't reach that power usage.

google chromebook. you can run android, & get various tools like ssh natively, and then you can do many more things with android tools. turn on dev mode and you can run linux in the environment too. You can buy a laptop for $300, get either an intel or arm cpu, it all just works.

Wouldn't an iPad with the keyboard cover and ssh client app meet these requirements?

I so want "iPad Pro + SSH client + keyboard cover + gcloud/aws box" to work for my needs, but I have yet to find a solution that allows ESC/Meta and all the common control keys to work seamlessly within Emacs in a way that doesn't confound my decades of traditional and laptop keyboard muscle memory.

If anyone has definitively solved this problem, I would love to hear about it. I've dropped 50+ USD on apps trying to make this happen.

I tried this too, but there appears to be no way to swap caps and control. This is simple on macOS and Linux and something I am so used to that I can't really work without it, especially in emacs.

Get a full sized regular bluetooth KB to attach to the ipad pro...

Stupid question. Can I install linux on an iPad?


Yeah! You could buy a discarded shell from some existing device, like a broken Chromebook.

Yes, that's how I typically do workshops is with Chromebooks.

IMO chromebooks are far too tiny

I just bought an Acer Chromebook 14, haven't used it much yet but it seems just large enough. At least it has full 1920x1080 resolution.

Many are, but some have reasonable sized keyboards. I prefer some of the older models.

Yay, another cheap mini computer I could buy to eventually put it in the drawer to the others!

More seriously, it's amazing to see Linux running on such small devices. I wonder what its niche is, though. What can you solve with this PocketBeagle where an Arduino would not suffice, while causing less support overhead later? Keeping a Linux distribution/installation up-to-date and free of security holes requires regular maintenance, while a standalone microcontroller program has the minimal attack surface.

Arduino is great for artists and hobbyists or just testing out something simple. It does this by having a great IDE and library collection that maintains awesome compatibility across the board. They can be a big problem if you intend to produce a final embedded product though. Nothing you build will translate.

Something like the Beagle is going to give you a much better toolset to expand on as you grow. Also with the power in the PocketBeagle situations where you'd need near real time, like management of audio. Is actually available. Not that you can't get Arduino compatible systems that can provide the tooling (STM32 or Teensy), you need to really know where you're going to end up and your level of commitment.

You are 100% right about the drawer thing though. I've got several drawers. But the thing with embedded is there isn't a magic bullet, so you gotta stock the drawer if you want to fiddle. Either that or KiCAD/Altium and plan your bespoke system from the get go.

My tactic with hardware projects is to never pretend like it's going to be a money maker. It's always play. People loose fortunes on hardware. But man, I've got crap to build my own shitty LTE cell phone in a drawer right now. It'll be terrible and a fire hazard but the future we live in is awesome thanks to the inexpensive dev board proliferation.

> Octavo Systems OSD3358 1GHz ARM® Cortex-A8

Hey, that's interesting. Never heard of this chip (or Octavo[1]) before! Is anyone from Octavo around? If so, are you guys involved with PocketBeagle? Is it your vehicle to show off the OSD335x? Are you involved with this board at all? What're the plans? It looks like this is still using the AM335x under the covers (in-package). How does that work? You're sourcing the unpackaged silicon from TI and packaging everything up yourselves, or you have a deal with TI where that's happening at their facilities, or...?

Previously: https://news.ycombinator.com/item?id=11662508

1. https://octavosystems.com/about/octavo/

Yes. We are also used in BeagleBone Black Wireless (https://beagleboard.org/black-wireless) and BeagleBone Blue (https://beagleboard.org/blue). A lot of us are ex-TIers and have been working with BeagleBoard.org for a long time. This is one of the vehicles to show of the OSD335x-SM, but we also have our own development board that we just released (https://octavosystems.com/octavo_products/osd3358-sm-red/).

Our company does "System-In-Package" which means we integrate bare die, packaged parts and passives on a substrate and then package it up so that it looks like a single BGA from a design / manufacturing standpoint. We source wafers from TI and package everything ourselves. Please feel free to visit the website and look around and let us know if you have any other questions.

I've been doing research on such things for purposes of addressing hardware subversion in supply chain. What kind of equipment and vendor do you use for packaging bare dies? And what's the current cost of such equipment? Thanks ahead of time.

Please contact us directly (https://octavosystems.com/contact/) if you would like to discuss this more.

> Openness and flexibility tear-down limits on your imagination

I'll take ten.

In all seriousness, how do developers feel about this compared to larger communities around products like the Raspberry Pi? I've learned to follow the crowd when I'm using products for the best support.

The Beaglebones, including this one, use the AM335X chip, which includes two PRU units on die. These are microcontrollers that have access to the same memory as the main ARM cores, and an API to share data.

This allows for real-time-ish use cases that the Raspberry PI can't handle well. Low latency audio, driving large LED matrix boards, high speed input sampling, etc.

So it's not quite the same market. $25 in this space is rock bottom pricing.

> jarmitage: if you're interested in making ultra low latency (as low as 80us) embedded musical instruments, check out Bela http://bela.io

> tyingq: The pair of PRUs in the Beaglebone black is a large part of it.

source: https://news.ycombinator.com/item?id=15121720 (Aug 2017)

CNC machining and 3D printing is one use case where Beaglebones are very common.

This LinuxCNC fork supports it natively: http://www.machinekit.io/

I started using the BB Black when it was first introduced and am quite surprised it didn't become more popular. At the time, the alternative was the RPi, and the BBB was way faster and had dedicated Ethernet (something the RPi still doesn't have -- its Ethernet controller hangs off the USB bus).

To answer the question though, honestly I'm not sure how you can go wrong with it being a smaller community. You can largely take advice about the RPi and apply it to the BBB (or the PB, in this case). The hardware and software is all roughly similar, after all.

It was more expensive and less heavily marketed as an educational device. And the BBB is much less focused on graphics; a huge part of the Pi community is focused solely on media centers and retro gaming emulation.

I got burned pretty badly (in time, not money since it was ultra cheap) on the Onion Omega2 fiasco. The thing was released when it was alphaware, and all the support documentation was for the previous machine.

It's matured a lot in the last few months, but that first half year was very rough. It took two or three firmware releases to even make it stable, and it's still a bugfest. (Can the support web site even work on iPhones yet? It used to be Windows+Chrome only.)

Because of that, my next foray into ultra-low-cost computing will be Raspberry Pi. At least I know it's an established product and because of that it probably has a good community and documentation.

"Good documentation" might be a bit of an overstatement. The second you get off the beaten path with a Raspberry Pi, things can get pretty hellish. Try bare metal C on just the second rendition, and weep before the non-existent documentation for the SoC they used. The official response to this issue (to paraphrase) was "it's fairly close to the previous version; you can figure it out." I don't want to know what sort of suffering you would have to go through trying to do bare-metal programming on an RPi 3.

There's at least a forum section dedicated to it, with a few posts containing collections of resources: https://www.raspberrypi.org/forums/viewforum.php?f=72

That doesn't change the fact that the documentation you need isn't there, and that they have no plans to provide it. Can you figure it out? Sure. Am I going to pull my hair out doing trial and error trying to figure out the GPIO pinout for an SoC that they have no interest in providing documentation for when I can just buy a product with better documentation? Of course not.

This is a new product from an established company. The original Beaglebone was released in 2008, 4 years before the original Raspberry Pi, and is far better supported from a technical perspective (meaning PCBs and spec sheets, and not umpteen unanswered forum posts about the same issue with the blind leading the blind).

BeagleBoard is fairly well established. The BeagleBone Black was one of the most popular boards by survey on hackerboards.com—even a couple years after the then-latest revision (2014)—second only to RasPi products, which were undercutting BBB on price.

Beagle has a pretty large community. They've been around longer than the Raspberry Pi. The RPi because of it's super low cost has proliferated greatly and enabled people to get in and try out stuff they wouldn't be able to before. Which has always been their goal, to build an educational tool.

If you are just fiddling around and mostly are looking to have something that's a lot like your linux experience. Either will work and it might be easier to find a specific github project for what you're doing on the RPi, but that is barely my usual experience. Even something like running a MAME cab on an RPi3, you'll get set up quick with RetroPi, but some things you might want to play won't hack it on the little CPU in there.

Any one of these is a great entry point, but it is definitely advisable to jump into your new project by seeing what people are using and picking the board. If your idea is even slightly left of mainstream you'll probably test out quite a few. More than likely, if you didn't have EE skills before you start, you'll hit some hard walls with esoteric choices like SPI vs I2C, or the best way to do wireless communication and not gobble your battery.

Long and short, embedded projects don't quite silo like software. You might start out thinking about your Pi like buying a netbook, then four years later you're doing embedded C on a 16-bit proc to get where you're going. Even just a few years ago this would be totally inaccessible to anyone without very specific experience (usually a degree). Now for a dollar, anyone can fiddle and grow an idea and the tools have become amazing! But just because it runs an ubuntu flavor and has a familiar window manager, doesn't mean people didn't make real specific choices to get it into that tiny package and you'll have to figure out what you really need as you go.


Another thing I am curious about is why is there such a price difference? RPiZ - $5 PB - $25


I think the RPi CPU's are significantly less costly, and of course have higher volume production runs. Traditionally, the chips used in RPi have difficult-to-obtain low level documentation and therefore binary blobs for drivers. RPi foundation is willing to make that trade-off in favor of cost. The Beagle ecosystem has from the beginning been more of a traditional reference design "please buy our chips for your personalized version" sort of board.

yeah rpis are leftovers from old massproduced chips.. plus they lack lots of features

The Pi Zero can be extremely hard to find at $5 depending on where you live, though. Ditto for the Zero W at $10.

They're pretty awesome, but every time I go looking for one it takes a few days. Still, it is sort of fun. Like hunting for a newly-launched console.

Microcenter but they were doing a '1 per customer' thing for a while.

There aren't many MicroCenters around, and they still do an escalating price scale. $10 for 1, $15 apiece for 2-5, $20 apiece after that.

I wonder if these are sold at Microcenter. They're about 15-20 miles from one here in Michigan, although it's not like that particular store is their Headquarters or anything.

It is a shame there aren't more MicroCenter stores around, although I'm not sure really how they stay in business. It was logical that computing equipment would make the switch to being purchased primarily online[0]. Somehow MicroCenter competes well on price and very well on selection. That place is like a retail NewEgg, carrying all kinds of very specialized things. They've got everything from water cooling rigs (multiple brands), to oddities like shrink tubing, development boards, 3D printing supplies and every kind of upgrade for PCs you can think of. It's a place I avoid when I don't have an hour to sit around and a reasonable budget because I always leave there with more than I intended on purchasing but it's so nice that when I need an adapter to plug my one power supply cord into my two ports on my new graphics adapter, I can drive up the road.

Small tangent, yeah, but this product would fit really well over there.

[0] While I'm sure Apple stores do OK and full PCs probably sell OK in larger electronics chains, none of those chains carry anything resembling a reasonable selection of pieces/parts.

Their website lists some kind of Beagleboard starter kit.

Micro Center is where I went last time I built a desktop, last time I upgraded it, last time I bought boxed software, last few times I bought Raspberry Pis or components for them. And they're usually pretty full of other people doing the same. It used to be on my way home from work, and I'd stop in a few times a week just to browse.

It's about 20 minutes away, but I think I'd really rather go there than buy something online, if I have the time. And I imagine that's how they stay in business.

As far as I can suppose (although I don't actually have a source), RPiZ is sold at a loss and is made in much larger quantities than its competitors.

I would be surprised if PocketBeagle isn't also sold at a loss, although at a different scale.

Anyone else got thoughts/evidence on this?

It is definitely not sold at a loss. No maximum to the order quantity, just lead time if it is more than inventory.

Neither company is large enough to sell at a loss (where would they get the money?), although the Pi is very close to selling at marginal cost.

Lots of discussion about that here: https://news.ycombinator.com/item?id=10631668

I’ve become a huge fan of the NanoPi Neo series. The lower end models are < $10 and still moderately powerful, besides being quite a lot smaller than the Raspberry Pi’s

Check out the OrangePi Zero series too. They're comparable to the NanoPi Neo and NanoPi Neo Air in size and features, but seem to land in mainline u-boot and Linux a bit more quickly.

Slightly more recent, smaller (pi zero like form) http://wiki.friendlyarm.com/wiki/index.php/NanoPi_Duo

something like 9$ (shipping included)

I just got my NanoPi Duo and it’s pretty cool. With WiFi and its form factor it’s very useful.

Though I kind of wish it used an H5; I can’t imagine it costs much more but it’s a much better SoC.

Can anyone share good sites or resources for a frequent 'technology-watch' of the latest embedded hardware platforms and platform developers such as this? I do a quick scan of the various embedded hardware brand websites (RPi, BB, Gumstix, etc.) every few months but I'd like to be more ahead of the curve.

Some interesting products appear on CNXSoft:


Filter for single board computers on Digi-Key's new product page: https://www.digikey.com/en/product-highlight?f=1832277859

http://linuxgizmos.com/ is usually pretty good.

Really wish the Beaglebone products had as much attention as the RPi stuff has.

Could one use this to make an open-source cryptocurrency hardware wallet?

I haven't looked into the requirements or the specs on either side so I'm just asking very naively. The $25 price point just seems better than the $100+ for the typical cryptoasset hardware wallet.

I asked the same question here when this went up but I haven't heard anything from anyone. I have a feeling as Bitcoin goes more and more mainstream wallets will get cheaper. It's pretty ridiculous to expect people to pay $50-100 for a single wallet that could easily be lost. Especially when hardware is getting so cheap, there is no excuse for the prices. Either an open source alternative will bring the price down or competition but right now I think the answer to our question is unfortunately, no.

The source and schematics for are available for Trezors.

Beautiful. Can’t wait to get Nerves running on one (or several)!

I saw an Android that was like this at one point. It acted like a drive for the host computer, and had on it VNC software.

So you installed the VNC software on the host computer, and then you ran it, and you were seeing the Android running in the fob.

I thought that was super clever.

Anyone have any links to devices like that? I'd think a Chromebox or an Android like this might be very nice.

I suppose Chromebits are pretty dang close.

Using VNC is a legitimate way to develop for this, but mostly it is done through web browsers (Cloud9 IDE) and direct ssh.

I just wish they'd stuck an ESP8266 on there as well. They're dirt cheap and having built in wifi would be killer.

Oh god with Wifi this thing would be terrifying for hackers - just add a wallwart and shove it into an available electrical socket at an office building and you've got something that can sniff forever.

Can't a RPi Zero W already be used like that? And it's cheaper than this.

Yes, anyone interested in doing that already has oodles of options today. Adding one more wouldn't be a meaningful change.

Pinout compatible with something like https://shop.mikroe.com/wifi-esp-click

Wow, I didn't realize that there was no wifi on this thing.. that's a deal breaker for me.

Then go with the Beaglebone Black Wireless


exactly, not sure why it is missed, if there is network i will get one for sure, without network, no plan to buy it.

Check out the vocore2

> open source

> 3D accelerator


> precompiled libraries providing OpenGL/OpenVG functionality

Does it have an HDMI connector? The description is extremely poor.

It does not have HDMI. Displays would typically be done with SPI breakout boards like from Sparkfun and Adafruit. You could also do a display via USB to VGA/HDMI.

Sort of tangential, but why does everyone prefer the SPI interfaces on those little TFT screens? They support parallel ones with 8 and 16-bit buses.

I'd guess pin-count and driver availability. SPI has pretty well-established kernel drivers with usermode access. Using the parallel busses is either going to involve driving a ton of GPIOs or trying to map some kind of parallel peripheral into driving each screen.

I guess that's a good point; I've been looking into some small TFTs with hand-solderable MCUs that fall short of application processors like this, but still run at ~50-200MHz. Not quite the same ballpark.

Still, on those, it's still only 13 pins for an 8-bit parallel bus (which I think can still do 16-bit color,) rd/wr/dat-cmd/chip_en/reset, and the chip_en/reset pins are probably optional. And while they do tend to have a few hardware SPI peripherals, some of them also have flexible memory controllers which can rapidly pipeline data over a customizable interface designed for use with a variety of RAM/storage/etc banks. But I think it will probably work since TFT interfaces are essentially writing to a framebuffer. And BGA packages usually have like twice as many 'pins,' but to be fair 'real computers' do also require a lot more I/O than microcontrollers.

See [pdf]: http://www.st.com/content/ccc/resource/technical/document/ap...

Yeah, when I said that I was thinking of the WEIM in the iMX6 chips, which I'm pretty sure could be persuaded to talk to a little TFT. The tricky part, once you've got the electrical bits figured out, is getting the memory peripheral (WEIM or FSMC or whatever) talking to the screen, and then putting together whatever glue of a driver to get from userland to the hardware. And then hoping that it generalizes to another screen, or putting in whatever effort is necessary to port it to another screen.

It's a pain in the butt compared to just opening /dev/spi0 or whatever and writing a few bytes to it. Don't get me wrong, I'd love to have a great library of cheap OLED screens that could talk to an RPI/BBB in a high refresh rate way, but for the majority of my own projects I'll just take whatever cheap SPI screen I can find and use that.

The beaglebone black or green would be a more practical portable computer. It has usb ports, hmdi out and supports debian and ubuntu. This looks like a shrunk down version of the black but missing the convenience of hdmi out and usb ports

Agreed....this is not at all what I pictured based on the term "USB-key-fob computer".

This reminds me of the USB Armory. https://inversepath.com/usbarmory

cute one

Interesting, looks like there's no ethernet pinout on the headers. But there is a USB connector!

And USB on the headers, making it easy to build a board with a hub or whatever, including USB WiFi modules.

Yeah. Through hole is gonna be a bit of a pain still, which makes me sad... but it would be too difficult to market to smaller players if it was card edge, for example.

It's nice that it's tiny, but you have to attach it to something else to do anything. I'd suggest providing the connectors, not just the holes, and providing mounting holes. Why make the Arduino crowd solder?

I don't know if the software distribution on this will be anything like the beagle bone black , but if it is, be careful plugging into a public network! Besides the default password, arbitrary programs may be executed via a web client. At least new versions of the beagle bone software distribution no longer allow remote root login without password...

What makes this better than an RPi Zero W at $10?

Faster, newer generation CPU (Zero moved back to ARMv6). Additional microcontrollers (2x PRU, 1x M3). ADC. More I/O capability. Open hardware with a (yet to be proven, but I'm very confident) much higher availability for use in projects, etc.---and also simple to clone/extend if you want to make your own. Also, better processor documentation.

RPi Zero W's seem to only be available one at time with hefty shipping costs for something so small. The last 2 I bought were more than $18 each all in.

Getting a few PocketBeagles and combining the shipping makes them very close to the same cost per unit.

At that point you're simply deciding between the wifi of the RPi and the vastly superior IO of th PB.

This reminds me: I really wish the Pebble Core happened. A computer on a keychain sounds pretty entertaining to say the least.

What's the cheapest way to buy one including UK shipping?

Edit: It looks like Arrow is doing free shipping

Here's a direct link to the FAQ to save some clicks:


New to cryptocurrencies but could this be used a wallet with the right software? Also, are there any open source wallets that integrate with apps like Mycellium the same way as Ledger Nano S or Trezor?

Anyone have comments on this one? http://elinux.org/MIPS_Creator_CI20

Wireless looks to be Linux-only?

Last time I looked into this AM335X chip and its PRUs, the information required to use and program them was very scarce. The SOC as a whole is not exactly developer friendly...

My senior project as an undergrad used them. Working on the PRUs was easy and all the information you need is in the datasheet.

Working with the linux to talk to the PRUs... that was another matter entirely. There were like 3 different ways to talk to them, none of which I understood, and they all seemed to have arbitrary limits and I couldn't figure out which one was the most modern. It was a huge clusterfuck. I ran into massive memory update problems on the linux side because I was trying to funnel way too much data to handle without knowing what I was doing.

There's this framework for the PRUs that came out recently but haven't tried it


That looks pretty neat and I'll have to try it out.

Personally, this is my bare skeleton for working with the PRU: https://gist.github.com/jadonk/2ecf864e1b3f250bad82c0eae12b7....

It's the same processor as used in the BeagleBone, circa 2011.

Just shrunken down incredibly by Octavo.

6 years is a long time in processor years, though.

The AM335x is becoming middle aged...

The core is 12 years old. The reason it has stuck around so long is that it's the only really single-core *TI processor left. That means it's dead cheap for the amount of performance you can pull out of it, not unlike 4-core computer processors.

It is indeed on its way out but I'm going to miss it.

> it's the only really single-core processor left

Huh? What about i.MX 8M Solo processor?

Whoops, meant to specify TI.

Embedded guy here.

I love old cores. All the quirks are known, and the price continues to drop year-after-year which is great for my BOM and thus my margins.

I'm still shipping HCS09 cores from 20-30 years ago. NXP will be making these until the Sun explodes.

So what's your beef about a part being "old"?

paired with Proxmark3 or ChameleonMini you can make your rfid cards N in 1

How much power do you use

I still want a Java Ring.

as a software dev, what kind of stuff can I do with this?

I'll be showing off an infrared camera and a handheld MAME console I built at Maker Faire New York then sharing the design info. Working on pushing to github later this afternoon.

Same things you can do with an RPi and/or BeagleBone black -- though without HDMI it's focused on more embedded / headless / wireless things. Think IOT.

pardon my ignorance, but despite their website, specs, and a list of their projects, I haven't been able to figure out whether this would easily connect to my laptop via USB, and I could deploy some code on it for starters. Do I need any additional pluggable hardware?


It seems that the easiest way to get started is to use a microSD card.

Etcher is a bit easier than the old 7-zip + win32diskimager solution: https://beagleboard.org/getting-started#update

If it's anything like the BeagleBone Black Debian-based image, you can connect with USB to get access to a shell, or access the Cloud9 IDE through your browser. It's very plug-and-play friendly. (The BeagleBone variants also have ethernet/WiFi, which can be used for the same, but I can't tell if the PocketBeagle does wireless or not.)

EDIT: Here's a video for the Blue:


Starting around 2:50, she shows opening up the onboard Cloud9 instance after plugging in the MicroUSB cable.

Applications are open for YC Winter 2022

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact