Writing an operating system is no small task, but like everything else it is easier than it used to be. [JSandler] has a tutorial on how to create a simple operating system for the Raspberry Pi. One thing that makes it easier is the development environment used. QEMU emulates a Raspberry Pi so you can do the development on a desktop PC and test in the virtual environment. When you are ready, you can set up a bootable SD card and try your work on a real device.
The operating system isn’t very complex, but it does boot, organize memory, displays on the screen, handles interrupts, and manages processes. What else do you need?
Continue reading “Roll Your Own Raspberry Pi OS”
Sometimes when you walk into a hackerspace you will see somebody’s project on the table that stands so far above the norm of a run-of-the-mill open night on a damp winter’s evening, that you have to know more. If you are a Hackaday scribe you have to know more, and you ask the person behind it if they have something online about it to share with the readership.
[Jolar] was working on his 3D scanner project on just such an evening in Oxford Hackspace. It’s a neatly self-contained unit in the form of a triangular frame made of aluminium extrusions, into which are placed a stack of Raspberry Pi Zeros with attached cameras, and a very small projector which needed an extra lens from a pair of reading glasses to help it project so closely.
The cameras are arranged to have differing views of the object to be scanned, and the projector casts an array of randomly created dots onto it to aid triangulation from the images. A press of a button, and the four images are taken and, uploaded to a cloud drive in this case, and then picked up by his laptop for processing.
A Multi-view Stereo (MVS) algorithm does the processing work, and creates a 3D model. Doing the processing is VisualSFM, and the resulting files can then be viewed in MeshLab or imported into a CAD package. Seeing it in action the whole process is quick and seamless, and could easily be something you’d see on a commercial product. There is more to come from this project, so it is definitely one to watch.
Four Pi boards may seem a lot, but it is nothing to this scanner with 39 of them.
If you’re like us, you spend more time than you care to admit staring at a computer screen. Whether it’s trying to find the right words for a blog post or troubleshooting some code, the end result is the same: an otherwise normally functioning human being is reduced to a slack-jawed zombie. Wouldn’t it be nice to be able to quantify just how much of your life is being wasted basking in the flickering glow of your monitor? Surely that wouldn’t be a crushingly depressing piece of information to have at the end of the week.
With the magic of modern technology, you need wonder no longer. Prolific hacker [dekuNukem] has created the aptly named “facepunch”, which allows you to “punch in” with nothing more than your face. Just sit down in front of your Raspberry Pi’s camera, and the numbers start ticking away. It’s like the little clock in the front of a taxi: except at the end you don’t have to pay anyone, you just have to come to terms with what your life has become. So that’s cool.
It doesn’t take much hardware to play along at home. All you need is a Raspberry Pi and the official camera accessory. Though for the full effect you should add one of the displays supported by the Luma.OLED driver so you can see the minutes and hours ticking away in real-time.
To get the facial recognition going, all you need to do is take a well-lit picture of your face and save it as a 400×400 JPEG. The Python 3 script will take care of the rest: checking the frames from the camera every few seconds to see if your beautiful mug is in the frame, and incrementing the counters accordingly.
Even if you’re not in the market for an Orwellian electronic supervisor, this project is a great example to get you started in the world of facial recognition. With a little luck, you’ll be weaponizing it in no time.
In the years since the Raspberry Pi and other similar inexpensive Linux-capable single board computers came to the market, we have shown you a huge variety of projects using them at the heart of portable computers. These normally take the form of a laptop or tablet project, but today we have one that starts from a completely different perspective.
The “Kindleberry Pi Zero W” from [Ben Yarmis] does not attempt to create an enclosure or form factor for a portable computing solution. Instead it’s fair to say that it is more of a software hack than a hardware one, as he’s created something of an ad-hoc portable Raspberry Pi from other off-the-shelf pieces of consumer hardware.
The Zero W is a particularly useful computer for this application because of its tiny size, lowish power consumption, on-board Bluetooth, and wireless networking. He has taken a W and put it in the official Pi case, with a portable battery pack. No other connections, that’s his computer. As an input device he has a Bluetooth keyboard, and his display is a jailbroken Kindle Touch tied to the Pi using his Android phone as a WiFi router. We suspect with a little bit of configuration the Pi could easily serve that function on its own, but the phone also provides an Internet connection.
The result is a minimalist mobile computing platform which probably has a much longer battery life and higher reliability than portable Pi solutions using LCD displays, and certainly takes up less space than many others. Some might complain that there’s no hack in wirelessly connecting such devices, but we’d argue that spotting the possibility when so many others embark on complex builds has an elegance all of its own. It has the disadvantage for some users of providing only a terminal based interface to Raspbian, but of course we’re all seasoned shell veterans for whom that should present no problems, right?
Notable portable Pi solutions we’ve shown you before include this beautiful Psion-inspired project, and this one using the shell of an old laptop.
Keeping animals from tropical regions of the world in a cold climate is an expensive business, they need a warm environment in their pens and sleeping areas. Marwell Zoo was spending a small fortune keeping its herd of nyalas (an antelope, not as the title suggests a deer, native to Southern Africa) warm with electric heating, so they went looking for a technology that could reduce their costs by only heating while an animal was in its pen.
One might expect that a passive IR sensor would solve the problem, but a sleeping nyala too soon becomes part of the background heat for these devices, and as a result, the heaters would not operate for long enough to keep the animals warm. The solution came from an unlikely source, a coffee queue monitoring project at the IBM Watson headquarters in Munich, that used an array of infra-red sensors to monitor the changing heat patterns and thus gauge the likelihood of a lengthy wait for a beverage.
In the zoo application, an array of thermal sensors hooked up to ESP8266 boards talk back to a Raspberry Pi that aggregates the readings and sends them to the IBM Watson cloud where they are analyzed by a neural net. The decision is then made whether or not a nyala is in the field of view, and the animal is toasted accordingly.
This project has some similarities with a Hackaday Prize entry, automated wildlife recognition, in its use of Watson.
Nyala image: Charlesjsharp [CC BY-SA 4.0 ].
While there’s broad agreement that Meltdown and Spectre attacks are really bad news at a fundamental level, there is disagreement on its immediate practical impact in the real world. Despite reassurance that no attacks have been detected in the wild and there’s time to roll out the full spectrum of mitigation, some want to find protection right now. If you’re interested in an usable and easy to set up modern desktop that’s free of Meltdown or Spectre threats, a Raspberry Pi can provide the immunity you seek.
[Eben Upton] explained the side channel attacks using fragments of Python for illustration, which was an enlightening read independent of the Raspberry Pi pitch. While these ARM cores perform speculative instruction fetches, they don’t speculatively execute them or modify the cache. Under the current circumstances, that makes all the difference in the world.
A clever security researcher may yet find a way to exploit speculative fetches in the future, and claiming that Raspberry Pi has superior security would be a stretch. The platform has its own set of security problems, but today Meltdown/Spectre is not among them. And that just might be enough to sway some decisions.
If you need to stay in the x86 world, look over what it’d take to to rewind back to an Intel 486.
Thanks to [D00med] for sharing the link in a comment to our overview article.
With apologies to Clement Clarke Moore, Richard Stallman, and the English-speaking world in general — ed.
‘Twas the night before Christmas
While up in my bed,
I stared at the ceiling
With feelings of dread.
I’d really no reason for portents of doom
Lying there, sleepless, in gathering gloom.
We’d wrapped all the presents, and decked out the tree,
But still, there was something niggling at me.
Continue reading “A Visit From Saint Rich”