I was scouting the latest apps on F-Droid for the GrapheneOS kit today and made a Major discovery: Cimbar. It is a brilliant bit of kit that uses a high-density “colour icon” matrix to stream data from a screen to a camera. It is a purely optical, air-gapped channel that really “brightened” my day.
It immediately reminded me of the veteran sitting on my desk—the Timex Datalink.

The Timex Datalink: Synchronise Watches!
In 1994, before Bluetooth was even a “Private” in the ranks, Timex and Microsoft deployed the Datalink. It didn’t need a cable; it used an optical sensor to “read” data directly from the flickering light of a CRT monitor.
- The Mission: You would hold the watch face roughly 15 to 30 cm from the screen.
- The Comms: The monitor would flash horizontal bars—modulated light pulses—that the watch decoded into calendar entries and “WristApps.”
- The LCD Ambush: When the industry retreated from CRTs to LCDs, the refresh rates were too slow to trip the sensor. We had to deploy a special serial dongle with a red LED just to replicate the flicker and maintain the line of communication.
NASA: High-Altitude Intel
The Datalink wasn’t just for civilians; it was flight-certified by NASA for the Space Shuttle and ISS missions. While other watches were just along for the ride, the Datalink was on active duty:
- Expedition 1: Commander William Shepherd used a Datalink 150 during the first long-duration stay on the ISS in 2000.
- Tactical Use: Astronauts used them for daily mission notifications and custom “WristApps.” It was the ultimate wearable for a zero-G environment where you couldn’t afford to have your hands tied up.
Unique Shuttles: Finding Signal in the Noise
The Datalink is a masterclass in using unconventional channels. In engineering, we often have to find “General” solutions for specific obstacles:
- Webcams as Recon: Using CV to read analogue pulse meters when there’s no digital output.
- IR Blasters: Taking command of “dumb” appliances via home automation.
- Aggressive Bitpacking: The essential drill for low-bandwidth modes like LoRa.
Basic Training: Bitpacking in Python
When you are operating a LoRa mesh on the farm, you only have a 51-byte payload to play with. JSON is “bloatware” that should be Dishonourably Discharged. To get the job done, you have to pack every bit like a rucksack.
Let’s map our sensor data into a tight 32-bit packet. We use a linear mapping for the temperature to keep it within 11 bits:
$$T_{packed} = (T_{real} + 40.0) \times 10$$
The Python Sitrep
| |
Final Thoughts
Whether it is a 1994 Timex “listening” to a CRT on the ISS or a Python script packing bits for a LoRa node, the drill is the same: Constraint breeds elegance. Standard protocols are fine for the lab, but the real engineering happens in the field. If it gets the packet home, it is a win.