The Hidden Microcontroller Inside A LoRa Chip

If you’ve ever done anything with LoRa, the chances are you’ve used a LoRa chip or module as a peripheral for a microcontroller, and left it at that. But that’s not always the case. Rather than being a pre-programmed ASIC under the hood, the Semtech LR2021 has its own on-board microcontroller whose firmware can be updated. [Alex Beale] has managed to unlock its secrets.

The use of LLMs can elicit strong opinions at times, but in this case we agree with him that the task of reverse engineering this hidden microcontoller would have been a near-impossible task without their help. Having done so though,he can write custom firmwares, which he’s able to demonstrate. Running the required FFTs for a waterfall display on-chip for example is now possible, as is running your mesh network node on the chip itself.

This work continues a streak of recent discoveries unlocking software-defined radio functionality inside dedicated radio chips, with both WiFi and LoRa chips falling prey to reverse engineering. It’s an interesting time, if SDR is your thing.

Thanks [Notbasa] for the tip.

Building An ADS-B Receiver For Less Than You Think

If you’ve ever wondered about the planes flying above your head, you could always listen in to ADS-B transmissions to learn more about them. [thefatmoop] has built a rig to do just that, and it comes in under $50 in parts.

The build is based around the Meshnology W12 board, which combines an ESP32-S3 microcontroller with an LR2021 LoRa Radio. The latter is able to be tuned into transmissions in the realm of 1090 MHz and it can capture ADS-B traffic that uses OOK and Manchester encoding. The data is passed to the ESP32-S3 which validates the CRCs of the captured data and serves up the aircraft tracks on a simple web interface. A GNSS receiver can also be added in so the board knows its own location as well as the location of the planes that it’s tuning in.

[thefatmoop] reports decent performance with the rig, pulling in aircraft tracks from up to 150 nautical miles away using a 915 MHz antenna. There are some mods required to achieve this performance, though—namely, you’ll want to modify the filter configuration on the board to avoid it attenuating the 1090 MHz signals of interest.

There are lots of other ways to listen to ADS-B signals, too—you can always grab yourself an SDR and get going. If you’re cooking up your own cheap radio hacks, don’t hesitate to let us know on the tipsline!

Thanks to [Moser] for the tip!

Four black plastic devices, two with a black, stubby antenna, sit on a blue cutting mat with white guidelines. There is also a PCB and a couple grey-ish clips in the assortment. One of the devices is open, showing another PCB with various components including a GPS antenna and LoRa radio. A silhouette of a dog is screen printed next to the text "LIA" on the PCBs, and the same text and image is present in the shell of the device in the top center.

Meshtastic Pet Tracking

Most commercial pet trackers require a subscription or network connection to function. [Jon G Aguado] wanted a better way and designed LIA, a Meshtastic collar tracker.

LIA uses a custom PCB containing a ESP32-S3, LoRa radio, GPS/GNSS receiver, and a charge controller for the 18650 or 5023450 pouch Li-ion cell powering the device. Everything fits inside a 3D printed enclosure, and the device is charged via a magnetic 4-pin USB pogo connector to increase weather resistance.

One of the neat features of this particular tracker is that [Aguado] gave it two different power modes. High power gets a location fix every 30 seconds and has a pair of bright LEDs for visual assistance, low power only gets a fix every minute or so, and it can also be set to off, which is something we wish more device manufacturers remembered should be an option.

We hope anyone planning on using Meshtastic and LoRa in the US is aware of the issues surrounding FCC compliance, and if you want to track your pet another way, maybe KineFox is an option?

FCC ISM Rules May Shatter Lora Mesh Communities

Although everyone has their own reasons for exploring a new hobby, one of the driving factors behind the popularity of Meshtastic and MeshCore has been the incredible accessibility offered by off-grid LoRa mesh networks. You don’t need any expensive hardware or a license to get on the air — armed with a $20 microcontroller dev board and open source software, you could be on the mesh in minutes. Then came the really exciting part, seeing who else was out there. The low barrier of entry and ad-hoc nature of these projects meant there was a good chance you’d soon find yourself exchanging messages with other like-minded folks in the area.

Or at least, that’s how it used to be. With the recent revelation that their default radio configurations have potentially been in violation of the Federal Communications Commission’s (FCC) regulations governing amateur usage of the 900 MHz industrial, scientific and medical (ISM) band, the users and developers of both Meshtastic and MeshCore have been sent scrambling. Getting in compliance isn’t necessarily a technical challenge. In fact, Meshtastic has already introduced changes aimed to address the issue and anyone running the latest alpha release can be sure that their initial radio configuration will meet FCC standards.

But unfortunately, this introduces a new problem. While it’s easy enough to get new installations of Meshtastic and MeshCore operating in a mode that keeps the FCC happy, doing so breaks compatibility with everything that’s already been deployed. The community will be fractured into distinct strata depending on when they first configured their hardware, with an added dash of confusion from the more rebellious users who will undoubtedly refuse to migrate over to the new settings.

What was once easy and accessible has just gotten a whole lot more complicated.

Continue reading “FCC ISM Rules May Shatter Lora Mesh Communities” →

A man's hand is shown holding two small circuit boards, joined together by a central bridge. Each circuit board is connected to four wires and a coaxial antenna cable.

Open-Source ExpressLRS Receiver Reaches For Range

Drone control links are, from a radio signals perspective, nothing short of amazing: using a transmitter capable of transmitting, at most, one watt, a protocol such as ExpressLRS (ELRS) can control a drone over 100 kilometers away. [Stan], who has been building a drone electronics stack from scratch, recently designed four ELRS receivers and went over the principles behind their incredible range.

Up to a certain point, the simplest way to increase a radio’s range is to lower the frequency; lower radio frequencies penetrate better through most materials and don’t attenuate as quickly with distance. However, although ELRS can use 900 MHz bands, [Stan]’s receivers primarily use 2.4 GHz. The major improvement is in modulation: unlike other control protocols, which mostly use frequency modulation, or Wi-Fi, which uses phase and amplitude modulation, ELRS uses Chirp Spread Spectrum modulation. This has a low data rate, but it’s very reliable; every bit is transmitted as a chirp – a linearly rising radio tone – and the data is encoded in the chirp’s starting frequency. To decode this, the receiver multiplies it with an inverse chirp, then takes a fast Fourier transform, revealing the starting frequency. This process has an equivalent gain of 24 dB, which is enough to let it decode signals even below the receiver’s noise floor.

The hardware [Stan] designed to implement this was comparatively simple, just an ESP32 microcontroller, an SX1281 radio chip, and a few peripherals. All four receivers worked in 2.4 GHz, but two had additional 900 MHz antennas. Against RF design convention, one of the receivers used a via to connect the antenna. This would normally cause a significant impedance mismatch, but since there were enough ground-plane vias nearby, the current return path was barely affected; the receiver’s performance hardly changed. In one test, all four receivers maintained a connection at more than five kilometers, despite a forest blocking the signal’s path.

We previously covered ExpressLRS when it was still an emerging technology. To get this kind of range, it builds on LoRa technology, which has reached some impressive distance records.

Thanks to [Keith Olson] for the tip!

Store Tunes On Paper And Stream Them Over LoRA

Some projects seem too good to be true until you dig into it and find the secret magic that makes it all work. Take Paper Tunes by [Makestreame], a project which purports to store a song on a single sheet of paper via QR code and transmit the data over LoRA. If it was a MIDI sequence, maybe. But the promise of Paper Tunes is to take any MP3 and give it this treatment, and that just seems like an impossible level of compression at first glance.

The music is heavily compressed, make no doubt about that. There’s samples in the Instructables link above and in the video below, but it sounds far better than it has any right to. The secret is Meta’s EnCodec neural codec, which like you’d guess uses neural nets to squeeze the absolute minimum information needed to reconstruct a sample. With it [Makestreame] is able to get a 2.9 MB MP3 file down to just 21.44 kB.

Of course, that’s still not going to fit in a 3.3 kB QR code. But by simply making eight of them, [Makestreame] is able to fit the song onto the front and back of a piece of paper. Yes, each song has an “A” and a “B” side — and you thought flipping a record halfway through got old fast. Having to scan eight codes to get one song may strike some as a bit silly, but we do enjoy some silly things here.

The same EnCodec compression that gets the song so tiny as to fit in a brace of QR codes is obviously also what enables its transmission over LoRA. While it’s got far lower bandwidth than something like WiFi, 21 kB is well within its limits. It’s often said that LoRA isn’t suitable for audio, but this project is another example that one person’s “unsuitable” is another person’s “challenge accepted”.

We’ve seen other LoRA audio projects before. Speaking of things not suitable for audio, we once featured an entire album crammed onto a floppy disk. Continue reading “Store Tunes On Paper And Stream Them Over LoRA” →

The Hackaday Communicator Badge, Re-Imagined With New Firmware

Our recently concluded event in Europe saw the return of the Hackaday Communicator badge — a stylish handheld gadget with a QWERTY keyboard, a LoRa radio, and an ESP32. It came complete with a simple messaging app built into its MicroPython firmware, and by all accounts it was a great success.

But there was certainly room for improvement, which is where [Giovi321]’s new firmware for the badge comes in. It brings support for Meshtastic proper, as well as longer battery life support for GPS module. To install this firmware you will need to have the ESP-IDF but fortunately there are very comprehensive instructions provided to help you. Under the hood it’s running FreeRTOS.

It’s something which is so often missing with an event badge, any sense of how it might have a life after the event rather than becoming a piece of e-waste. The Communicator badge is such a nice physical design that it obviously has potential, so this firmware unlocks it and gives the badge a use out in the real world. We really like it for this, and we’ll be flashing a few of our badges over to give it a shot shorlty.

If you’re looking to upgrade the hardware on your Communicator, check out the custom RGB keyboard we covered last week.