Most of us think of keyboards — even vintage ones — as being fairly standardized and interchangeable, but that isn’t the case for the IBM PCjr. Its keyboard was quite unlike most others of its time, which means that a PCjr without an original keyboard is pretty much a dust collector. That’s what led [Jozef Bogin] to create the KeybJr, a piece of hardware that allows one to use any AT, XT, or PS/2 keyboard with the IBM PCjr.
What was strange about the PCjr’s keyboard? From the outside it looked pretty normal, but it definitely had its own thing going on. For one, the PCjr keyboard operated over a completely different protocol than the other keyboards of the time. In addition, its connection to the host was either by IR, or via its own wired cable adapter.
The KeybJr solves this by using an Arduino-based board to turn inputs from other keyboards of the time into something the PCjr expects. These signals are sent out and received either over infrared, or by the PCjr’s “K” port for a wired keyboard link.
Why bother with the IR functionality? Well, the connector and pins on the PCjr are not very rugged, and sometimes they are damaged. In those cases, it is nice to have the option of using a normal (for the time) keyboard over the IR link. Vintage hardware is not always in perfect shape, after all. That’s why things like ATX power supply adapters for the PCjr exist.
Most consumer remote controls operate using infrared light. This works well assuming the piece of equipment has a line of sight to the remote. But if you have, say a receiver in a cabinet or closet, the IR remote signal can’t reach the sensor. Some equipment has remote receivers that you can leave poking out, but it is still not very handy. That’s why some equipment now uses RF remotes. [Xtropie] used a pair of inexpensive 433 MHz RF modules to convert an IR system to RF. You can see a short video about the project below.
We might have been tempted to simply put an IR LED on the receiver so it could feed IR into the device sensor, but [Xtropie] took a different approach. He found the IR sensor and tied the RF receiver directly into its output. It seems to work, but we probably would have removed the IR sensor to make sure there were no conflicts.
Universal remotes are a handy tool to have around if you have many devices that would all otherwise have their own remote controls. Merging them all into a single device leads to less clutter and less frustration, but they are often not truly “universal” as some of them may not support every infrared device that has ever been built. If you’re in a situation like that it’s possible to build a truly universal remote instead, provided you have a microcontroller and a few infrared LEDs on hand.
This was the situation that [Matt] found himself in when his Amazon Fire TV equipment control feature didn’t support his model of speakers. To get around this he programmed an Arduino to essentially translate the IR codes from the remote and output a compatible set of codes to the speakers.This requires both an IR photodiode and an IR LED but little else other than the codes for the remote and the equipment in question. With that all set up and programmed into the Aruino, [Matt]’s remote is one step closer to being truly “universal”.
While [Matt] was able to make use of existing codes in the Arduino library, it is also possible to capture the codes required manually by pointing a remote at a photodiode and programming a microcontroller to capture the codes that you need. [Matt] used a Raspberry Pi to do this when debugging this project, but we’ve also seen this method used with a similar build which uses an ESP8266 to control an air conditioner via its infrared remote control capabilities.
One simple proof of concept is a wireless router with its SSID embedded into the side of the device, and the password embedded into a different code on the bottom to ensure that physical access is required to obtain the password. Mundane objects can have metadata embedded into them, or provide markers for augmented reality functionality, like tracking the object in 3D.
How are the codes actually embedded? The process is straightforward with the right tools. The team used a specialty filament from vendor 3dk.berlin that looks nearly opaque in the visible spectrum, but transmits roughly 45% in IR. The machine-readable label gets embedded within the walls of a printed object either by using a combination of IR PLA and air gaps to represent the geometry of the code, or by making a multi-material print using IR PLA and regular (non-IR transmitting) PLA. Both provide enough contrast for an IR-sensitive camera to detect the label, although the multi-material version works a little better overall. Sadly, the average mobile phone camera by itself isn’t sufficiently IR-sensitive to passively read these embedded tags, so the research used easily available cameras with no IR-blocking filters, like the Raspberry Pi NoIR.
The PDF has deeper details of the implementation for those of you who want to know more, and you can see a demonstration of a few different applications in the video, embedded below. Determining the provenance of 3D printed objects is a topic of some debate in the industry, and it’s not hard to see how technology like this could be used to covertly identify objects without compromising their appearance.
The eyes are windows into the mind, and this research into what jumping spiders look at and why required a clever device that performs eye tracking, but for jumping spiders. The eyesight of these fascinating creatures in some ways has a lot in common with humans. We both perceive a wide-angle region of lower visual fidelity, but are capable of directing our attention to areas of interest within that to see greater detail. Researchers have been able to perform eye-tracking on jumping spiders, literally showing exactly where they are looking in real-time, with the help of a custom device that works a little bit like a miniature movie theatre.
To do this, researchers had to get clever. The unblinking lenses of a spider’s two front-facing primary eyes do not move. Instead, to look at different things, the cone-shaped inside of the eye is shifted around by muscles. This effectively pulls the retina around to point towards different areas of interest. Spiders, whose primary eyes have boomerang-shaped retinas, have an X-shaped region of higher-resolution vision that the spider directs as needed.
So how does the spider eye tracker work? The spider perches on a tiny foam ball and is attached — the help of a harmless and temporary adhesive based on beeswax — to a small bristle. In this way, the spider is held stably in front of a video screen without otherwise being restrained. The spider is shown home movies while an IR camera picks up the reflection of IR off the retinas inside the spider’s two primary eyes. By superimposing the IR reflection onto the displayed video, it becomes possible to literally see exactly where the spider is looking at any given moment. This is similar in some ways to how eye tracking is done for humans, which also uses IR, but watches the position of the pupil.
In the short video embedded below, if you look closely you can see the two retinas make an X-shape of a faintly lighter color than the rest of the background. Watch the spider find and focus on the silhouette of a tasty cricket, but when a dark oval appears and grows larger (as it would look if it were getting closer) the spider’s gaze quickly snaps over to the potential threat.
At Hackaday, we celebrate all kinds of projects, but we’ll have to admit that the polished and professional-looking builds tend to catch our eye a lot more than perhaps they should. There’s plenty of love to be had for the rougher builds, though, of which this quick-and-dirty home automation system is a perfect example.
Before anyone rushes to state the obvious with, “Should have used some relays,” consider that [MAKE_IT_WITH_ME]’s stated goal was to get the basics of a home automation system built with pretty much nothing but what can be found in one of those Arduino starter kits. And further, consider that landlords might not look kindly on tenants who wire a bunch of SSRs or Sonoff switches into the walls of their building. So this minimalist build is perfect for certain use cases. Its interface to the building’s electrical system is 100% mechanical, via a servo that travels along the bank of switches on a stepper-driven leadscrew. The servo has a modified horn to properly flick the rocker-style switches, and although changing from switch to switch is a bit slow, it works surprisingly well. The video below shows it in action.
While we can see it possibly working as-is for Decora-style switches that are seen in some markets, we’d think some mods would be in order for the more standard toggle-style switch — perhaps a finger extending out from the horn, along with a second servo to tilt the whole assembly away from the wall to allow it to clear the switch bats.
Sometimes, the best hifi gear is the gear you’ve already got. This is particularly the case in the cassette world, as high quality decks are long out of production. [Nick] liked his current rig, but wanted to be able to use it with a remote from across the room. Naturally, he set to hacking the feature in.
The cassette deck in question, a Yamaha K-220, was old enough to lack a remote, but thankfully new enough to use a computer-controlled tape transport. This meant that the basic features of play, stop, rewind and fast forward can all be controlled with simple digital buttons rather than mechanical ones. This made it easy to interface an ATmega328P to the stereo’s original circuitry. Digital IO pins are hooked up to the buttons, held as high-impedance inputs most of the time, only toggling to ground when necessary to trigger a button press. It was then a simple job to hook up an IR receiver to the chip and program it with some Arduino libraries to work with a typical stereo remote control [Nick] had laying around.