Choosing Cell Modems: The Drama Queen of Hardware Design

So you went to a tradeshow and heard about this cool new idea called the Internet Of Things; now it’s time to build an IoT product of your own. You know that to be IoT, your Widget D’lux® has to have a network connection but which to choose?

You could use WiFi or Bluetooth but that would be gauche. Maybe LoRaWAN? All the cool kids are using LoRa for medium or long range wireless these days, but that still requires a base station and Widget D’lux® will be a worldwide phenomenon. Or at least a phenomenon past your bedroom walls. And you know how much user’s hate setting things up. So a cell modem it is! But what do you have to do to legally include one in your product? Well that’s a little complicated.

Continue reading “Choosing Cell Modems: The Drama Queen of Hardware Design”

Revive that old Analog Cell Phone with SDR

With the latest and greatest 5G cellular networks right around the corner, it can be difficult to believe that it wasn’t so long ago that cell phones relied on analog networks. They aren’t used anymore, but it might only take a visit to a swap meet or flea market to get your hands on some of this vintage hardware. Of course these phones of a bygone era aren’t just impractical due to their monstrous size compared to modern gear, but because analog cell networks have long since gone the way of the floppy disk.

But thanks to the efforts of [Andreas Eversberg] those antique cell phones may live again, even if it’s only within the radius of your local hackerspace. His software allows the user to create a functioning analog base station for several retro phone networks used in Europe and the United States, such as AMPS, TACS, NMT, Radiocom, and C450. You can go the old school route and do it with sound cards and physical radios, or you can fully embrace the 21st century and do it all through a Software Defined Radio (SDR); in either event, calls to the base station and even between multiple mobile devices is possible with relatively inexpensive hardware.

[Andreas] has put together exceptional documentation for this project, which starts with a walk through on how you can setup your DIY cell “tower” with traditional radios. He explains that amateur radios are a viable option for most of the frequencies used, and that he had early success with modifying second-hand taxi radios. He even mentions that the popular BaoFeng handheld radios can be used in a pinch, though not all the protocols will work due to distortion in the radio.

If you want to take the easy way out, [Andreas] also explains how to replace the radios with a single SDR device. This greatly simplifies the installation, and turns a whole bench full of radios and wires into something you can carry around in your pack if you were so inclined. His software has specific options to use the LimeSDR and LimeSDR-Mini, but you should be able to use other devices with a bit of experimentation.

We’ve previously reviewed the LimeSDR-Mini hardware, as well as covered its use in setting up DIY GSM networks.

Creating a 3G Raspberry Pi Smartphone

It’s hard to believe, but the Raspberry Pi has now been around long enough that some of the earliest Pi projects could nearly be considered bonafide vintage hacks at this point. A perfect example are some of the DIY Raspberry Pi smartphone projects that sprung up a few years back. Few of them were terribly practical to begin with, but even if you ignore the performance issues and bulkiness, the bigger problem is they relied on software and cellular hardware that simply isn’t going to cut it today.

Which was exactly the problem [Dylan Radcliffe] ran into when he wanted to create his own Pi smartphone. There was prior art to use as a guide, but the ones he found were limited to 2G cellular networks which no longer exist in his corner of the globe. He’s now taken on the quest to develop his own 3G-capable Pi smartphone, and his early results are looking very promising.

Inside the phone, which he calls the rCrumbl, [Dylan] has crammed a considerable amount of hardware. A Raspberry Pi 3B+ with attached Adafruit touchscreen LCD is the star of the show, but there’s also a Pi camera module, battery charging circuit, and Adafruit FONA 3G modem (which also provides GPS). Powering the device is a 2500 mAh 3.7V battery, which reportedly delivers a respectable 8 to 12 hour runtime.

The case is 3D printed, and [Dylan] says it took a long time to nail down a design that would fit all of his hardware, keep things from shifting around, and still be reasonably slim. Obviously DIY phones like this are never going to be as slim as even the chunkiest of modern smartphones, but the rCrumbl looks fairly reasonable for a portable device. We especially like the row of physical buttons he’s included along the bottom of the screen, which should help with the device’s usability.

Speaking of usability, that’s where [Dylan] still has his work cut out for him. The existing software he’s found won’t work on 3G, so he’s going to have to come up with his own software stack to provide a proper phone interface. As it stands he’s made a call on the rCrumbl using command line tools, but while that might score you some extra geek points at the next hacker meetup, it’s not exactly going to fly for daily use. He mentions he would love to talk to any developers out there that would like to team up on the software side of the project.

We’ve covered one of the 2G Pi smartphones in the past, and of course the ZeroPhone is a very interesting project if you don’t mind the “dumb phone” interface. But if you’re looking for something that’s fairly close to commercial devices in terms of usability, you might just want to roll your own Android phone.

EMMC Data Recovery From A Bricked Phone

We’ve probably all got at least one old cell phone lurking somewhere around our bench. In most cases they’ll still work, but their  batteries may be exhausted and their OS could be an ancient version. But sometimes there will be a phone that just died. One minute the flagship model, the next a useless slab of plastic and glass with the added annoyance of those priceless photos of Aunty May’s 80th forever locked in its memory.

[Andras Kabai] had just such a device land on his desk, a high-end Sony whose screen had gone blank. Others had tried, he was the last hope for the data it contained. He zoomed in on the eMMC chip on its motherboard, desoldered it and hooked it up via a specialist eMMC reader to recover those files. That was a very simple description of a far more involved process that he sets out in his post about it, a post that is fascinating reading and serves as a handy primer for any reader who might like to try it for themselves. We learn about the MMC interface and how simple it can be in its serial form, how with some fine soldering you can use a cheap USB reader, and that eMMC chips have a pinout conforming to a JEDEC standard.

Finally we see the software side as he takes the various SQLite databases and extracts the data for the user. It shows, all is not necessarily lost, however dead a phone may be.

We’ve seen [Andras] before, using an old scanner in his PCB fab.

Ask Hackaday: Why Aren’t We Hacking Cellphones?

When a project has outgrown using a small microcontroller, almost everyone reaches for a single-board computer — with the Raspberry Pi being the poster child. But doing so leaves you stuck with essentially a headless Linux server: a brain in a jar when what you want is a Swiss Army knife.

It would be a lot more fun if it had a screen attached, and of course the market is filled with options on that front. Then there’s the issue of designing a human interface: touch screens are all the rage these days, so why not buy a screen with a touch interface too? Audio in and out would be great, as would other random peripherals like accelerometers, WiFi, and maybe even a cellular radio when out of WiFi range. Maybe Bluetooth? Oh heck, let’s throw in a video camera and high-powered LED just for fun. Sounds like a Raspberry Pi killer!

And this development platform should be cheap, or better yet, free. Free like any one of the old cell phones that sit piled up in my “hack me” box in the closet, instead of getting put to work in projects. While I cobble together projects out of Pi Zeros and lame TFT LCD screens, the advanced functionality of these phones sits gathering dust. And I’m not alone.

Why is this? Why don’t we see a lot more projects based around the use of old cellphones? They’re abundant, cheap, feature-rich, and powerful. For me, there’s two giant hurdles to overcome: the hardware and the software. I’m going to run down what I see as the problems with using cell phones as hacker tools, but I’d love to be proven wrong. Hence the “Ask Hackaday”: why don’t we see more projects that re-use smartphones?

Continue reading “Ask Hackaday: Why Aren’t We Hacking Cellphones?”

Hacker Pops Top On NFC Vending Machines

Vending machines used to be a pretty simple affair: you put some coins in, and food or drink that in all likelihood isn’t fit for human consumption comes out. But like everything else today, they are becoming increasingly complex Internet connected devices. Forget fishing around for pocket change; the Coke machine at the mall more often than not has a credit card terminal and a 30 inch touch screen display to better facilitate dispensing cans of chilled sugar water. Of course, increased complexity almost always goes hand in hand with increased vulnerability.

So when [Matteo Pisani] recently came across a vending machine that offered users the ability to pay from an application on their phone, he immediately got to wondering if the system could be compromised. After all, how much thought would be put into the security of a machine that basically sells flavored water? The answer, perhaps not surprisingly, is very little.

The write-up [Matteo] has put together is an outstanding case study in hacking Android applications, from pulling the .apk package off the phone to decompiling it into its principal components with programs like apktool and jadx. He even shows how you can reassemble the package and get it suitable for reinstallation on your device after fiddling around with the source code. If you’ve ever wanted a crash course on taking a peek inside of Android programs, this is a great resource.

By snooping around in the source code, [Matteo] was able to discover not only the location of the encrypted database that serves as the “wallet” for the user, but the routine that generates the encryption key. To cut a long story short, the program simply uses the phone’s IMEI as the key to get into the database. With that in hand, he was able to get into the wallet and give himself a nice stack of “coins” for the next time he hit the vending machines. Given his new-found knowledge of how the system works, he even came up with a separate Android app that allows adding credit to the user’s account on a rooted device.

In the video after the break, [Matteo] demonstrates his program by buying a soda and then bumping his credit back up to buy another. He ends his write-up by saying that he has reported his findings to the company that manufacturers the vending machines, but no word on what (if any) changes they plan on making. At the end of the day, you have to wonder what the cost-befit analysis looks like for a full security overhaul when when you’re only selling sodas and bags of chips.

When he isn’t liberating carbonated beverages from their capitalistic prisons, he’s freeing peripherals from their arbitrary OS limitations. We’re starting to get a good idea about what makes this guy tick.

Continue reading “Hacker Pops Top On NFC Vending Machines”

ESP8266 Powered Tank With Voice Control

The high availability of (relatively) low cost modular components has made building hardware easier than ever. Depending on what you want to do, the hardware side of a project might be the hacker equivalent of building with LEGO. In fact, we wouldn’t be surprised if it literally involved building with LEGO. In any event, easy and quick hardware builds leave more time for developing creative software to run the show. The end result is that we’re starting to see very complex systems broken down into easy-to-replicate DIY builds that would have been nearly impossible just a few years ago.

[igorfonseca83] writes in to share with us his modular tank platform that uses the ESP8266 and a handful of software hacks to allow for voice control from the user’s mobile device. Presented as a step-by-step guide on, this project is perfect for getting started in Internet-controlled robotics. Whether you just want to experiment with Google Assistant integration or use this as a blank slate to bootstrap a remotely controlled rover, this project has a lot to offer.

The chassis itself is a commercially available kit, and [igorfonseca83] uses a L298N dual channel H-bridge module to control its two geared motors. A Wemos D1 serves as the brains of the operation, and three 18650 3.7V batteries provide the juice to keep everything running. There’s plenty of expansion capability to add sensors and other gear, but for this project getting it rolling was the only concern.

Software wise, there are a number of pieces that work together to provide the Google Assistant control demonstrated in the video after the break. It starts by interfacing the ESP8266 board Adafruit.IO, which connects to IFTTT, and then finally Google Assistant. By setting up a few two variable phrases in IFTTT that get triggered by voice commands in Google Assistant, you can push commands back down to the ESP8266 through Adafruit.IO. It’s a somewhat convoluted setup, admittedly, but the fact that involves very little programming makes it an interesting solution for anyone who doesn’t want to get bogged down with all the minutiae of developing your own Internet control stack.

[igorfonseca83] is no stranger to building remotely controlled rovers. Last year we covered another of his creations which was commanded through a web browser and carried an Android phone to stream video of its adventures.

Continue reading “ESP8266 Powered Tank With Voice Control”