Posts with «arduino hacks» label

A Digital Magic 8-Ball? Signs Point to Yes

[FacelessTech] was recently charmed by one of our prized possessions as a kid — the Magic 8-Ball — and decided to have a go at making a digital version. Though there is no icosahedron or mysterious fluid inside, the end result is still without a doubt quite cool, especially for a project made on a whim with parts on hand.

It’s not just an 8-ball, it also functions as a 6-sided die and a direct decider of yes/no questions. Underneath that Nokia 5110 screen there’s an Arduino Pro Mini and a 3-axis gyro. Almost everything is done through the gyro, including setting the screen contrast when the eight ball is first powered on. As much we as love that aspect, we really like that [FacelessTech] included a GX-12 connector for easy FTDI programming. It’s a tidy, completely open-source build, and there’s even a PCB. What’s not to like? Be sure to check out the video after the break to see it in action.

Believe it or not, this isn’t the smallest Magic 8-Ball build we’ve seen. Have you met the business card version?

[via adafruit]

Parking Assistant Helps Back Up the Car Without Going Too Far

Sure, [Ty Palowski] could have just hung a tennis ball from the ceiling, but that would mean getting on a ladder, testing the studfinder on himself before locating a ceiling joist, and so on. Bo-ring. Now that he finally has a garage, he’s not going to fill it with junk, no! He’s going to park a big ol’ Jeep in it. Backwards.

The previous owner was kind enough to leave a workbench in the rear of the garage, which [Ty] has already made his own. To make sure that he never hits the workbench while backing into the garage, [Ty] made an adorable stoplight to help gauge the distance to it. Green mean’s he’s good, yellow means he should be braking, and red of course means stop in the name of power tools.

Inside the light is an Arduino Nano, which reads from the ultrasonic sensor mounted underneath the enclosure and lights up the appropriate LED depending on the car’s distance. All [Ty] has to do is set the distance that makes the red light come on, which he can do with the rotary encoder on the side and confirm on the OLED. The distance for yellow and green are automatically set from red — the yellow range begins 24″ past red, and green is another 48″ past yellow. Floor it past the break to watch the build video.

The humble North American traffic signal is widely recognized, so it’s a good approach for all kinds of applications. Teach your children well: start them young with a visual indicator of when it’s okay to get out of bed in the morning.

DIY Ergonomic Game Pad Lends a Hand

Does it seem like everyone you game against can do everything faster than you? Chances are good that they have some kind of dedicated game pad or macro pad with a bunch of custom shortcuts. If you can’t beat ’em, join ’em, but why buy one when you can build your own? [lordofthedum] did the smart thing when they built their own version of the Azeron game pad, which is an outrageously expensive but ergonomic and cool-looking macro pad that reminds us of the DataHand ergonomic keyboard.

Each finger hovers over a C-shaped group of three switches — one actuates by moving the finger forward, another by moving backward, and the third by pushing down like a regular button. The thumb gets a 4-way joystick. All of these inputs are wired up to an Arduino Pro Micro, which has sort of become the standard for DIY macro pads and keyboards. We think this looks fantastic, and really raises the bar for DIY macro pads.

Need a few more keys, but still want a thumb joystick? Check out the smooth and sweet Sherbet game pad.

Finally, a Differently Useless Machine

Traditionally, the useless machine is a simple one that invites passersby to switch it on. When they do, the machine somehow, some way, turns itself off; usually with a finger or finger-like object that comes out from the box in what feels like an annoyed fashion. Honestly, that’s probably part of what drives people to turn them on over and over again.

But [Bart Blankendaal] has managed to turn the useless machine on its head. When this machine is switched to the on position, unseen forces inside the box will spin the toggle switch around 180° to the off position.

What’s really happening is that an Arduino is getting a signal from the toggle switch, and is then rotating it on a ball bearing with a stepper motor driven through an H-bridge.

It shouldn’t be too hard to make one of these yourself, given that [Bart] has provided the schematic and STLs. If we weren’t living in such touchy times, we might suggest building one of these into your Halloween candy distribution scheme somehow. Sell the switch as one that turns on a candy dispenser, and then actually dispense it after three or five tries.

Many see useless machines as tangible examples of existential quandary. Here is one that takes that sentiment a bit further by snuffing out a candle.

Controlling a Broken Super Nintendo With MIDI

A Super Nintendo that has trouble showing sprites doesn’t make for a very good game system. As it turns out, Super Mario World is a lot less fun when the titular hero is invisible. So it’s no surprise that [jwotto] ended up tossing this partially functional SNES into the parts bin a few years back.

But he recently came up with a project that may actually benefit from its unusual graphical issues; turning the glitched console into a circuit bent video synthesizer. The system was already displaying corrupted visuals, so [jwotto] figured he’d just help things along by poking around inside and identifying pins that created interesting visual effects when shorted out.

Installing the new electronics into the SNES.

Once he mapped out the pins, he wired them all up to a transistor switching board that he’d come up with for a previous project. That would let an Arduino short out the pins on command while still keeping the microcontroller relatively isolated from the SNES. Then it was just a matter of writing some code that would fire off the transistors based on MIDI input.

The end result is a SNES that creates visual glitches along with the music, which [jwotto] can hook up to a projector when he does live shows. A particularly neat feature is that each game responds in its own way, so he can swap out the cartridge to show completely different visuals without having to change any of the MIDI sequencing.

A project like this serves as a nice introduction to both circuit bending and MIDI hacking for anyone looking to get their digital feet wet, and should pair nicely with the MIDI Game Boy Advance.

[Thanks to Irregular Shed for the tip.]

Cybercube Makes a Great Computing Companion

Oh, sure, there have been a few cube-shaped PCs over the years, like the G4 and the NeXT cube. But can they really be called cubes when the display and the inputs were all external? We think not.

[ikeji] doesn’t think so either, and has created a cube PC that puts them all to shame. Every input and output is within the cube, including our favorite part — the 48-key ortholinear keyboard, which covers two sides of the cube and must be typed on vertically. (If you’ve ever had wrist pain from typing, you’ll understand why anyone would want to do that.) You can see a gif of [ikeji] typing on it after the break.

Inside the 3D printed cube is a Raspberry Pi 4 and a 5″ LCD. There’s also an Arduino Pro Micro for the keyboard matrix, which is really two 4×6 matrices — one for each half. There’s a 6cm fan to keep things cool, and one panel is devoted to a grille for heat output. Another panel is devoted to vertically mounting the microcontrollers and extending the USB ports.

Don’t type on me or my son ever again.

When we first looked at this project, we thought the tiny cube was a companion macro pad that could be stored inside the main cube. It’s really a test cube for trying everything out, which we think is a great idea and does not preclude its use as a macro pad one of these days. [ikeji] already has plenty of plans for the future, like cassette support, an internal printer, and a battery, among other things. We can’t wait to see the next iteration.

We love a good cyberdeck around here, and it’s interesting to see all the things people are using them for. Here’s a cyberduck that quacks in Python and CircuitPython.

Upgraded Infotainment Options on a 14 Year Old Mercedes

It used to be that upgrading a car stereo was fairly simple. There were only a few mechanical sizes and you could find kits to connect power, antennas, and speakers. Now, though, the car stereo has interfaces to steering wheel controls, speed sensors, rear-view cameras, and more. [RND_ASH] was tired of his 14-year-old system so he took an Android head unit, a tablet, and an Arduino, and made everything work as it was supposed to.

The key is to interface with the vehicle’s CAN bus which is a sort of local area network for the vehicle. Instead of having lots of wires running everywhere, today’s cars are more likely to have less wiring all shared with many devices.

[RND_ASH] has several videos describing the whole project and we expect there will be some more upcoming. You can see part one, below.

The project also reverse engineers how to display on the tiny screen in the dashboard. The code for the CAN bus interface is on GitHub. There’s also a written narrative on what he learned about the Mercedes interface in a different repository.

We’ve seen other cars get similar treatment, of course. If you want a gentle introduction to CAN hacking, we’ve done that, too.

Automatic Arduino Bicycle Shifter

One of the keys to efficient cycling performance is a consistent pedalling cadence. To achieve this the cyclist must always be in the correct gear, which can be tricky when your legs are burning and you’re sucking air. To aid in this task, [Jan Oelbrandt] created Shift4Me, an open-source Arduino powered electronic shifter.

The system consists of a hall effect sensor at the pedals to measure cadence, an Arduino controller, and a servo mechanism to replace the manual shifter. Everything is mounted in a small enclosure on the frame. The only way to get one is to build your own, so a forum is available for Shift4Me builders, where the BOM, instructions, code and other documentation is available for download. Most bikes should be easy to convert, and [Jan] invites builders to post their modifications and improvements.

Since the only input is the cadence sensor, we wonder if the system will interfere more than help when the rider has to break cadence. It does however include allowance to hold on the current gear, or reset to a starting gear by pushing a button. One major downside is that you will be stuck in a single gear if the battery dies since the manual shifter is completely removed.

As one of the oldest continuously used forms of mechanical transport, there is no shortage of bicycle-related hacks. Some of the more recent ones we’ve seen on Hackaday include e-bike with a washing machine motor, and a beautifully engineered steam-powered bicycle.

Over-Engineered Single Button Timer

Feature creep is typically something to be avoided, since watching a relatively simple project balloon into a rat’s nest of complexity often leads to ineffective, or even abandoned, projects. On the other hand, if you can maintain a tight focus, it’s not always a bad thing. [cbm80Amiga] shows us how to drill down and add specific features in this single-button timer without losing focus on what the original project was all about.

The timer is based on an Arduino Pro Mini and an HX1230 LCD with a simple piezo speaker for audible alerts. A single button controls operation of the timer, with short presses incrementing each digit and long presses moving on to the next digit. Controlling button presses this finely is a project in its own, but then [cbm80Amiga] moves on to other features such as backlight control, low power modes which allow it to operate for around two years on a single battery charge, preset times for various kitchen uses, and different appearance settings.

Honestly we aren’t sure how you could cram any more features on this timer without fundamentally altering the designed simplicity. It doesn’t fall into the abyss of feature creep while being packed with features, and it’s another example of how keeping things simple is often a recipe for success.

Thanks to [Hari] for the tip!

New Arduino JPEG Library Focuses On Speed

Working with graphics on microcontrollers has always meant focusing on making the most of limited resources. Particularly in the 8-bit era, all manner of tricks were used to get low-performance chips to achieve feats beyond their lowly station. However, these days, we’re blessed with 32-bit workhorses with clock speeds in the tens, or even hundreds, of MHz and many kilobytes of RAM to match. It’s these higher performance chips [Larry] had in mind when writing his JPEGDEC library.

As [Larry] discusses in a blog post on the topic, JPEG libraries already exist for the Arduino platform. However, many of these are aimed at 8-bit platforms with tiny amounts of RAM. While it’s possible to decode JPEGs piece by piece with some intelligent code under these conditions, it’s possible to go much faster when you’ve got a little more headroom. [Larry] does a great job of explaining the variety of optimizations he’s developed in the two decades since writing his first JPEG decoder back in 1994. From eliminating unnecessary marker checks to ignoring unneeded data for scaled-down output, it all adds up to get the job done faster. The library targets the Cortex-M0+, or any chip with a minimum of 20K of RAM, as its bare minimum to operate. Faster chips with higher clock rates naturally do better, and [Larry] provides benchmark decoding times for various common hardware using the library.

We’ve featured [Larry]’s GIF decoder for the Arduino platform before, again a useful library that’s optimised for good performance. If you’ve got your own neat tricks for image processing on microcontrollers, you know how to call!

Hack a Day 26 Aug 12:00