Back in the day, when wardriving was still useful (read: before WPA2 was widespread), we used to wander around with a Zaurus in our pocket running Kismet. Today, every cellphone has WiFi and a significantly more powerful processor inside. But alas, the firmware is locked down.
Enter the NexMon project. If you’ve got a Nexus 5 phone with the Broadcom BCM4339 WiFi chipset, you’ve now got a monitor-mode, packet-injecting workhorse in your pocket, and it looks a lot less creepy than that old Zaurus. But more to the point, NexMon is open. If you’d like to get inside what it took to reverse-engineer a hole into the phone’s WiFi, or make your own patches, here’s a great starting place.
But wait, there’s more! The recently released Raspberry Pi 3 has a similar Broadcom WiFi chipset, and has been given the same treatment, turning your RPi 3 into a wireless-sniffing powerhouse. How many Raspberry Pi “hacks” actually hack the Raspberry Pi? Well, here’s one.
We first learned of this project from a talk given at the MetaRhein-Main Chaos Days conference which took place last weekend. The NexMon talk (in German, but with slides in English) is just one of the many talks, all of which are available online.
The NexMon project is a standout, however. Not only do they reverse the WiFi firmware in the Nexus 5, but they show you how, and then apply the same methods to the RPi3. Kudos times three to [Matthias Schulz], [Daniel Wegemer], and [Matthias Hollick]!
His kids wanted walkie talkies, so [Daniel Chote] built one. The TalkiePi is a neat project built around a Raspberry Pi running Mumble, the open-source voice chat system that his kids can share with their siblings and friends.
It’s easy enough to choose the Raspberry Pi, and Mumble is pretty well known. But what’s the easiest way you can think of to add microphone and speakers to the RPi? We applaud [Daniel’s] choice to equip it with the guts of a USB speakerphone. Mumble lets you choose voice activation or keyboard input — in this case an added button makes it push-to-talk, as you would expect in a traditional walkie talkie.
He put all of this into a nicely designed 3D case with a few LEDs, so it is easy to tell that it is ready to transmit. [Daniel] isn’t quite finished yet, though: he’s now working on a new version that is portable, battery powered and uses a Raspberry Pi Zero for the ultimate walkie talkie. We can’t wait to see someone take this to the extreme and include a cellular-modem. But then again, anywhere you can get on WiFi this rig should work, it’s not relegated to a single LAN, and that already far outperforms walkie talkies of yore.
Most of the hacks we come across here at Hackaday don’t require much more than being “cool” to get our attention. But, every so often we find something that goes a step beyond that and does something truly good for the world. This is one such project, and its goal couldn’t be anymore altruistic: to allow the elderly to enjoy music, even when their declining vision and motor skills make traditional devices difficult to use.
It’s hard to overstate how important music is to people; there are few forms of art more emotionally effective. So, it was a major loss when an elderly relative of [DusteD] was no longer able to operate their CD player. Luckily, [DusteD] was there with an ingenious solution that uses RFID cards to play music from an always-on Raspberry Pi.
Continue reading “Music Player for the Ability-Impaired”
Sometimes it’s worth doing something in an inefficient way. For example, it might be worth it in order to learn something new, or just to use a particular part. [Deater] did just that with the Raspberry Pi AY-3-8910 Chiptune Player (with LED visualizers!)
The venerable General Instrument AY-3-8910 series sound chips were common in older hardware like home computers and game consoles as well as sound cards for the Apple II family. They were capable of generating three channels of square waves with various effects. Developers eventually squeezed every little bit of performance out with clever hacks. The Raspberry Pi has more than enough power to do all this in software, but as [Deater] puts it, it’s far more interesting to use an actual AY-3-8910 from the 80’s. Some LED bar graphs and matrices round out the whole system.
All the code for the Raspberry Pi AY-3-8910 chiptune player can be found on [deater]’s github repository for the project. A video of the player banging out some sounds is embedded after the break.
Continue reading “Raspberry Pi Chiptune Player Rocks a Sound Chip from the 80’s”
In a lot of ways, portable toilets are superior to standard indoor-plumbing-style toilets. This is mostly due to the fact that they have a status indicator on the door. It’s a shame that no indoor bathrooms have figured this out yet, especially in office buildings where your awkward coworkers bang on every door rather than just check for feet in the huge gap that for some reason exists between the floor and the stall door. Anyway, [Chris] and [Daniel] came up with a solution for this issue, which also eliminates wait time for bathrooms in their office.
Their system is an automated bathroom status indicator that reports information about the bathroom’s use over WiFi. Since the bathrooms at their facility are spread out, it was helpful to be able to look up which bathroom would be free at any given moment. Several Raspberry Pis form the nerves of the project. Custom sensors were attached to a variety of different door locks to detect status. Each Pi reports back over WiFi. This accomplishes their goal of being subtle and simple. They also point out that they had to write very little code for this project since there are so many Unix and embedded hardware tools available to them. Checking the status of the bathroom can be as simple as running netcat.
If you’re looking to roll out your own bathroom status monitor solution, [Chris] and [Daniel] have made their code available on GitHub. There are a number of other ways to automate your bathroom, too, like switching the exhaust fan on when it gets too smelly or humid, or even creating a device that dispenses your toilet paper for you.
We love our Game Boy and RetroPie mods here at Hackaday because the Raspberry Pi Zero has made it easier than ever to carry a pocket full of classic games. [Ed Mandy] continues this great tradition by turning a matte black Game Boy Advance into a RetroPie handheld.
Details are scant on how [Mandy] built his Game Pi Advance, but we can glean a few details from the blog post and video. A Raspberry Pi Zero running RetroPie appears to be piggybacking on a custom PCB that slots neatly into the GBA case. This provides easy access to the Pi Zero’s USB and micro HDMI via the cartridge slot to connect to an external screen, as well as a second controller to get some co-op NES and SNES action on. It’s worth noting here that [Mandy] has foregone adding X and Y buttons in the current version.
Continue reading “Game Pie Advance Brings Retro Gaming To Your Fingertips”
It used to be tedious to set up a cross compile environment. Sure you can compile on the Raspberry Pi itself, but sometimes you want to use your big computer — and you can use it when your Pi is not on hand like when on an airplane with a laptop. It can be tricky to set up a cross compiler for any build tools, but if you go through one simple step, it becomes super easy regardless of what your real computer looks like. That one step is to install Docker.
Docker is available for Linux, Windows, and Mac OS. It allows developers to build images that are essentially preconfigured Linux environments that run some service. Like a virtual machine, these images can run together without interfering with each other. Unlike a virtual machine, Docker containers (the running software) are lightweight because they share the same underlying kernel and hardware of the computer.
The reality is, setting up the Raspberry Pi build environment isn’t any easier. It is just that with Docker, someone else has already done the work for you and you can automatically grab their setup and keep it up to date. If you are already running Linux, your package manager probably makes the process pretty easy too (see [Rud Merriam’s] post on that process). However, the nice thing about the images is it is a complete isolated environment that can move from machine to machine and from platform to platform (the Windows and Mac platforms use a variety of techniques to run the Linux software, but it is done transparently).
Continue reading “How to Use Docker to Cross Compile for Raspberry Pi (and More)”