You don’t have to be a car enthusiast to recognize that the 1984 Nissan 300x dash is a work of art. The graceful swoops and multisegment VFDs evoke an aesthetic that reminds us of a particular era. Rather than replace his dash with something drab and modern, [Evan] modified his dash to accept input from newer devices. Many of the sensors that feed directly into the dash are becoming harder to find as the years wear on, and rather than spoof every old device, [Evan] looked at each gauge.
Temperature and oil pressure are variable resistance sensors, and by removing half the voltage divider, it becomes a variable voltage sensor, as modern temperature sensors can output a voltage from 0 to 5. The tachometer required tracing the signal through the PCB as it expects a pulse every time a cylinder fires. By simulating cylinder pulses with a function generator, [Evan] found the filtering circuit and the microcontroller pin monitoring it. An optoisolator to protect the delicate MCU makes it easy to pipe the signal directly in.
Of course, not everything needed to be modified. A vacuum sensor provides a signal to the dash to indicate how much power the engine produces, which is pretty easy to spoof with a teensy connected to the CAN bus. All these mods are easily reversible and allow [Evan] to keep rocking the iconic dash with a more modern engine.
It’s an incredible hack that offers a view into how to trace, understand, and hack old electronics. Of course, if you’re keeping old built-in car bits, why not keep the carphone but connect it to your smartphone?
The Tesla Model 3 and Model Y are popular electric vehicles that dispense with some of the usual provisions you’d expect in a typical car. Namely, there’s no dash cluster in front of the driver; instead, all information is solely displayed on the center console screen. [Nick Nguyen] wasn’t a fan of this setup, and decided to hack together a dash cluster of his own.
The CANdash works in a simple fashion, snooping the Tesla’s CAN bus for all the information relevant to the vehicle’s operation. It’s capable of displaying everything from speed to the remaining range in the battery, while also allowing the user to keep an eye on things like coolant temperatures and whether the Tesla Autopilot system is currently available.
The build relies on a CANserver, an ESP32-based device specifically built for hooking up to the CAN bus on Tesla vehicles and sharing the data externally. The data can then be piped wirelessly to an Android phone running CANdash to display all the desired information. With the help of an aftermarket dash clip or a 3D printed custom mount, the phone can then be placed behind the steering wheel to display data in the usual location.
It’s a simple, straightforward hack that gives Tesla owners a useful feature that they’re otherwise missing from the factory. The US automakers cars are proving to be fertile ground for hackers and DIYers, with one man recently saving thousands on a battery swap with a simple mod. Video after the break.
Continue reading “Hacking A Proper Dash Into The Tesla Model 3”
On Unix — the progenitor of Linux — there was
/bin/sh. It was simple, by comparison to today’s shells, but it allowed you to enter commands and — most importantly — execute lists of commands. In fact, it was a simple programming language that could make decisions, loop, and do other things to allow you to write scripts that were more than just a list of programs to run. However, it wasn’t always the easiest thing to use, so in true Unix fashion, people started writing new shells. In this post, I want to point out a few shells other than the ubiquitous
bash, which is one of the successors to the old
Since the 7th Edition of Unix,
sh was actually the Bourne shell, named after its author, Stephen Bourne. It replaced the older Thompson shell written in 1971. That shell had some resemblance to a modern shell, but wasn’t really set up for scripting. It did have the standard syntax for redirection and piping, though. The PWB shell was also an early contender to replace Thompson, but all of those shells have pretty much disappeared.
You probably use
bash and, honestly, you’ll probably continue to use
bash after reading this post. But there are a few alternatives and for some people, they are worth considering. Also, there are a few special-purpose shells you may very well encounter even if your primary shell is
Continue reading “Linux Fu: Alternative Shells”
Amazon Dash is a handy service, and when Amazon released their AWS IoT platform, [Brian Carbonette] felt that it left out all the hardware hackers from the tinkering fun. Seeking justice, he put together a guide for an Arduino Dash button aimed at hardware hackers and those who are still easing into the world.
For his build, [Carbonette] used an Arduino MKR1000, laying out a few different configuration options for building your button. He has also gone to great lengths to help all comers tackle the Arduino-Dash API communication process by building an AmazonDRS Arduino Library, which handles all the “boring details,” so you can focus on the hardware. With the warning that the software-side setup is tedious the first time around, [Carbonette] has included a detailed manual for setting up the aforementioned AmazonDRS library, some example code, and a breakdown thereof. He also suggests implementing other features — such as a notification if the item is out of stock on Amazon — to tie the project together.
Continue reading “Dash With Arduino”
The Amazon Dash button is now in its second hardware revision, and in a talk at the 33rd Chaos Communications Congress, [Hunz] not only tears it apart and illuminates the differences with the first version, but he also manages to reverse engineer it enough to get his own code running. This opens up a whole raft of possibilities that go beyond the simple “intercept the IP traffic” style hacks that we’ve seen.
Just getting into the Dash is a bit of work, so buy two: one to cut apart and locate the parts that you have to avoid next time. Once you get in, everything is tiny! There are a lot of 0201 SMD parts. Hidden underneath a plastic blob (acetone!) is an Atmel ATSAMG55, a 120 MHz ARM Cortex-M4 with FPU, and a beefy CPU all around. There is also a 2.4 GHz radio with a built-in IP stack that handles all the WiFi, with built-in TLS support. Other parts include a boost voltage converter, a BTLE chipset, an LED, a microphone, and some SPI flash.
The strangest part of the device is the sleep mode. The voltage regulator is turned on by user button press and held on using a GPIO pin on the CPU. Once the microcontroller lets go of the power supply, all power is off until the button is pressed again. It’s hard to use any less power when sleeping. Even so, the microcontroller monitors the battery voltage and presumably phones home when it gets low.
Continue reading “33C3: Hunz Deconstructs The Amazon Dash Button”
We all know feature creep can be a problem in almost any project. A simple idea can often become unusable if a project’s scope isn’t clearly defined in the beginning. However, the opposite problem sometimes presents itself: forgetting to include a key feature. [Zach] had this problem when he built a Raspberry Pi magic mirror and forgot to build a physical reset/shutoff switch. Luckily he had a spare Amazon Dash button and re-purposed it for use with his Pi.
The Raspberry Pi doesn’t include its own on/off switch. Without installing one yourself, the only way to turn off the device (without access to the terminal) is to unplug it, which can easily corrupt data on the SD card. Since [Zach]’s mirror was already complete, he didn’t want to take the entire thing apart just to install a button. There’s already a whole host of applications for the Dash button, so with a little Node.js work on the Raspberry Pi he was able to configure a remote-reset button for his mirror.
This is a similar problem for most Raspberry Pi owners, so if you want to follow [Zach]’s work he has done a great job detailing his process on his project site. If you’re looking for other uses for these convenient network-enabled buttons, he also links to a Github site with lots of other projects. This pizza button is probably our favorite, though.
“It’s not a bomb,” the mailman whispered to himself as he reached for [atxguitarist]’s mailbox, giving a nervous glance at the small black box stuck to the side. “This is THAT house, it’s not a bomb. I’m sure it’s not a bomb,” he muttered as a cold bead of sweat ran down his neck. His hand approached slowly, shakily. The mailman gathered courage, then, in a single quick movement, opened the box. He sighed relief as nothing happened. Somewhere in [atxguitarist]’s house a recording wailed “You’ve got mail!”
The mailbox enhancement in question is a hacked Amazon Dash Button in a project box. When the door of the mailbox is opened, a magnetic reed switch simulates a button press on the Dash. The Dash transmodulates the signal into WiFi pixies which are received by a Raspberry Pi. The Pi’s sole purpose in life is to run a 24-line Python script that plays the famous sound from AOL’s mail software and sends a notification to his phone.
Aside from unnerving the mailman, it’s a cool hack and keeps you from slugging it out there in the cold or rain to witness an empty box.
Continue reading “Make Your Mailman Nervous With A Wifi Enabled Mailbox”