Hackaday Prize 2023: 65uino 6502 Learning In A Familiar Package

[Anders Nielsen] presents his entry for the 2023 Hackaday Prize: The 65uino. Which as you might be able to guess, is a 6502-based microcomputer wedged into an Arduino Uno form factor (well, almost wedged in, but we’ll let it slide) The premise is simple, older micros are easier to understand, the board can be build up from new-old or salvaged stock, and that’s more chips on boards and less sitting on a dusty shelf. After all, even though the 6502 in its original form is long obsolete, it’s far better to be pushing some electrons around, than sitting there decaying.

The OLED frame buffer is bigger than the host’s entire RAM. No problem!

From an educational perspective, the first lesson is the hand-soldering of through-hole DIP components and a smattering of straightforward surface mount parts in their supporting roles.  Then on to setting up the cc65 toolchain. To say this is a pure 6502 system is a little misleading, it actually uses the 6507 device variant, which is a die-bond variant of the same device but with only 28 of the pins utilized.

The use of the 6532 RIOT (RAM-I/O-Timer) chip provides two 8-bit ports of GPIO as well as a timer and 128 bytes of SRAM, making the design more compact. There is a socket that will accept a 24 or 28-pin E(E)PROM device, with the extra four pins removable and the PCB snapped off if fitment into a standard ‘Uno case is desirable. Neat!

Full hardware build and PCB design (using KiCAD) are available on the 65uino GitHub page. Just remember folks, with everything minimal 6502 related — some assembly required :D

We see the 6502 a lot, let’s be fair. But why not? Here’s a slightly more practical board with a bit more resources, an absolute beast of a luggable dual-6502 machine, and yet another 6502 verilog implementation ready to be dropped into a spare corner of a FPGA project that needs a little extra.

Peek Behind The Curtain Of This Robotic Mouse

At first glance, this little animatronic mouse might seem like a fairly simple affair. A door opens, our rodent friend pops its head out, looks around, and goes back in. But just like in The Wizard of Oz, a strategically placed curtain is hiding the impressive array of gadgetry that makes the trick possible.

Creator [Will Donaldson] has put together a fantastic write-up of just what went into creating this little fellow, and we think you’ll be surprised at just how serious the mechanics involved are. Take for example the rig that provides horizontal motion with a NEMA 17 stepper motor mated to a 200 mm leadscrew and dual 8 mm rail assembly that would like right at home as part of a 3D printer.

The star of the show rides atop a beefy sliding carriage assembly made of printed components and acrylic, which is linked to the door via a GT2 timing belt and pulley in such a way that it automatically opens and closes at the appropriate time. To inject some life into the puppet, [Will] stuffed it with a pair of SG90 servos in a sort of pan-and-tilt arrangement: the rear servo turns the mouse’s body left and right, while the forward one moves the head up and down.

An Arduino Uno controls the servos, as well as the stepper motor by way of a TB6600 controller, and optical limit switches are used to make sure nothing moves out bounds. [Will] is keeping the CAD files and source code to himself for the time being, though we imagine a sufficiently dedicated mouseketeer could recreate the installation based on the available information.

This would appear to be the first animatronic mouse to grace the pages of Hackaday, but we’re certainly no strangers to seeing folks imbue inanimate objects with lifelike motion.

Continue reading “Peek Behind The Curtain Of This Robotic Mouse”

A 3D-printed mini laser engraver made from DVD-RW drive motors.

Mini Laser Engraver Could Carve Out A Place On Your Desk

Got a couple of old DVD-RW drives lying around, just collecting dust? Of course you do. If not, you likely know where to find a pair so you can build this totally adorable and fully dangerous laser engraver for your desk. Check out the complete build video after the break.

[Smart Tronix] doesn’t just tell you to salvage the stepper motors out of the drives — they show you how it’s done and even take the time to explain in writing what stepper motors are and why you would want to use them in this project, which is a remix of [maggie_shah]’s design over on Thingiverse. As you might expect, the two steppers are wired up to an Arduino Uno through a CNC shield with a pair of A4988 motor drivers. These form the two axes of movement — the 250mW laser is attached to x, and the platform moves back and forth on the y axis. We’d love to have one of these to mess around with. Nothing that fits on that platform would be safe! Just don’t forget the proper laser blocking safety glasses!

Need something much bigger that won’t take up a lot of space? Roll up your sleeves and build a SCARA arm to hold your laser.

Continue reading “Mini Laser Engraver Could Carve Out A Place On Your Desk”

Arduino Caller ID Display Is Better Late Than Never

It’s no secret that the era of the landline telephone is slowly coming to a close. As of 2020, it was estimated that less than half the homes in America still subscribed to plain old telephone service (POTS). But of course, that still amounts to millions upon millions of subscribers that might get a kick out of this Arduino caller ID developed by [Dilshan Jayakody].

HT9032D caller ID decoder board
The completed HT9032D board.

Truth be told, until this point, we hadn’t really given a lot of thought to how the caller ID system works. But as [Dilshan] explains, you can actually pick up a dedicated IC that can decode incoming caller data that’s sent over the telephone line. In this case he’s using a Holtek HT9032D, which comes in a through-hole DIP-8 package and can be picked up for around $2 USD. The chip needs a handful of passives and a 3.58 MHz crystal to help it along on its quest, but beyond that, it’s really just a matter of reading the decoded data from its output pin.

To display the caller’s information, [Dilshan] is using an Arduino Uno and common 16×2 HD44780 LCD. As a nice touch, the code will even blink the Arduino’s onboard LED when you’ve missed a call. As a proof of concept there’s been no attempt to condense the hardware or ditch the breadboard, but it’s not hard to imagine that all the components could be packed into a nice 3D printed enclosure should you want something a bit more permanent.

We’ve seen caller ID data being collected in previous projects, but they used a USB modem combined with a software approach. We really like the idea of doing it with a cheap dedicated IC, though we’ll admit this demonstration would probably have been a bit more exciting a decade ago.

Continue reading “Arduino Caller ID Display Is Better Late Than Never”

Custom Isolated Variac Is Truly One Of A Kind

It’s no surprise that many hardware hackers avoid working with AC, and frankly, we can’t blame them. The potential consequences of making a mistake when working with mains voltages are far greater than anything that can happen when you’re fiddling with a 3.3 V circuit. But if you do ever find yourself leaning towards the sparky side, you’d be wise to outfit your bench with the appropriate equipment.

Take for example this absolutely gorgeous variable isolation transformer built by [Lajt]. It might look like a  high-end piece of professional test equipment, but as the extensive write-up and build photographs can attest, this is a completely custom job. The downside is that this particular machine will probably never be duplicated, especially given the fact its isolation transformer was built on commission by a local company, but at least we can look at it and dream.

This device combines two functions which are particularly useful when repairing or testing AC hardware. As a variable transformer, often referred to as a variac, it lets [Lajt] select how much voltage is passed through to the output side. There’s a school of thought that says slowly ramping up the voltage when testing an older or potentially damaged device is better than simply plugging it into the wall and hoping for the best. Or if you’re like Eddie Van Halen, you can use it to control the volume of your over-sized Marshall amplifiers when playing in bars.

Image of the device's internal components.Secondly, the unit isolates the output side. That way if you manage to cross the wrong wire, you’re not going to pop a breaker and plunge your workshop into darkness. It also prevents you from accidentally blowing up any AC powered test equipment you might employ while poking around, such as that expensive oscilloscope, since the devices won’t share a common ground.

Additional safety features have been implemented using an Arduino Uno R3 clone, a current sensor, and several relays. The system will automatically cut off power to the device under test should the current hit a predetermined threshold, and will refuse to re-enable the main relay until the issue has been resolved. The code has been written in such a way that whenever the user makes a configuration change, power will be cut and must be reestablished manually; giving the user ample time to decide if its really what they want to do.

[Lajt] makes it clear that the write-up isn’t meant as a tutorial for building your own, but that shouldn’t stop you from reading through it and getting some ideas. Whether you’re in the market for custom variac tips or just want to get inspired by an impeccably well engineered piece of equipment, this project is a high-water mark for sure.

Clever PCB Brings Micro USB To The Arduino Uno

Even with more and more devices making the leap to USB-C, the Arduino Uno still proudly sports a comparatively ancient Type-B port. It wouldn’t be a stretch to say that many Hackaday readers only keep one of these cables around because they’ve still got an Uno or two they need to plug in occasionally.

Looking to at least move things in the right direction, [sjm4306] recently set out to create a simple board that would let him mount a micro USB connector in place of the Uno’s original Type-B. Naturally there are no components on the PCB, it simply adapts the original through-hole footprint to the tight grouping of surface mount pads necessary to mount a female micro USB port.

Making castellated holes on the cheap.

The design is straightforward, but as [sjm4306] explains in the video below, there’s actually more going on here than you might think. Looking to avoid the premium he’d pay to have the board house do castellated holes, he cheated the system a bit by having the board outline go right through the center of the standard pads.

Under a microscope, you can see the downside of this approach. Some of the holes got pretty tore up as the bit routed out the edges of the board, with a few of them so bad [sjm4306] mentions there might not be enough of the pad left to actually use. But while they may not be terribly attractive, most of them were serviceable. To be safe, he says anyone looking to use his trick with their own designs should order more boards than they think they’ll actually need.

Of course you could go all the way and retrofit the Uno with a USB-C port, as we’ve seen done with devices in the past. But the latest-and-greatest USB interface can be a bit fiddly, especially with DIY gadgets, so we can’t blame him for going with the more reliable approach.

Continue reading “Clever PCB Brings Micro USB To The Arduino Uno”

Drink Water On Schedule Or Else Flood Your Desk

How much water have you had to drink today? We would venture to guess that the answer is somewhere between ‘absolutely none’ and ‘not not nearly enough’. You can go ahead and blame poor work/life balance — that’s our plan, anyway — and just try to do better. All this working from home means the bathroom situation is now ideal, so why not drink as much water as you can?

But how? Well, you’re human, so you’ll need to make it as easy as possible to drink the water throughout the day. You could fill up one big jug and hoist it to your mouth all day long (or use a straw), but facing that amount of water all at once can be intimidating. The problem with using a regular-sized vessel is that you have to get up to refill it several times per day. When hyper-focus is winning the work/life tug-of-war, you can’t always just stop and go to the kitchen. What you need is an automatic water dispenser, and you need it right there on the desk.

[Javier Rengel]’s water pomodoro makes it as easy as setting your cup down in front of this machine and leaving it there between sips. As long as the IR sensor detects your cup, it will dispense water every hour. This means that if you don’t drink enough water throughout the day, you’re going to have it all over the desk at some point. [Javier] simply connected an Arduino UNO to a water pump and IR sensor pair and repurposed the milk dispenser from a coffee machine. Check it out in action after the break.

Of course, if you aren’t intimidated by the big jug approach, you could keep tabs on your intake with the right kind of straw.

Continue reading “Drink Water On Schedule Or Else Flood Your Desk”