Google’s New OS Will Run On Your Raspberry Pi

According to reports from Android Police and ZDNet, you may soon have a new operating system from Google to run on your Raspberry Pi. Details are still extremely sparse, the only description on the GitHub page is “Pink + Purple == Fuchsia (a new Operating System)”. But, here’s what we do know:

The new OS, called Fuchsia, will be based on Magenta, which is in turn built on LittleKernel. That means that, surprisingly, Google will not be using a Linux kernel for the new OS but something more like an embedded RTOS. Although Google is targeting embedded systems, the possibility of being able to run it on a desktop has been mentioned, so it may not be too minimalistic.

Google’s Travis Geiselbrecht has named the Raspberry Pi 3 specifically as one system it will run on, and said that it’ll be available soon. But, it seems Google is aiming to make it run on a variety of ARM devices (both 32 bit and 64 bit), as well as 64 bit PCs. This is a direct effort to compete against other commercial embedded operating systems that are currently available, and especially on IoT devices.

If you’re eager to see what this is all about, you can follow Google’s quick start recipes and see what you can come up with, although details are still sketchy enough that we’re just going to wait a bit.

Hackaday Prize Entry: Polling The Polling Places

A decade and a half ago, a developer testified that he was contracted to make code that would swing an election using electronic voting machines. In this year’s presidential primaries, exit polling significantly differed from official results, but only in precincts using unverifiable electronic voting machines. A democracy can only exist if the integrity of the voting process can be assured, and there is no international electoral oversight committee that would verify the elections in every precinct of the United States.

Your vote may not count, but that doesn’t mean you should wait for hours to cast it. This Hackaday Prize aims to end excessive waiting times at polling places, by giving voters a handy app to check the wait times they’re about to face.

The Qubie is a device that simply keeps track of how long voters are waiting in line at their polling place. The tech behind this is extremely simple – just a Raspberry Pi, WiFi adapter, and a battery. The device keeps track of how long voters have been waiting in line by looking at WiFi coming from smartphones. This data, which has a MAC address in there somewhere, is pseudorandomized and checked every minute or so to get a very good idea of how long a specific smartphone has been in range of the Pi. This data is then broadcast out to a server which figures out how long wait times are at a specific polling place.

In the recent California primary election, the Qubie was used at ten polling places in Shasta county. They logged a total of over 30,000 WiFi contacts and after a cursory examination of the data, saw the phenomena you would expect: surges in activity around lunchtime and at the end of the day. It’s a great project that gathers data that should be automated and public, and a great entry for the Hackaday Prize.

Secret Riddle Retro Radio

When [the-rene] was building an escape room, he decided to have a clue delivered by radio. Well, not exactly radio, but rather an old-fashioned radio that lets you tune to a faux radio station that asks a riddle. When you solve the riddle, a secret compartment opens up. [the-rene] says you could have the compartment contain a key or a clue or even a cookie.

The outer case is actually an old radio gutted for this purpose. In addition, a laser cut box and a servo motor form the secret compartment.

Continue reading “Secret Riddle Retro Radio”

3.3V Is Not Enough For This Raspberry Pi Zero

A Raspberry Pi Zero is down to a price and size where it’s just begging to be integrated into your projects. Unless, that is, if your project involves a lot of 5 V equipment. Then it’s just begging to be fried.

[David Brown] solved this problem by breaking out pins with level converters. He used flat-flex cable and some pin-headers. While he was at it, he added a full-sized USB port and power headers. (Extra hack points are awarded for connecting the USB to the board through pogo pins.)

Continue reading “3.3V Is Not Enough For This Raspberry Pi Zero”

Raspberry Pi 3 Gets USB, Ethernet Boot

The Raspberry Pi is a great computer, even if it doesn’t have SATA. For those of us who have lost a few SD cards to the inevitable corruption that comes from not shutting a Pi down properly, here’s something for you: USB Mass Storage Booting for the Raspberry Pi 3.

For the Raspberry Pi 1, 2, Compute Module, and Zero, there are two boot modes – SD boot, and USB Device boot, with USB Device boot only found on the Compute Module. [Gordon] over at the Raspberry Pi foundation spent a lot of time working on the Broadcom 2837 used in the Raspberry Pi 3, and found enough space in 32 kB to include SD boot, eMMC boot, SPI boot, NAND flash, FAT filesystem, GUID and MBR partitions, USB device, USB host, Ethernet device, and mass storage device support. You can now boot the Raspberry Pi 3 from just about anything.

The documentation for these new boot modes goes over the process of how to put an image on a USB thumb drive. It’s not too terribly different from the process of putting an image on an SD card, and the process will be streamlined somewhat in the next release of rpi-update. Some USB thumb drives do not work, but as long as you stick with a Sandisk or Samsung, you should be okay.

More interesting than USB booting is the ability for the Pi 3 to boot over the network. Booting over a network is nothing new – the Apple II could do it uphill both ways in the snow, but the most common use for the Pi is a dumb media player that connects to all your movies on network storage. With network booting, you can easily throw a Pi on a second TV and play all that media in a second room. Check out the network booting tutorial here.

An Apple II Joystick Fix For Enjoyable Gameplay

We all remember the video games of our youth fondly, and many of us want to relive those memories and play those games again. When we get this urge, we usually turn first to emulators and ROMs. But, old console and computer games relied heavily on the system’s hardware to control the actual gameplay. Most retro consoles, like the SNES for example, rely on the hardware clock speed to control gameplay speed. This is why you’ll often experience games played on emulators as if someone is holding down the fast forward button.

The solution, of course, is to play the games on their original systems when you want a 100% accurate experience. This is what led [FozzTexx] back to gameplay on an Apple II. However, he quickly discovered that approach had challenges of its own – specifically when it came to the joystick.

The Apple II joystick used a somewhat odd analog potentiometer design – the idea being that when you pushed the joystick far enough, it’d register as a move (probably with an eye towards smooth position-sensitive gameplay in the future). This joystick was tricky, the potentiometers needed to be adjusted, and sometimes your gameplay would be ruined when you randomly turned and ran into a pit in Lode Runner.

The solution [FozzTexx] came up with was to connect a modern USB gamepad to a Raspberry Pi, and then set it to output the necessary signals to the Apple II. This allowed him to tune the output until the Apple II was responding to gameplay inputs consistently. With erratic nature of the original joystick eliminated, he could play games all day without risk of sudden unrequested jumps into pits.

The Apple II joystick is a weird beast, and unlike anything else of the era. This means there’s no Apple II equivalent of plugging a Sega controller into an Atari, or vice versa. If you want to play games on an Apple II the right way, you either need to find an (expensive) original Apple joystick, or build your own from scratch. [FozzTexx] is still working on finalizing his design, but you can follow the gits for the most recent version.

Single Board Revolution: Preventing Flash Memory Corruption

An SD card is surely not an enterprise grade storage solution, but single board computers also aren’t just toys anymore. You find them in applications far beyond the educational purpose they have emerged from, and the line between non-critical and critical applications keeps getting blurred.

Laundry notification hacks and arcade machines fail without causing harm. But how about electronic access control, or an automatic pet feeder? Would you rely on the data integrity of a plain micro SD card stuffed into a single board computer to keep your pet fed when you’re on vacation and you back in afterward? After all, SD card corruption is a well-discussed topic in the Raspberry Pi community. What can we do to keep our favorite single board computers from failing at random, and is there a better solution to the problem of storage than a stack of SD cards?

Continue reading “Single Board Revolution: Preventing Flash Memory Corruption”