MSX with BlinkenLights

Blinkenlights-originalOld Mini and Mainframe computers often had huge banks of diagnostic lights to indicate the status of address, data and control buses or other functions. When the lights blinked, the computer was busy at work. When they stopped in a particular pattern, engineers could try and figure out what went wrong by decoding the status of the lights.

[Folkert van Heusden] has an old MSX-based Philips VG-8020 computer and decided to add his own set of BlinkenLights to his system. The VG-8020 was a first generation MSX released in 1983 and featured a Zilog Z80A microprocessor clocked at 3.56 MHz, 64KB of RAM, 16KB of VRAM, and two cartridge slots.

The cartridge slots of the MSX are connected to the address and data buses in addition to many of the control signals, so it seemed logical to tap in to those signals. Not wanting to play around with a whole bunch of transistors, he opted to use an Arduino Nano to connect to his computer and drive the LEDs. In hindsight, this seemed like a wise decision as it allowed him to do some processing on the incoming data before driving the LEDs.

Instead of creating a new PCB, he cut open one of his beloved game cartridges. A switch was added to the slot select control pin (SLTSL) and eight wires soldered directly to the data bus. These were hooked up as inputs to the Arduino. A bank of eight LEDs with limiting resistors were connected to outputs on the Arduino. A quick test confirmed it all worked, including the switch to enable / disable the cartridge. He had to experiment with the code a bit as the LEDs were initially blinking too fast.

v2_frontA couple of months later, he upgraded his BlinkenLight display to include the 16 bit address, 8 bit data and 8 lines for control signals. To do this, he used two MCP23017 – I2C 16 input/output port expander chips. For the LEDs, he installed a bank of four NeoPixel LED bars. A Pro-Mini takes care of the processing, and a custom PCB in the cartridge format houses all of it neatly. Check out the two videos below showing the BlinkenLights in action.

And if these BlinkenLights got you interested, take a look at this awesome Z80 Computer With Switches And Blinkenlights that has a hand operated crank to advance clock cycles.

Continue reading “MSX with BlinkenLights”

Light Duty Timekeeping: Arduino Berlin Clock

Just when we thought we’d seen all the ways there are to tell time, along comes [mr_fid]’s Berlin clock build. It’s based on an actual clock commissioned by the Senate of Berlin in the mid-1970s and erected on the famous Kurfürstendamm avenue in 1975. Twenty years later it was decommissioned and moved to stand outside the historic Europa-center.

This clock tells the time using set theory and 24-hour time. From the top down: the blinking yellow circle of light at the top indicates the passing seconds; on for even seconds and off for odd. The two rows of red blocks are the hours—each block in the top row stands for five hours, and each block below that indicates a single hour. At 11:00, there will be two top blocks and one bottom block illuminated, for instance.

The bottom two rows show the minutes using the same system. Red segments indicate 15, 30, and 45 minutes past the hour, making it unnecessary to count more than a few of the 5-minute top segments. As with the hours, the bottom row indicates one minute per light.

Got that? Here’s a quiz. What time is it? Looking at the picture above, the top row has three segments lit. Five hours times three is 15:00, or 3:00PM. The next row adds two hours, so we’re at 5:00PM. All of the five-minute segments are lit, which adds 55 minutes. So the picture was taken at 5:55PM on some even-numbered second.

The original Berlin clock suffered from the short lives of incandescent bulbs. Depending on which bulb went out, the clock could be ‘off’ by as little as one minute or as much as five hours. [mr_fid] stayed true to the original in this beautiful build and used two lights for each hour segment. This replica uses LEDs driven by an Arduino Nano and a real-time clock. Since the RTC gives hours from 0-23 and minutes and seconds from 0-59, a couple of shift registers and some modulo calculations are necessary to convert to set theory time.

[mr_fid] built the enclosure out of plywood and white oak from designs made in QCAD. The rounded corners are made from oak, and the seconds ring is built from 3/8″ plywood strips bent around a spray can. A brief tour of the clock is waiting for you after the break. Time’s a-wastin’!

Continue reading “Light Duty Timekeeping: Arduino Berlin Clock”

The Robot Light Switch

Automating your home is an awesome endeavor — but playing with mains AC can be risky business if you don’t know what you’re doing. So why not play it safe and make use of your light switch?

Admittedly, it wasn’t because [Tyler Bletsch] didn’t want to mess around with AC directly, but rather out of necessity. You see, he just moved into a new office and his “smart” air conditioner… doesn’t turn itself off at night.

There’s a remote control to set the target temperature, but the unit isn’t smart enough to turn off at night. Instead, there’s a physical wall switch so you can turn it off with your actual physical hands, like a barbarian.

Refusing to be a barbarian (and to stay at work late), he decided to simplify the problem by building a servo driven light switch plate. It’s not the prettiest — but it does the trick. Continue reading “The Robot Light Switch”

Hackaday Prize Entry: Gas Grenade Helps Instead of Exploding

If someone lobs a grenade, it’s fair to expect that something unpleasant is going to happen. Tear gas grenades are often used by riot police to disperse an unruly crowd, and the military might use a smoke grenade as cover to advance on an armed position, or to mark a location in need of an airstrike. But some gas grenades are meant to help, not hurt, like this talking gas-sensing grenade that’s a 2015 Hackaday Prize entry.

Confined space entry is a particularly dangerous aspect of rescue work, especially in the mining industry. A cave in or other accident can trap not only people, but also dangerous gasses, endangering victims and rescuers alike. Plenty of fancy robots have been developed that can take gas sensors deep into confined spaces ahead of rescuers, but [Eric William] figured out a cheaper way to sniff the air before entering. An MQ2 combination CO, LPG and smoke sensor is interfaced to an Arduino Nano, and a 433MHz transmitter is attached to an output. A little code measures the data from the sensors and synthesizes human voice readings which are fed to the transmitter. The whole package is stuffed into a tough, easily deployed package – a Nerf dog toy! Lobbed into a confined space, the grenade begins squawking its readings out in spoken English, which can be received by any UHF handy-talkie in range. [Eric] reports in the after-break video that he’s received signals over a block away – good standoff distance for a potentially explosive situation.

Continue reading “Hackaday Prize Entry: Gas Grenade Helps Instead of Exploding”

Cheap, Easy To Build Robot For beginners

Robotics kits are a great way to get folks , young and old, interested in hacking and learning the basics. Quite often, the cost puts them off – it’s no fun if you mess things up while learning how to put an expensive kit together. Many kits are too polished and that leads to beginners feeling that they’ll never be able to build something complex like a robot. The Shonkbot is what the team at Bristol Hackspace came up with for a robot that is obvious in its working and encouragingly easy to build, even for kids (with supervision).  To that effect, they completely avoided custom PCBs and laser cut bits. The Shonkbot is built from easily available parts and some commonly available materials. They aimed to build it for £5, but managed £15. With proper planning and time, they guess it can be brought down to £10.

The Shonkbot is built using an Arduino Nano, two stepper motors with their drivers, a 3xAA battery box and some bits and bobs. Assembly takes about an hour for a 10-year-old and then they can reprogram it in another workshop or at home. The “frame” of the Shonkbot is an old CD-ROM or DVD disk. Everything is hot glued to this frame. At the centre of the disk, a Sharpie is inserted and the Arduino code then allows the robot to draw on paper. Upgrades include adding an IR LED, a photo transistor and a buzzer to allow the Shonkbot to detect objects, or communicate with other Shonkbots. Build instructions are detailed in this document, and the code is available from the Github repository. Here is a photo album from their first build workshop which was held recently.

Thanks to [Matthew Venn] from the Bristol Hackspace for sending in this tip. Check the robot in action in the video below.

Continue reading “Cheap, Easy To Build Robot For beginners”

Pendulum MIDI Controller Really Swings

Once in a while, we see a project that makes us want to stop whatever we’re doing and build our own version of it. This time, it’s Modulum, a pendulum-based MIDI controller. It’s exactly what it sounds like. The swinging pendulum acts as a low-frequency oscillator. In the demo video configuration, you can hear it add a watery, dreamlike quality, sort of like a lap steel guitar on LSD.

The pendulum’s motion is detected by four pieces of stretchy, conductive cord. These are wired to an Arduino Nano in a voltage divider fashion. [Evan and Kirk] used the Maxuino library to determine x and y mapping of possible pendular positions as well as perform the necessary MIDI processing. Get your groove on after the break, and check out some of the many other fantastic MIDI controllers we’ve had the pleasure of covering.

Continue reading “Pendulum MIDI Controller Really Swings”

ShakeIt – an interactive light game

Learning becomes interesting when you make it fun, interactive and entertaining. [Arkadi] built ShakeIt – an interactive game for the Mini MakerFaire in Jerusalem to demonstrate to kids and grownups how light colors are mixed. It is a follow up to his earlier project – Smart juggling balls which we featured earlier.

The juggling balls consist of a 6 dof sensor (MPU 6050), a micro controller, transmitter (NRF24L01+), some addressable RGB LED’s and a LiPo battery. An external magnet activates a reed switch inside the balls and triggers them in to action. The ShakeIt light fixture consists of an Arduino Nano clone, NRF24L01+ with SMA Antenna, buck converter, 74 addressable RGB LED’s, and a bluetooth module. The bluetooth module connects to a smartphone app.

[Arkadi] starts out by handing three juggling balls, each with a predefined color (Red, Green, Blue). When the ball is shaken, the light inside the ball becomes stronger. The ShakeIt light fixture is used as a mixer. It communicates with the balls and receives the value of how strong the light inside each of the smart balls is, mixing them up, and generating the mixed color.

The fun starts when the interactive game mode is enabled. Instead of just mixing the light, the Light fixture generates patterns based on how strong the balls are shaken. At first the light fixture shows all three colors filling up the central ball. The three contenders then fight out to get their color to fill up the sphere completely until only one color remains and the winner is declared.

The kids might be learning some color theory here, but it seems the adults are having a “ball” playing the crazy game. If you’d like to build your own shoulder dislocating ShakeIt game, head over to [Arkadi]’s github repository for the ShakeIt and the Juggling Balls. Check the video below to see the adults having fun.

Continue reading “ShakeIt – an interactive light game”