One Of The Worst Keyboards Ever, Now An Arduino Peripheral

For British kids of a certain age, their first experience of a computer was very likely to have been in front of a Sinclair ZX81. The lesser-known predecessor to the wildly-successful ZX Spectrum, it came in at under £100 and sported a Z80 processor and a whopping 1k of memory. In the long tradition of Sinclair products it had a few compromises to achieve that price point, the most obvious of which was a 40-key membrane keyboard. Those who learned to code on its frustrating lack of tactile feedback may be surprised to see an Arduino project presenting it as the perfect way to easily hook up a keyboard to an Arduino.

Like many retrocomputing parts, the ZX81 ‘board has been re-manufactured, to the joy of many a Sinclair enthusiast. It’s thus readily available and relatively cheap (we think they can be found for less than the stated 20 euros!), so surprisingly it’s a reasonable choice for an Arduino project. The task of trying to define by touch the imperceptible difference in thickness of a ZX81 key will bring a true retrocomputing experience to a new generation. Perhaps if it can be done on an Mbed then someone might even make a ZX81 emulator on the Arduino.

We’re great fans of the ZX81 here at Hackaday, for some of us it was that first computer. Long may it continue to delight its fans!

Simulating Temperature In VR Apps With Trigeminal Nerve Stimulation

Virtual reality systems are getting better and better all the time, but they remain largely ocular and auditory devices, with perhaps a little haptic feedback added in for good measure. That still leaves 40% of the five canonical senses out of the mix, unless of course this trigeminal nerve-stimulating VR accessory catches on.

While you may be tempted to look at this as a simple “Smellovision”-style olfactory feedback, the work by [Jas Brooks], [Steven Nagels], and [Pedro Lopes] at the University of Chicago’s Human-Computer Integration Lab is intended to provide a simulation of different thermal regimes that a VR user might experience in a simulation. True, the addition to an off-the-shelf Vive headset does waft chemicals into the wearer’s nose using three microfluidics pumps with vibrating mesh atomizers, but it’s the choice of chemicals and their target that makes this work. The stimulants used are odorless, so instead of triggering the olfactory bulb in the nose, they target the trigeminal nerve, which also innervates the lining of the nose and causes more systemic sensations, like the generalized hot feeling of chili peppers and the cooling power of mint. The headset leverages these sensations to change the thermal regime in a simulation.

The video below shows the custom simulation developed for this experiment. In addition to capsaicin’s heat and eucalyptol’s cooling, the team added a third channel with 8-mercapto-p-menthan-3-one, an organic compound that’s intended to simulate the smoke from a generator that gets started in-game. The paper goes into great detail on the various receptors that can be stimulated and the different concoctions needed, and full build information is available in the GitHub repo. We’ll be watching this one with interest.

Continue reading “Simulating Temperature In VR Apps With Trigeminal Nerve Stimulation”

A diagram showing an LED on the left, a lever-style plumbing valve in the center, and an Arduino Uno on the right.

Plumbing Valves As Heavy Duty Analog Inputs

Input devices that can handle rough and tumble environments aren’t nearly as varied as their more fragile siblings. [Alastair Aitchison] has devised a brilliant way of detecting inputs from plumbing valves that opens up another option. (YouTube) [via Arduino Blog]

While [Aitchison] could’ve run the plumbing valves with water inside and detected flow, he decided the more elegant solution would be to use photosensors and an LED to simplify the system. This avoids the added cost of a pump and flow sensors as well as the questionable proposition of mixing electronics and water. By analyzing the change in light intensity as the valve closes or opens, you can take input for a range of values or set a threshold for an on/off condition.

[Aitchison] designed these for an escape room, but we can see them being great for museums, amusement parks, or even for (train) simulators. He says one of the main reasons he picked plumbing valves was for their aesthetics. Industrial switches and arcade buttons have their place, but certainly aren’t the best fit in some situations, especially if you’re going for a period feel. Plus, since the sensor itself doesn’t have any moving parts, these analog inputs will be easy to repair should anything happen to the valve itself.

If you’re looking for more unusual inputs, check out the winners of our Odd Inputs and Peculiar Peripherals contest or this typewriter that runs Linux.

Continue reading “Plumbing Valves As Heavy Duty Analog Inputs”

“Reversing Shorts” Demystify Phone Security

Ever wonder what makes a cellphone’s operating system secure, or what that app you just installed is saying about you behind your back? In a brand new video series, [Jiska] gives us a peek into different topics in smartphone software reverse engineering.

For instance, her latest video, embedded below takes us through some steps to poke at Apple’s RTKit OS, which is the realtime OS that runs inside most of their peripheral devices, including AirPods, but also on their bigger devices too.  We don’t know much about RTKit OS, but [Jiska]’s trick in this video is to get a foothold by looking through two different RTKit OS versions and noting which symbols are common — these are probably OS function names. Now you’ve got something to look for.

Each of the videos is short, to the point, and contains nice tips for perhaps the intermediate-to-advanced reverser who is looking to get into phones. Heck, even if you’re not, her demonstrations of the Frida dynamic tracing tool are worth your time.

And if you want a longer introduction into the internals of cellphones, we heartily recommend her talk, “All Wireless Stacks Are Broken“.

Continue reading ““Reversing Shorts” Demystify Phone Security”

Bare-Metal STM32: Setting Up And Using SPI

The Serial Peripheral Interface (SPI) interface was initially standardized by Motorola in 1979 for short-distance communication in embedded systems. In its most common four-wire configuration, full-duplex data transfer is possible on the two data (MOSI, MISO) lines with data rates well exceeding 10 Mb/s. This makes SPI suitable for high-bandwidth, full-duplex applications like SD storage cards and large resolution, high-refresh displays.

STM32 devices come with a variable number of SPI peripherals, two in the F042 at 18 Mb/s and five in the F411. Across the STM32 families, the SPI peripheral is relatively similar, with fairly minor differences in the register layout. In this article we’ll look at configuring an SPI peripheral in master mode.

Continue reading “Bare-Metal STM32: Setting Up And Using SPI”

Get Clear Insights Into Cloudy Water With The Open Colorimeter

A basic scientific tool for chemistry and biology is a colorimeter device used to measure which wavelengths of light a particular sample solution absorbs. Some applications of colorimeters are measuring pH or chlorine levels, measuring pollutants, such as oil or pesticides, and, in some cases, can even be used to measure RNA/DNA concentrations. Even most washing machines today have a specialized colorimeter sensor, of sorts, to measure turbidity (cloudiness) to provide feedback on the cleaning process. To help in building your home scientific lab, [IORodeo] has released an Open Colorimeter.

A blown out diagram of the Open Colorimeter showing the 3d enclosure, the PyBadge, the LED board and sensor along with text describing each element

The Open Colorimeter is a self-contained device that accepts cuvettes filled with liquids for testing. The basic structure is an LED mounted onto a board that shines through the cuvette filled with a sample that is then measured at the other end by a TSL2591 color sensor. The Open Colorimeter has separate specialized LED boards for a range of wavelengths from 470nm to 630nm and incorporates a PyBadge that serves as the main microcontroller, as well as display and input.

[IORodeo] has done extensive documentation on the assembly, usage, and testing of the device. They have also provided protocols for the measurement of Ammonia, Nitrate, Nitrite, and Phosphates in addition to providing resources for absorption profiles of many other substances. All files relating to the 3D enclosure, firmware source code, schematics and Gerbers are provided under an open source hardware compatible license. For those not wanting to build it themselves, [IORodeo] is offering them for sale.

This isn’t the first time we’ve featured colorimeters, with some building a DIY version and others using it in a Tricorder project. The Open Colorimeter is a nice addition to this list and is ready for hacking and extending!

Dancers Now Help Power Glasgow Nightclub

Humanity thus far has supplied most of its electricity needs by burning stuff, mostly very old stuff that burns great but is hard to replace. That stuff is getting increasingly expensive, and the pollution is a bother too, so renewable sources of energy are becoming more popular.

While wind or solar power are commonly used at the grid level, one Glasgow nightclub has taken a different tack. It’s capturing energy from its patrons to help keep the lights on.

Continue reading “Dancers Now Help Power Glasgow Nightclub”