Opening A Ford With A Robot And The De Bruijn Sequence

The Ford Securicode, or the keyless-entry keypad available on all models of Ford cars and trucks, first appeared on the 1980 Thunderbird. Even though it’s most commonly seen on the higher-end models, it is available as an option on the Fiesta S — the cheapest car Ford sells in the US — for $95. Doug DeMuro loves it. It’s also a lock, and that means it’s ready to be exploited. Surely, someone can build a robot to crack this lock. Turns out, it’s pretty easy.

The electronics and mechanical part of this build are pretty simple. An acrylic frame holds five solenoids over the keypad, and this acrylic frame attaches to the car with magnets. There’s a second large protoboard attached to this acrylic frame loaded up with an Arduino, character display, and a ULN2003 to drive the resistors. So far, everything you would expect for a ‘robot’ that will unlock a car via its keypad.

The real trick for this build is making this electronic lockpick fast and easy to use. This project was inspired by [Samy Kamkar]’s OpenSesame attack for garage door openers. In this project, [Samy] didn’t brute force a code the hard way by sending one code after another; (crappy) garage door openers only look at the last n digits sent from the remote, and there’s no penalty for sending the wrong code. In this case, it’s possible to use a De Bruijn sequence to vastly reduce the time it takes to brute force every code. Instead of testing tens of thousands of different codes sequentially, this robot only needs to test 3125, something that should only take a few minutes.

Right now the creator of this project is putting the finishing touches on this Ford-cracking robot. There was a slight bug in the code that was solved by treating the De Bruijn sequence as circular, but now it’s only a matter of time before a 1993 Ford Taurus wagon becomes even more worthless.

Learn Six Oscilloscope Measurements With One Arduino

We won’t mention names, but we are always dismayed to see people twist knobs randomly on a scope until it shows a good picture. These days, there’s the dreaded auto button, too, which is nearly as bad. If you haven’t spent the time to learn how to properly use a scope [Bald Engineer] has a great introduction to making six measurements with an Arduino as a test device.

To follow along you’ll need an Arduino UNO and a two-channel (or better) scope. Actually, most of the measurements would probably work on any Arduino, but there are some that require the separate USB to serial chip like that found on the UNO and similar boards.

The six measurements are:

  1. The auto reset programming pulse
  2. Capture and decode serial data
  3. Noise on the power rail
  4. Observe probe loading effects
  5. PWM duty cycle
  6. The timing of pin manipulation code

Some of these measurements use a bit of Arduino code, while others just make use of the circuitry on the board no matter what software is running.

Not only does the post show you where to make the measurements and what the result should look like, there’s also a discussion of what the measurement means and some suggested things to try on your own.

If you go through this post, you might also enjoy learning more about probes. If you are feeling adventurous, you can even build your own current probe.

A Crash Course In Reliable Communication

It’s probably fair to say that anyone reading these words understands conceptually how physically connected devices communicate with each other. In the most basic configuration, one wire establishes a common ground as a shared reference point and then the “signal” is sent over a second wire. But what actually is a signal, how do the devices stay synchronized, and what happens when a dodgy link causes some data to go missing?

All of these questions, and more, are addressed by [Ben Eater] in his fascinating series on data transmission. He takes a very low-level approach to explaining the basics of communication, starting with the concept of non-return-to-zero encoding and working his way to a shared clock signal to make sure all of the devices in the network are in step. Most of us are familiar with the data and clock wires used in serial communications protocols like I2C, but rarely do you get to see such a clear and detailed explanation of how it all works.

He demonstrates the challenge of getting two independent devices to communicate, trying in vain to adjust the delays on the receiving and transmitting Arduinos to try to establish a reliable link at a leisurely five bits per second. But even at this digital snail’s pace, errors pop up within a few seconds. [Ben] goes on to show that the oscillators used in consumer electronics simply aren’t consistent enough between devices to stay synchronized for more than a few hundred bits. Until atomic clocks come standard on the Arduino, it’s just not an option.

[Ben] then explains the concept of a dedicated clock signal, and how it can be used to make sure the devices are in sync even if their local clocks drift around. As he shows, as long as the data signal and the clock signal are hitting at the same time, the actual timing doesn’t matter much. Even within the confines of this basic demo, some drift in the clock signal is observed, but it has no detrimental effect on communication.

In the next part of the series, [Ben] will tackle error correction techniques. Until then, you might want to check out the fantastic piece [Elliot Williams] put together on I2C.

[Thanks to George Graves for the tip.]

Continue reading “A Crash Course In Reliable Communication”

Poetry Is The Fruit Of This Loom

We’d wager that most people reading these words have never used a loom before. Nor have most of you churned butter, or ridden in a horse-drawn wagon. Despite these things being state of the art technology at one point, today the average person is only dimly aware of their existence. In the developed world, life has moved on. We don’t make our own clothes or grow our own crops. We consume, but the where and how of production has become nebulous to us.

[David Heisserer] and his wife [Danielle Everine], believe this modern separation between consumption and production is a mistake. How can we appreciate where our clothing comes from, much less the people who make it, without understanding the domestic labor that was once required to produce even a simple garment? In an effort to educate the public on textile production in a fun and meaningful way, they’ve created a poetry printing loom called Meme Weaver.

The Meme Weaver will be cranking out words of woolen wisdom at the Northern Spark Festival taking place June 15th and 16th in downtown Minneapolis. If any Hackaday readers in the area get a chance to check out the machine, we’d love to hear about it in the comments. Take photos! Just don’t blame us if you have a sudden urge to make all of your clothing afterwards.
Continue reading “Poetry Is The Fruit Of This Loom”

Automatic Sunglasses For The Lazy Hacker

[Andreas] may have created the ultimate lazy hacker accessory: automatic sunglasses, or “Selfblending sunglasses” as he creatively titled his video. If you can’t tell from the name, these are glasses that you never have to take off. If the light is dim, they move away from your eyes. Going back outside to bright light? The glasses move to protect your eyes.

The glasses consist of a couple of micro servos which move tinted lenses toward or away from the user’s eyes. A side-mounted Arduino Uno reads a CdS cell light sensor and drives the servos.  Why an Uno rather than a much more wearable Arduino Nano? It’s what [Andreas] had lying around.

Yes, a good portion of the fun of this build is [Andreas’] comedy. But the best part comes when he tests the glasses out — in an actual car on the highway. The glasses work better than expected — moving the lenses into and out of [Andreas] field of view as he drives through tunnels. You can actually see how surprised [Andreas] is that it works so well.

These aren’t the first automatic sunglasses we’ve seen, nor are they the most peril-sensitive. Still, it’s a fun project and the video gave us a few chuckles.

Continue reading “Automatic Sunglasses For The Lazy Hacker”

Simplifying Basic LED Effects

There was a time when having a blinking blue LED on a project was all you needed to be one of the cool kids. But now you need something more complex. LEDs should not just snap on, they should fade in and out. And blinking? Today’s hotness is breathing LEDs. If that’s the kind of project you want, you should check out [jandelgado’s] jled library.

At first glance, an Arduino library for LED control might seem superfluous, but if you are interested in nice effects, the coding for them can be a bit onerous. If you don’t mind stopping everything while you fade an LED on (or off) then sure, you just write a loop and it is a few lines of code. But if you want to have it happen while other things continue to execute, it is a little different. The library makes it very simple and it is also nicely documented.

Continue reading “Simplifying Basic LED Effects”

Smart Citizen Opens Eyes And Ears In Barcelona

More often than not, our coverage of projects here at Hackaday tends to be one-off sort of thing. We find something interesting, write it up for our beloved readers, and keep it moving. There’s an unending world of hacks and creations out there, and not a lot of time to cover them all. Still, it’s nice when we occasionally see a project we’ve previously covered “out in the wild” so to speak. A reminder that, while a project’s time on the Hackaday front page might be fleeting, their journey is far from finished.

A perfect example can be found in a recent article posted by the BBC about the battle with noise in Barcelona’s Plaza del Sol. The Plaza is a popular meeting place for tourists and residents alike, with loud parties continuing into the middle of the night, those with homes overlooking the Plaza were struggling to sleep. But to get any changes made, they needed a way to prove to the city council that the noise was beyond reasonable levels.

Enter the Smart Citizen, an open source Arduino-compatible sensor platform developed by Fab Lab Barcelona. We originally covered the Smart Citizen board back in 2013, right after it ran a successful funding campaign on Kickstarter. Armed with the data collected by Smart Citizen sensors deployed around the Plaza, the council has enacted measures to try to quiet things down before midnight.

Today people tend to approach crowdfunded projects with a healthy dose of apprehension, so it’s nice to see validation that they aren’t all flash in the pan ideas. Some of them really do end up making a positive impact, years after the campaign ends.

Of course, we can’t talk about distributed environmental monitoring without mentioning the fantastic work of [Radu Motisan], who’s made it his mission to put advanced sensors in the hands of citizen scientists.

[Thanks to muA for the tip.]