An Arduino And A CD-ROM Drive Makes A CD Player

In an age of streaming media it’s easy to forget the audio CD, but they still remain as a physical format from the days when the “Play” button was not yet the “Pay” button. A CD player may no longer be the prized possession it once was, but it’s still possible to dabble in the world of 120 mm polycarbonate discs if you have a fancy for it. It’s something [Daniel1111] has done with his Arduino CD player, which uses the little microcontroller board to control a CD-ROM drive via its IDE bus.

The project draws heavily from the work of previous experimenters, notably ATAPIDUINO, but it extends them by taking its audio from the drive’s S/PDIF output. A port expander drives the IDE interface, while a Cirrus Logic WM8805 S/PDIF transceiver handles the digital audio and converts it to an I2S stream. That in turn is fed to a Texas Instruments PCM5102 DAC, which provides a line-level audio output. All the code and schematic can be found in a GitHub repository.

To anyone who worked in the CD-ROM business back in the 1990s this project presses quite a few buttons, though perhaps not enough to dig out all those CDs again. It would be interesting to see whether the I2S stream could be lifted from inside the drive directly, or even if the audio data could be received via the IDE bus. If you’d like to know a bit more about I2S , we have an article for you.

A Vintage Flip Clock Gets Some Modern Love

There are multiple reasons why we like [iSax]’s rebuild of a Bodet flip clock from the early 1980s. First there’s the retro charm of the timepiece itself, then the electronics used to drive it, its electromechanical month length and leap year system, and finally because here is a maker lucky enough to have a beautiful tabby cat to share the workbench with.

For those of you unfamiliar with a flip clock, these devices have their digits as a series of hinged cards on a central rotor, with each one being exposed in turn as the rotor turns. This one is part of a distributed clock system in which the clients receive a 1 Hz pulse from a central time server to drive their motors, something easily replicated with an Arduino and an H-bridge. Particularly fascinating though is the month length mechanism, part of the calendar rotor system, it has a small DC motor that is engaged to advance the days automatically by whichever number as part of the month transition. Originally this was powered by a couple of AA batteries, which have now been replaced with a small DC to DC converter. You can see it in action in the video below the break.

With or without tabby cats, we see quite a few projects featuring them. If you can’t find one, you can always make your own.

Continue reading “A Vintage Flip Clock Gets Some Modern Love”

A Fresh Linux For The Most Unexpected Platform – The Nintendo 64

Though it was famously started by Linus Torvalds as “a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones“, the Linux kernel and surrounding operating system ecosystems have been ported to numerous architectures beyond their x86 roots. It’s therefore not unusual to hear of new ports for unsupported platforms, but it is extremely unexpected to hear of one when the platform is a games console from the mid-1990s. But that’s what [Lauri Kasanen] has done, announcing a fresh Linux port for the Nintendo 64.

This isn’t a Linux from 1996 either. The port builds on an up-to-date kernel version 5.10 with his N64 branch and a tantalising possibility that it might be incorporated into the main Linux source for the MIPS-64 processor architecture. That’s right, the Nintendo 64 could be an officially supported Linux platform.

It would be stretching the story a long way to call this any kind of distro, for what he’s produced is a bootloader that loads the kernel and creates a terminal with busybox loaded. With this on your flashcart you won’t be replacing that Raspberry Pi any time soon, so why other than [Lauri]’s “because I can” would you be interested in it? He supplies the answer and it lies in the emulation scene, because having a Linux for the platform makes it so much easier to port other software to it. If this tickles your fancy you can see the source in his GitHub repository, and we’re certainly looking forward to what the community will do with it.

We are more used to seeing the N64 as a subject for case-modding, whether it be as a handheld or a an all-in-one console.

Via Phoronix, and thanks [David Beckershoff] for the tip.

Header image: Evan-Amos, Public domain.

The Internet Of Christmas Tree Watering

There’s nothing quite like a real Christmas tree, but as anyone who’s had one will know there’s also nothing like the quantity of needles that a real tree can shed when it runs short of water. It’s a problem [RK] has tackled, with a Christmas tree water level monitor that has integration with Adafruit’s cloud service to give a handy phone notification when more watering is required.

The real interest in this project lies in the sensor development path. There are multiple ways of water level sensing from floats and switches through resistive and light scattering techniques, but he’s taken the brave step of using a capacitive approach. Water can be used as a dielectric between two parallel metal plates, and the level of the water varies the capacitance. Sadly the water from your tap is also a pretty good conductor, so the first attempt at a capacitive sensor was not effective. This was remedied with a polythene “sock” for each electrode constructed with the help of a heat sealer. The measurement circuit was simply a capacitive divider fed with a square wave, from which an Adafruit Huzzah board could easily derive an amplitude reading that was proportional to the water level. The board then sends its readings to Adafruit.io, from which a message can be sent to a Slack channel with the notification enabled. All in all a very handy solution.

Plant care is a long-running theme in Hackaday projects, but not all of them need a microcontroller.

A Novel Micro Desktop Display For Your Raspberry Pi

Since its debut back in 2012 there have been a variety of inventive displays used with the Raspberry Pi. Perhaps you remember the repurposed Motorola phone docks, or you have one of those little displays that plugs into the expansion port. Inevitably the smaller options become disappointing as desktop displays, because while the advert triumphantly shows them sporting a Raspberry Pi OS desktop the reality is almost unusable. Until now.

Along comes [igbit] with a solution in the form of a little SPI display with a different approach to displaying a desktop. Instead of displaying a matchbox-sized desktop over the whole screen it divides into two halves. At the top is a representation of the desktop, while below it is a close-up on the area around the mouse pointer.

Unexpectedly its mode of operation is very accessible to the non-Linux guru, because it works through a Python script that takes screenshots of both areas and passes them as a composite to the display. An area the size of the magnified window is drawn around the mouse pointer, allowing it to be easily located on the tiny desktop. It relies on the main display being pushed to the HDMI output, so if the Pi is otherwise headless then its configuration has to be such that it forces HDMI use. The result isn’t something that would help you with the more demanding desktop tasks, but it provides a neat solution to being able to use a Pi desktop on a tiny screen.

Of course, in a pinch you can always use your mobile phone.

LEDs-On-Chips Will Give Us Lower Cost Optoelectronics

The LED is one of those fundamental building block components in electronics, something that’s been in the parts bin for decades. But while a simple LED costs pennies, that WS2812 or other fancy device is a bit expensive because internally it’s a hybrid of a silicon controller chip and several LEDs made from other semiconductor elements. Incorporating an LED on the same chip as its controller has remained something of a Holy Grail, and now an MIT team appear to have cracked it by demonstrating a CMOS device that integrates a practical silicon LED. It may not yet be ready for market but it already displays some interesting properties such as a very fast switching speed. Perhaps more importantly, further integration of what have traditionally been discrete components would have a huge impact on reducing manufacturing costs.

Anyone who has read up on the early history of LEDs will know that the path from the early-20th-century discoveries of semiconductor luminescence through the early commercial devices of the 1960s and up to the bright multi-hued devices of today has been a long one with many stages of the technology reaching the market. Thus these early experimental silicon LEDs produce light in the infrared spectrum often useful in producing sensors. Whether we’ll see an all-silicon Neopixel any time soon remains to be seen, but we can imagine that some sensors using LEDs could be incorporated on the same die as a microcontroller. It seems there’s plenty of potential for this invention.

This research was presented earlier this month at the IEDM Conference in a talk entitled Low Voltage, High Brightness CMOS LEDs. We were not able to find a published paper, we’d love read deeper so let us know in the comments below if you have info on when this will become available. In the meantime, anyone with any interest in LED technology should read about Oleg Losev, the inventor of the first practical LEDs.

Improve ATtiny Timing Accuracy With This Clock Calibrator

The smaller ATtiny microcontrollers have a limited number of pins, and therefore rely on an internal 9.6 MHz oscillator rather than an external crystal. This oscillator lacks the accuracy of a crystal so individual chips can vary over a significant tolerance from the nominal figure. Happily the resulting timing inaccuracies can be mitigated through a calibration process, and [Stefan Wagner] has incorporated this into his Tiny Calibrator. In addition, it also has the required charge pump circuitry to reset the internal fuses to rescue “bricked” ATtinys, thus allowing those little mistakes to be salvaged.

The board has its own larger ATtiny with a crystal oscillator and an OLED screen, allowing it to measure that of the test ATtiny and generate a correction factor which it applies to the chip. This process is repeated until there is the smallest possible difference from the standard. You can find the files for the hardware on EasyEDA, and the software in a GitHub repository.

It’s important to state that the result will never be as stable as a crystal so you’d be well advised not to put too much trust in those timers, but at least they won’t be as far off the mark as when shipped. All in all this is a handy board to have at hand should you be developing for the smaller ATtiny chips.

Be careful when chasing clock accuracy — it can lead you down a rabbit hole.