This Arduino Isn’t Color Blind

You can sense a lot of things with the right sensor, and [Nikhil Nailwal] is here to show us how to sense colors using a TCS230. The project is a simple demo. It displays the color and lights up an LED to correspond to the detected color.

If you haven’t seen the TCS230 before, it is a chip with an array of photosensors, for different light wavelengths. The controlling chip — an Arduino, in this case — can read the intensity of the selected color.

Continue reading “This Arduino Isn’t Color Blind”

Dumping 90’s Honda ECU Programming With Arduino

[P1kachu] owns a pair of early 1990’s Honda’s with custom tuning on their stock ECUs, and after having to get the ECU repaired on his ’93 civic, he found himself going down the rabbit hole of Honda ECU EPROM chips.

During the repair process, the tuning shop owner, or [Tuner-san] as [P1ikachu] refers to him, made a backup of the custom tuning to another EPROM chip.  This was done with an old Advantest R4945A EPROM programmer, which [Tuner-san] supposedly also used to clone Famicom cartridges back in the day. After realizing that [Tuner-san] could only clone the contents, but not view or modify it, he started looking at ways to do that.

EPROMS are programmed using higher voltage (12.5 V – 25 V) but to read them 5 V is used. The memory address is selected by setting each of the 15 address pins high or low, and then reading the status of the 8 data pins to extract one byte of data. Rinse and repeat for each of the 256 memory addresses on the Microchip 27C256 EPROM. One of the previous owners of [Pikachu]’s Civic made some unknown tuning changes, so he is in the process of looking at the dumped data to see what was changed. Once he has completed figuring out the programming table of the EPROM, he plans to do some testing with [Tuner-san] to possible smooth out the rev limited.

An interesting aspect of EPROMs is that they are erased using UV light, which sets all the memory bits to 1. During programming, selected bits can be set to 0, but it’s not possible to set them back to 1 without erasing the entire chip again.

Messing around with the computers in cars is not only for tuning, but can also expose some rather serious security flaws, especially in modern vehicles.

Arduino Nano Memory Upgrade With No Soldering

Ok, we’ll come clean. [Design Build Destroy] didn’t really add any memory to his Arduino Nano. But he did get about 1.5K more program space when compared to the stock setup. The trick? On some Nano boards and clones, the bootloader is set to use a large block of reserved memory, but Optiboot only requires a fraction of that reserved memory. By reprogramming the bootloader and changing the configuration fuses, you can reclaim that unused memory.

Of course, you can’t easily overwrite the bootloader and fuses over the serial port to prevent you from bricking your device. The video below shows how to connect another Arduino to do the programming. You could also use any dedicated AVR programmer you happen to have. Oddly, the Uno already uses Optiboot with the same processors, and is set correctly and the video shows the differences in the configuration between the two in their default state.

Of course, depending on where you get your Nano devices and their age, you may already have this set up at which point you won’t gain anything, but you should be able to easily tell if you need to go through the steps or not. The same trick will probably work with any older Arduino boards you have laying around if Optiboot supports them. What can you do with the extra memory? Maybe speech recognition?

Continue reading “Arduino Nano Memory Upgrade With No Soldering”

Circuit VR: Arduino Virtually Meets Analog

There was a time when building electronics and building software were two distinct activities. These days, almost any significant electronic project will use a CPU somewhere, or — at least — could. Using a circuit simulator can get you part of the way and software simulators abound. But cosimulation — simulating both analog circuits and a running processor — is often only found in high-end simulation products. But I noticed the other day the feature quietly snuck into our favorite Web-based simulator, Falstad.

The classic simulator is on the left and the virtual Arduino is on the right.

Back in March, the main project added work from [Mark McGarry] to support AVR8js written by [Uri Shaked]. The end result is you can have the circuit simulator on the left of the screen and a Web-based Arduino IDE on the right side. But how does it work beyond the simple demo? We wanted to find out.

The screen looks promising. The familiar simulator is to the left and the Arduino IDE — sort of — is to the right. There’s serial output under the source code, but it doesn’t scroll very well, so if you output a lot of serial data, it is hard to read.

Continue reading “Circuit VR: Arduino Virtually Meets Analog”

12-Arduino Orchestra Plays Star Wars Fanfare

Back in the early days of the musical synthesizer, some designers who wished for polyphony in their instruments would simply build multiple tone-generators for as many notes as they wished to play. [Kevin] took that same approach with his Arduino orchestra, and set about having it play the closing number from Star Wars: A New Hope.

The build consists of twelve Arduino Nanos, each wired up to power, a speaker, and the same MIDI cable. The MIDI cable carries note data for each Arduino on a separate MIDI channel, allowing each to play its own role in the orchestra. [Kevin] then set about arranging the Star Wars music into a MIDI file suitable for the Arduinos, roughly setting six voices to high parts and six voices low. The Arduinos play the notes received using the simple tone() function. The result is a very chiptune rendition of the end of the fourth episode of the world’s most famous space opera.

It may not be neat, tidy, or efficient, but it certainly is fun. Twelve Arduinos bleeping away with their flashing LEDs and cute little speakers makes quite the conversation piece. It’s a similar approach to the Floppotron, which plays more notes by adding more floppy drives. We’ve also seen the same thing done with SEGA sound chips. Video after the break.
Continue reading “12-Arduino Orchestra Plays Star Wars Fanfare”

Arduino Compatible IR Blaster Keeps TVs At Bay

The TV-B-Gone is a well known piece of kit in hacker circles: just point it at a noisy TV in a public space, hit the button, and one of the hundreds of IR remote codes for “Power Off” that it blinks out in rapid succession is more than likely to get the intended response. Unfortunately, while a neat conversation starter, its practical use is limited to a single function. But not so with this programmable IR development board that creator [Djordje Mandic] describes as a “TV-B-Gone on steroids”.

Sure you can point it at a random TV and turn it off with a single button press, but you can also plug the board into your computer and control it directly through the serial connection provided by its CP2104 chip. Using a simple plain-text control protocol, the user can modify the behavior of the device and monitor its status. [Djordje] imagines this feature being used in conjunction with a smartphone application for covert applications. To that end, the device’s support for an onboard battery should keep it from draining the phone during extended operations.

Of course you could do something else entirely with it simply by firing up the Arduino IDE and writing some new code for the device’s ATmega328P microcontroller. As with the IR-enabled ESP8266 development board we looked at a few months ago, there are plenty of applications for an all-in-one board that allows you to communicate with the wide world of IR devices.

Continue reading “Arduino Compatible IR Blaster Keeps TVs At Bay”

Arduino Variometer In A Mint Tin

While humans have done a pretty good job of figuring out how to fly with various mechanical contrivances, the fact remains that our natural senses aren’t really well suited to being off the ground. For example, unless you have a visual reference point, determining which way is up is quite a bit harder than you might think. Which is why pilots rely on instruments such as the variometer, that determines the current rate of climb and descent, to guide them when their eyes can’t be trusted.

It’s also a very handy thing to have when paragliding, which is why [mircemk] decided to build a hand-held version using the Arduino Nano and a BMP180 pressure sensor. Since you don’t want to be staring at a little screen in mid-air, the device conveys changes in altitude with audio tones. A rising tone means you’re moving upwards, while a lower tone indicates downward travel. In the video below, you can see that it only takes a meter or two of vertical movement before the device picks up on the change.

Looking for a simple yet rugged enclosure for the device, [mircemk] found a metal mint tin that would hold the microcontroller, sensor, buzzer, and the 9 V battery that powers it all. We know what you’re thinking, but don’t worry; holes have been popped in the sides to make sure there’s no pressure difference inside the tin. There’s plenty of room to replace the alkaline battery with a rechargeable pack and associated charge controller, but we imagine there’s a certain security in tossing in a fresh new primary cell before slipping the surly bonds of Earth.

If you’re in interested DIY instrumentation for a glider or other aircraft that actually has a proper cockpit, this sunlight readable flight computer made from a Kobo e-reader would be a great start.

Continue reading “Arduino Variometer In A Mint Tin”