APPLE2IDIOT Expansion Card Lets Your Apple II (Sort Of) Access The Internet

[Nathanial Hendler]’s Apple2Idiot expansion card for the Apple II family of computers is a nifty mix of modern and vintage, and provides a clever means of allowing the host computer to (indirectly) access the internet over WiFi while keeping things simple from the host computer’s perspective.

The PCB has plenty of space on which to silkscreen reference data. Click to enlarge.

It does this by embedding an ESP32 module and a dual-port RAM chip onto an expansion card. The Apple2Idiot, when installed into a host machine, presents as a memory location which the host machine can access. The ESP32 then takes care of all the WiFi communications and tasks requiring internet access, and the host computer directs these tasks (and reads their output) via PEEK and POKE commands.

This means that there are two pieces of software for any given task: one running on the ESP32 doing the actual work, and one running on the Apple II that communicates with the ESP32 on the card by reading and writing to memory. It’s a simple system, and one that [Nathanial] thinks works quite well for specific tasks.

Example programs include things like scanning and selecting a WiFi network, fetching weather data, and sending a message to Slack. Making new applications does mean having to write software on two ends, but the simplicity of the system also means flexibility, because anything the ESP32 does can have its complexity abstracted away by the time its data is presented to the host machine. Not that the Apple II is incapable of dealing with the modern internet more directly; we’ve seen a basic Apple II web server written in BASIC.

LoRa-Powered Birdhouses Enable Wireless Networking When The Internet’s Down

One of the design requirements for the networks that evolved into the Internet was the ability to keep functioning, even if some nodes or links were disabled or destroyed in war. The packet-switched architecture that still powers today’s Internet is a direct result of that: if one link stops functioning, information is automatically re-routed towards its intended destination. However, with tech giants occupying increasingly large parts of the global internet, an outage at one of them might still cause major disruption. In addition, a large-scale power interruption can disable large parts of the network if multiple nodes are connected to the same grid.

Six pieces of wood, with a hammer next to them
Just six pieces of wood make up the birdhouse.

Enter the LoRa Birdhouse project by the Wellesley Amateur Radio Society that solves those two problems, although admittedly at a very small scale. Developed by amateur radio operators in eastern Massachusetts, it’s basically a general-purpose LoRa-based packet-switching network. As it’s based on open-source hardware and commonly available components, its design allows anyone to set up a similar network in their own area.

The network is built from nodes that can receive messages from their neighbors and pass them on towards their final destination. Each node contains a Semtech SX1276 transceiver operating in the 902-928 MHz band, which gets its data from an ESP32 microcontroller. The nodes are placed in strategic locations outside and are powered by solar panels to reduce their ecological footprint, as well as to ensure resilience in case of a power outage. To make the whole project even more eco-friendly, each node is built into a birdhouse that provides shelter to small birds.

Users can access the network through modified network nodes that can be hooked up to a PC using a USB cable. Currently, a serial terminal program is the only way to interact with the network, although a more user-friendly interface is being planned. FCC rules also require all users (except any avian residents) to be licensed amateur radio operators, and all traffic to remain unencrypted. Tests have shown that one kilometer between nodes can work in the right conditions, enabling the deployment of networks across reasonably large areas.

While the Birdhouse Network might not be a plug-and-play internet replacement in case of a nuclear apocalypse, it does provide an excellent system to experiment with packet-switching wireless network technology. We’ve seen similar LoRa-based network initiatives like Qmesh, Cellsol and Meshtastic, all of which provide some way to communicate wirelessly without requiring any centralized hardware.

SDR Listens In To Your Tires

[Ross] has a 2008 Toyota Tacoma. Like many late model cars, each tire contains a direct tire pressure monitoring sensor or TPMS that wirelessly sends data about the tire status to the car. However, unlike some cars, the system has exactly one notification to the driver: one of your tires is low. It doesn’t tell you which one. Sure, you can check each tire, but [Ross] had a different problem. One sensor was bad and he had no way to know which one it was. He didn’t have any equipment to test the sensor, but he did have an RTL-SDR dongle and some know-how to figure out how to listen in on the sensors.

The key was to use some software called RTL-433 that is made to pick up these kinds of signals. It is available for Linux, Windows, or Mac, and supports hundreds of wireless sensors ranging from X10 RF to KlikAanKlikUit wireless switches.

Continue reading “SDR Listens In To Your Tires”

An NRF24L01 module soldered onto a 6502 single-board computer

Wireless Bootloader Saves You From Swapping ROM Chips

Flashing your code into an Arduino, an ESP32 or any other modern microcontroller platform is pretty straightforward: connect the device through USB, fire up the appropriate software platform, and press “program”. But those who followed embedded programming classes in the ’80s and ’90s will remember a more complicated procedure that consists of swapping EPROM chips between a programmer, a target board and a UV eraser. Veterans of that era might even remember how you could overwrite a previous program with NOPs and place new code behind it, to save yourself a trip to the “blank chips” bin.

If you’re a retrocomputer enthusiast and would like to have the easy programming of modern tools, but the authenticity of a self-contained ROM-loading computer, you might want to check out [Anders Nielsen]’s latest design of a wireless boot loader for a 6502 single board computer. The target platform for this project is a beautiful custom-made 6502-based retrocomputer that [Anders] documented in detail on his Hackaday.io page.

The basic idea here is to have a wireless receiver on the target system that receives data from a transmitter connected to a modern PC. When you click “program”, the object code is sent to the 6502 machine, stored in RAM and executed. The wireless link is implemented with a pair of nRF24L01 2.4 GHz modules that communicate through SPI. Since [Anders]’s Mac Mini doesn’t come with GPIO ports he hooked up the transmitter to a Raspberry Pi which he controlled through a network link.

On the 6502 side he wrote a bootloader in assembly language, which bit-bangs the SPI protocol to communicate with the wireless module. A simple user interface is included to allow the user to control the loading and running of programs. All code and hardware documentation is available on Github for use by anyone with a similar 6502 system.

Those nRF24L01s are versatile little things: we’ve seen them being used to transfer anything from MIDI data to TCP/IP links, as well as code for other microcontroller platforms.

Continue reading “Wireless Bootloader Saves You From Swapping ROM Chips”

ESP32: Is Two Better Than One?

We’ve looked at the WROOM-DA module before. It’s an ESP32 with two antennas, and [Andreas Spiess] says it is the ugliest ESP32 he’s ever seen. But beauty is only skin deep, after all. Did [Andreas] find beauty in the twin antennas? Watch the video below and see for yourself.

According to the block diagram, the twin antennas are not used simultaneously but offer diversity one at a time. There is also 8GB 8 MB of flash, double the amount on traditional WROOM modules. Mounting the device was a bit difficult since most ESP32 carrier boards will block some portion of the antenna array.

Continue reading “ESP32: Is Two Better Than One?”

You Break It, We Fix It

Apple’s AirTags have caused a stir, but for all the wrong reasons. First, they turn all iPhones into Bluetooth LE beacon repeaters, without the owner’s permission. The phones listen for the AirTags, encrypt their location, and send the data on to the iCloud, where the tag’s owner can decrypt the location and track it down. Bad people have figured out that this lets them track their targets without their knowledge, turning all iPhone users into potential accomplices to stalkings, or worse.

Naturally, Apple has tried to respond by implementing some privacy-protecting features. But they’re imperfect to the point of being almost useless. For instance, AirTags now beep once they’ve been out of range of their owner’s phone for a while, which would surely alert the target that they’re being tracked, right? Well, unless the evil-doer took the speaker out, or bought one with the speaker already removed — and there’s a surprising market for these online.

If you want to know that you’re being traced, Apple “innovated with the first-ever proactive system to alert you of unwanted tracking”, which almost helped patch up the problem they created, but it only runs on Apple phones. It’s not clear what they meant by “first-ever” because hackers and researchers from the SeeMoo group at the Technical University of Darmstadt beat them to it by at least four months with the open-source AirGuard project that runs on the other 75% of phones out there.

Along the way, the SeeMoo group also reverse engineered the AirTag system, allowing anything that can send BLE beacons to play along. This opened the door for [Fabian Bräunlein]’s ID-hopping “Find You” attack that breaks all of the tracker-detectors by using an ESP32 instead of an AirTag. His basic point is that most of the privacy guarantees that Apple is trying to make on the “Find My” system rely on criminals using unmodified AirTags, and that’s not very likely.

To be fair, Apple can’t win here. They want to build a tracking network where only the good people do the tracking. But the device can’t tell if you’re looking for your misplaced keys or stalking a swimsuit model. It can’t tell if you’re silencing it because you don’t want it beeping around your dog’s neck while you’re away at work, or because you’ve planted it on a luxury car that you’d like to lift when its owners are away. There’s no technological solution for that fundamental problem.

But hackers are patching up the holes they can, and making the other holes visible, so that we can at least have a reasonable discussion about the tech’s tradeoffs. Apple seems content to have naively opened up a Pandora’s box of privacy violation. Somehow it’s up to us to figure out a way to close it.

An Off-Grid Makeshift Cell Network

When traveling into the wilderness with a group of people, it’s good to have a method of communications set up both for safety and practicality. In the past people often relied on radios like FRS, CB, or ham bands if they had licenses, but nowadays almost everyone has a built-in communications device in their pocket that’s ready to use. Rather than have all of his friends grab a CB to put in their vehicle for their adventures together, [Keegan] built an off-grid network which allows any Android phone to communicate with text even if a cell network isn’t available.

The communications system is built on the LoRa communications standard for increased range over other methods like WiFi using a SX1278 chip and an ESP8266. The hardware claims a 10 km radius using this method which is more than enough for [Keegan]’s needs. Actually connecting to the network is only half of the solution though; the devices will still need a method of communication. For that, a custom Android app was created which allows up to 8 devices to connect to the network and exchange text messages with each other similar to a group text message.

For off-grid adventures a solution like this is an elegant solution to a communications problem. It uses mostly existing hardware since everyone carries their own phones already, plus the LoRa standard means that even the ESP8266 base station and transmitter are using only a tiny bit of what is likely battery power. If you’re new to this wireless communications method, we recently featured a LoRa tutorial as well.