M17 Aims To Replace Proprietary Ham Radio Protocols

While M17 might sound like a new kind of automatic rifle (as actually, it is), we were referring to an open source project to create a ham radio transceiver. Instead of paraphrasing the project’s goals, we’ll simply quote them:

The goal here should be to kick the proprietary protocols off the airwaves, replace DMR, Fusion, D-Star, etc. To do that, it’s not just good enough to be open, it has to be legitimately competitive.

Like some other commercial protocols, M17 uses 4FSK along with error correction. The protocol allows for encryption, streaming, and the encoding of callsigns in messages. There are also provisions for framing IP packets to carry data. The protocol can handle voice and data in a point-to-point or broadcast topology.

Continue reading “M17 Aims To Replace Proprietary Ham Radio Protocols”

Arduino’s Pluggable Discovery Programs With Any Protocol

The first Arduino was serial, and over the decade and a half, this has been the default way to upload code to an Arduino board. In 2008, support for in-circuit programmers was added, and later port detection was added. The latest version of the Arduino IDE adds something new: pluggable discovery. Now any protocol is supported by the Arduino IDE.

This feature is the brainchild of [Paul Stoffregen], creator of the Teensy. If you’ve ever used a Teensy, you’ll remember the Teensyduino application used to upload code to the board. The Teensy uses HID protocol instead of serial for uploading. After working to improve the integration between the Teensy and Arduino IDE, [Paul] stated extending the DiscoveryManager. After some discussion with the Arduino developers, this feature was then added to Arduino 1.8.9, released a month or so ago.

There are some issues with Pluggable Discovery, most importantly that it doesn’t yet exist in the Arduino Command Line Interface (yeah, that exists too). If you’re looking to contribute to Open Source, that would be a nice project to pick up.

With the right JSON, and configuration, it is now theoretically possible to extend the Arduino IDE to any sort of protocol. This means (again, theoretically), it’s possible to update the firmware in your DIY MIDI synth over SysEx message, or a parallel port, maybe. Someone is going to upload to an Arduino board over PCIe, eventually.

Transcending The Stack With The Right Network Protocol

The increase in network-connected devices the past years has been something of a dual-edged sword. While on one hand it’s really nice to have an easy and straight-forward method to have devices talk with each other, this also comes with a whole host of complications, mostly related to reliability and security.

With WiFi, integrating new devices into the network is much trickier than with Ethernet or CAN, and security (e.g. WPA and TLS) isn’t optional any more, because physical access to the network fabric can no longer be restricted. Add to this reliability issues due to interference from nearby competing WiFi networks and other sources of electromagnetic noise, and things get fairly complicated already before considering which top-layer communication protocol one should use. Continue reading “Transcending The Stack With The Right Network Protocol”

Air Conditioner Remote Reverse Engineered Despite Esoteric Protocol

Infra-red remote control is something of a Done Deal when it comes to hardware hacking, it has been comprehensively reverse engineered, and there exist libraries and software packages to seamlessly take care of all its quirks. Just occasionally though, along comes an IR remote whose protocol doesn’t follow that well-worn path

[William Dudley] found himself in this position with an air-conditioning unit remote control. He found it sent a stream of data with all settings of the machine rather than the single command codes you might expect from a familiar TV remote. The solution was to reverse engineer and reimplement the IR codes.

His reverse engineering relied on an Arduino and IR receiver which he used to sniff the packets coming out of the remote. Eventually he was able to recognise some of the functions from the remote, and create his own protocol that can recreate most of the remote’s functions. This was pushed over to a Raspberry Pi Zero which uses an IR LED to command the air conditioner, joining the ranks of his growing home automation setup.

The write-up makes for a fascinating primer on analysis of obscure IR protocols, and is well worth a read for anybody with an interest in the topic. Meanwhile if you want more IR reverse engineering stories, try this tale of a bathroom scale.

What Is Our Martian Quarantine Protocol?

If you somehow haven’t read or watched War of the Worlds, here’s a spoiler alert. The Martians are brought down by the common cold. You can argue if alien biology would be susceptible to human pathogens, but if they were, it wouldn’t be surprising if aliens had little defense against our bugs. The worrisome part of that is the reverse. Could an astronaut or a space probe bring back something that would ravage the Earth with some disease? This is not science fiction, it is both a historically serious question and one we’ll face in the near future. If we send people to Mars are they going to come back with something harmful?

A Bit of News: Methane Gas Fluctuations on Mars

What got me thinking about this was the mounting evidence that there could be life on Mars. Not a little green man with a death ray, but perhaps microbe-like life forms. In a recent press release, NASA revealed that they not only found old organic material in rocks, but they also found that methane gas is present on Mars and the amount varies based on the season with more methane occurring in the summer months. There’s some dispute about possible inorganic reasons for this, but it is at least possible that the variation is due to increased biological activity during the summer.

Continue reading “What Is Our Martian Quarantine Protocol?”

Wireless Protocol Reverse Engineered To Create Wrist Wearable Mouse

We’ve seen a few near-future sci-fi films recently where computers respond not just to touchscreen gestures but also to broad commands, like swiping a phone to throw its display onto a large flat panel display. It’s a nice metaphor, and if we’re going to see something like it soon, perhaps this wrist-mounted pointing device will be one way to get there.

The video below shows the finished product in action, with the cursor controlled by arm movements. Finger gestures that are very much like handling a real mouse’s buttons are interpreted as clicks. The wearable has a Nano, an MPU6050 IMU, and a nRF24L01 transceiver, all powered by some coin cells and tucked nicely into a 3D-printed case. To be honest, as cool as [Ronan Gaillard]’s wrist mouse is, the real story here is the reverse engineering he and his classmate did to pull this one off.

The road to the finished product was very interesting and more detail is shared in their final presentation (in French and heavy with memes). Our French is sufficient only to decipher “Le dongle Logitech,” but there are enough packet diagrams supporting into get the gist. They sniffed the packets going between a wireless keyboard and its dongle and figured out how to imitate mouse movements using an NRF24 module. Translating wrist and finger movements to cursor position via the 6-axis IMU involved some fairly fancy math, but it all seems to have worked in the end, and it makes for a very impressive project.

Is sniffing wireless packets in your future? Perhaps this guide to Wireshark and the nRF24L01 will prove useful.

Continue reading “Wireless Protocol Reverse Engineered To Create Wrist Wearable Mouse”

FLEX Pager Protocol In Depth

We love pager hacks. One of our earliest head-slappers was completely reverse-engineering a restaurant pager’s protocol, only to find out that it was industry-standard POCSAG. Doh!

[Corn] apparently scratches the same itch, but in the Netherlands where the FLEX protocol is more common. In addition to walking us through all of the details of the FLEX system, he bought a FLEX pager, gutted it, and soldered on an ATMega328 board and an ESP8266. The former does the FLEX decoding, and the latter posts whatever it hears on his local network.

These days, we’re sure that you could do the same thing with a Raspberry Pi and SDR, but we love the old-school approach of buying a pager and tapping into its signals. And it makes a better stand-alone device with a lot lower power budget. If you find yourself in possession of some old POCSAG pagers, you should check out [Corn]’s previous work: an OpenWRT router that sends pages.