Arduino Brings USB Mouse To Homebrew Computer

When building your own homebrew computer, everything is a challenge. Ultimately, that’s kind of the point. If you didn’t want to really get your hands dirty with the nuts and bolts of the thing, you wouldn’t have built it in the first place. For example, take the lengths to which [rehsd] was willing to go in order to support standard USB mice on their 6502 machine.

Code for mapping mouse movement to digital output.

The idea early on was to leverage existing Arduino libraries to connect with a standard USB mouse, specifically, the hardware would take the form of an Arduino Mega 2560 with a USB Host Shield. There was plenty of code and examples that showed how you could read the mouse position and clicks from the Arduino, but [rehsd] still had to figure out a way to get that information into the 6502.

In the end, [rehsd] connected one of the digital pins from the Arduino to an interrupt pin on the computer’s W65C22 versatile interface adapter (VIA). Then eleven more digital pins were connected to the computer, each one representing a state for the mouse and buttons, such as MOUSE_CLICK_RIGHT and MOUSE_LEFT_DOWN.

Admittedly, [rehsd] says the mouse action is far from perfect. But as you can see in the video after the break, it’s at least functional. While the code could likely be tightened up, there’s obviously some improvements to be made in terms of the electrical interface. The use of shift registers could reduce the number of wires between the Arduino and VIA, which would be a start. It’s also possible a chip like the CH375 could be used, taking the microcontroller out of the equation entirely.

From classic breadboard builds to some impressively practical portable machines, we’ve seen our fair share of 6502 computers over the years. Despite the incredible variation to be found in these homebrew systems, one thing is always the same: they’re built by some of the most passionate folks out there.

Continue reading “Arduino Brings USB Mouse To Homebrew Computer”

Arduino Nano Floppy Emulator For When Your Disk Is Not Accessible

Among the plethora of obsolete removable media there are some which are lamented, but it can be difficult to find those who regret the passing of the floppy disk. These flexible magnetic disks in hard plastic covers were a staple of computing until some time in the early 2000s, and their drives could be found by the crateload in any spares box. But what about today, when there’s a need for a real floppy drive and none is to be found? Enter [Acemi Elektronikci], with an Arduino Nano based floppy emulator, that plugs into the floppy port of a PC old enough to have one, and allows the easy use of virtual floppy disks.

Aside from the Nano it has an SD card and associated level shifter, and an SSD1306 i2c screen. Most of the Arduino’s lines drive the floppy interface, so the five-button control comes to a single ADC pin via a resistor ladder. He freely admits that it’s not a perfect cycle-exact emulator of original hardware and there may be machines or even operating systems that complain when faced with it, but for all that it is a useful tool. One of the machines that may have issues is the Amiga, but fortunately there’s a fix for that with a Raspberry Pi.

Arduino Becomes Superhet With A Little Help From Friends

A radio receiver is always a fun project. [Jayakody2000lk] decided that his new superheterodyne design would use an Arduino and it looks like it came out very nicely. The system has four boards. An off-the-shelf Arduino, a Si5351 clock generator board (also off-the-shelf), and two custom boards that contain the IF amplifier and mixer.

The receiver started out in 2015 without the Arduino, and there’s a link in the post to that original design. Using the Si5351 and the Arduino replaces the original local oscillator and there have been other improvements, as well. You can see a video about the receiver below.

Tuning is by a rotary encoder and the current software lets you tune from about 4.75 MHz to a little over 15.8 MHz. Of course, you could change to any frequency the Si5351 can handle as long as the mixer and other components can handle it. The IF frequency is the usual 455 kHz.

If you decide to build this yourself, the design files are on GitHub. Overall a very nice and neat design. We are always amazed how little radio architecture has changed since Edwin Armstrong’s day. Of course, we have better components, even if they aren’t meant for radio purposes.

Continue reading “Arduino Becomes Superhet With A Little Help From Friends”

Dial A For Arduino

A lot of phrases surrounding phones don’t make sense anymore. With a modern cellphone, you don’t really “hang up” and there’s certainly no “dial” to be had. However, with [jakeofalltrades’] project, you can read an old-fashioned phone dial using an Arduino.

The idea behind a phone dial is actually pretty simple. When you pull the dial back to the stop using one of the numbered holes and release it, it causes a switch to open and close the same number of times as the hole you selected. That is, if you pull back the 5 hole, you should get 5 switch closures. The duration of each switch event and the time between switch events is a function of the speed the dial moves because of its internal spring. The zero hole actually produces ten pulses.

There are standards for how precise the timing has to be, but — honestly — it’s pretty loose since these were not made to be read by precise microcontroller timers. In the United States, for example, the dial was supposed to produce between 9.5 and 10.5 pulses per second, but the equipment on the other end would tolerate anything from 8 to 11.

Even if you don’t want a rotary dial in your next project, the code has some good examples of using ATmega328 timers that you might find useful in another context. However, a dial would add a nice retro touch to any numeric input you might happen to need.

If you need project inspiration, how about a volume control? Or, why not a numeric keypad?

Using Arduinos To Drive Undocumented Displays

For those of us old enough to remember the VCR (and the difficulty of programming one), the ubiquitous vacuum fluorescent display, or VFD, is burned into our memories, mostly because of their brightness and contrast when compared to the superficially-similar LCD. These displays are incredibly common even apart from VCRs, though, and it’s easy to find them for next to no cost, but figuring out how to drive one if you just pulled it out of a 30-year-old VCR is going to take some effort. In this build, [mircemk] shows us how he drives unknown VFD displays using an Arduino in order to build his own weather forecasting station.

For this demonstration [mircemk] decided to turn a VFD into a weather forecasting station. First of all, though, he had to get the VFD up and running. For this unit, which came from a point-of-sale (POS) terminal, simply connecting power to the device turned on a demo mode for the display which let him know some information about it. From there, and with the knowledge that most POS terminals use RS232 to communicate, he was able to zero in on the Rx and Tx pins on the on-board microcontroller and interface them with an Arduino. From there it’s a short step to being able to output whatever he wanted to this display.

For this project, [mircemk] wanted the display to output information about weather, but rather than simply pull data from some weather API he is actually using a sensor suite connected to the Arduino to measure things like barometric pressure in order to make a 12-hour forecast. The design is inspired by old Zambretti weather forecasters which used analog wheels to input local weather data. It’s an interesting build not only for the VFD implementation but also for attempting to forecast the weather directly with just a tiny sensor set instead of downloading a forecast to display. To do any better with your own forecasts, you’d likely need your own weather station.

Continue reading “Using Arduinos To Drive Undocumented Displays”

Giant working NERF gun runs on Arduino.

Giant Working NERF Gun Runs On Tiny Arduino

Well, here it is: a shoe-in for the new world’s largest NERF gun. (Video, embedded below.) The Guinness people haven’t shown up yet to award [Michael Pick], but at 12.5 feet, this baby is over twice as long as the current record holder, which belongs to former NASA mechanical engineer Mark Rober and his now-puny six-foot six-shooter.

We have to wonder if it is technically bigger than the six-shooter, because they seem to be roughly the same scale, except that [Michael] chose a much bigger model to start from. The main body is made from wood, and there are a ton of 3D-printed details that make it look fantastically accurate. The whole thing weighs over 200 pounds and takes at least two people to move it around. We especially love the DIY darts that [Michael] came up with, which are made from a PVC tube inside a section of pool noodle, topped off with a 3D printed piece for that distinctive orange cap.

Propelling those darts at around 50 MPH is a 3,000 PSI air tank connected to an Arduino Pro Mini that controls the trigger and the air valves. While [Michael] hasn’t run the thing quite that high, it does plenty of damage in the neighborhood of 40-80 PSI. As you’ll see in the video after the break, this is quite the ranged weapon. Watch it blow a hole clean through a sheet of drywall and much more.

Want to build something with a bit more stealth? Make it death from above with a NERF quadcopter.

Continue reading “Giant Working NERF Gun Runs On Tiny Arduino”

Arduino Orchestra Plays The Planets Suite

We’ve seen a great many Arduino synthesizer projects over the years. We love to see a single Arduino bleeping out some monophonic notes. From there, many hackers catch the bug and the sky is truly the limit. [Kevin] is one such hacker who now has an Arduino orchestra capable of playing all seven movements of Gustav Holst’s Planets Suite.

The performers are not human beings with expensive instruments, but simple microcontrollers running code hewn by [Kevin’s] own fingertips. The full orchestra consists of 11 Arduino Nanos, 6 Arduino Unos, 1 Arduino Pro Mini, 1 Adafruit Feather 32u4, and finally, a Raspberry Pi.

Different synths handle different parts of the performance. There are General MIDI synths on harp and bass, an FM synth handling wind and horn sections, and a bunch of relays and servos serving as the percussive section. The whole orchestra comes together to do a remarkable, yet lo-fi, rendition of the whole orchestral work.

While it’s unlikely to win any classical music awards, it’s a charming recreation of a classical piece and it’s all the more interesting coming from so many disparate parts working together. It’s an entirely different experience than simply listening to a MIDI track playing on a set of headphones.

We’d love to see some kind of hacker convention run a contest for the best hardware orchestra. It could become a kind of demoscene contest all its own. In the meantime, scope one of [Kevin’s] earlier projects on the way to this one – 12 Arduinos singing Star Wars tracks all together. Video after the break.

Continue reading “Arduino Orchestra Plays The Planets Suite”