Police Want Alexa Data; People Begin To Realize It’s Listening

It is interesting to see the wide coverage of a police investigation looking to harvest data from the Amazon Echo, the always-listening home automation device you may know as Alexa. A murder investigation has led them to issue Amazon a warrant to fork over any recordings made during the time of a crime, and Amazon has so far refused.

Not too long ago, this is the sort of news would have been discussed on Hackaday but the rest of my family would have never heard about it. Now we just need to get everyone to think one step beyond this and we’ll be getting somewhere.

What isn’t being discussed here is more of concern to me. How many of you have a piece of tape over your webcam right now? Why did you do that? It’s because we know there are compromised systems that allow attackers to turn on the camera remotely. Don’t we have to assume that this will eventually happen with the Echo as well? Police warrants likely to affect far less users than account breaches like the massive ones we’ve seen with password data.

All of the major voice activated technologies assert that their products are only listening for the trigger words. In this case, police aren’t just looking for a recording of someone saying “Alexa, help I’m being attacked by…” but for any question to Alexa that would put the suspect at the scene of the crime at a specific time. Put yourself in the mind of a black hat. If you could design malware to trigger on the word “Visa” you can probably catch a user giving their credit card number over the phone. This is, of course, a big step beyond the data already stored from normal use of the system.

It’s not surprising that Amazon would be served a warrant for this data. You would expect phone records (although not recordings of the calls) to be reviewed in any murder case. Already disclosed in this case is that a smart water meter from the home reported a rather large water usage during the time of the murder — a piece of evidence that may be used to indicate a crime scene clean-up effort.

What’s newsworthy here is that people who don’t normally think about device security are now wondering what their voice-controlled tech actually hears them say. And this is a step in the right direction.

SKiDL: Script Your Circuits In Python

SKiDL is very, very cool. It’s a bit of Python code that outputs a circuit netlist for KiCAD.

Why is this cool? If you design a PCB in KiCAD, you go through three steps: draw the schematic, assign footprints to the symbolic parts, and then place them. The netlist ties all of these phases together: it’s a list of which parts are connected to which, the output of schematic capture and the input for layout. The ability to generate this programmatically should be useful.

For instance, you could write a filter circuit generator that would take the order, cutoff, and type of filter as inputs, and give you a spec’ed netlist as output. Bam! In your next design, when you need a different filter, you just change a couple of variables. Writing your circuits as code would make arranging the little sub-circuits modular and flexible, like functions in code.

At the very least, it’s an interesting alternative to the mouse, click, drag, click paradigm that currently dominates the schematic capture phase. Just as some of you like OpenSCAD for 3D modelling, some of you will like SKiDL for circuit design.

We’ve become so accustomed to the circuit diagram as the means of thinking about circuits that we’re not sure that we can ever give up the visual representation entirely. Maybe designing with SKiDL will be like sketching out block diagrams, where each block is a bit of Python code that generates a circuit module? Who knows? All we know is that it sounds potentially interesting, and that it’ll certainly be mind-expanding to give it a try.

Give it a shot and leave feedback down in the comments!

In Defense Of The Electric Chainsaw

Here at Hackaday we are a diverse bunch, we all bring our own experience to the task of bringing you the best of the hardware scene. Our differing backgrounds were recently highlighted by a piece from my colleague [Dan] in which he covered the teardown of a cordless electric chainsaw.

It was his line “Now, we’d normally shy away from any electric chainsaw, especially a cordless saw, and doubly so a Harbor Freight special“. that caught my eye. I’m with him on cordless tools which I see as a cynical ploy from manufacturers to ensure 5-yearly replacements, and I agree that cheap tools are a false economy. But electric chainsaws? Here on this small farm, they’re the saw of choice and here’s why.

Continue reading “In Defense Of The Electric Chainsaw”

Micro Radio Time Station Keeps Watch In Sync

The US National Institute of Standards and Technology (NIST) broadcasts atomic clock time signals from Fort Collins, Colorado on various frequencies. The WWVB signal on 60 kHz blasts out 70,000 watts that theoretically should reach the entire continental US. Unfortunately for [Anish Athalye], the signals do not reach his Massachusetts dorm, so he built this GPS to WWVB converter to keep his Casio G-Shock self-setting watch on track.

Not a repeater but a micro-WWVB transmitter, [Anish]’s build consists of a GPS receiver module and an ultra low-power 60kHz transmitter based on an ATtiny44a microcontroller’s hardware PWM driving a ferrite rod antenna. It’s not much of a transmitter, but it doesn’t need to be since the watch is only a few inches away. That also serves to keep the build in compliance with FCC regulations regarding low-power transmissions. Heavy wizardry is invoked by the software needed to pull time data off the GPS module and convert it to WWVB time code format, with the necessary time zone and Daylight Savings Time corrections. Housed in an attractive case, the watch stand takes about three minutes to sync the watch every night.

[Anish] offers some ideas for improving the accuracy, but we think he did just fine with this build. We covered a WWVB signal spoofer before, but this build is far more polished and practical.

Animated EV Charge Cable Enlightens Us

[ch00f] was searching for an idea to build for his father this Christmas, and cast his gaze across those novelty phone charging cables that have “flowing” LEDs along their length. Not one to stick to the small scale, he set out to create a flowing LED effect for a Tesla EV charger.

ch00f-led-ev-chargerThe basic components behind the build are a current transformer, a NeoPixel LED strip, and an ATtiny44 to run the show. But the quality of the build is where [ch00f]’s project really shines. The writeup is top notch — [ch00f] goes to great lengths showing every detail of the build. The project log covers the challenges of finding appropriate wiring & enclosures for the high power AC build, how to interface the current-sense transformer to the microcontroller, and shares [ch00f]’s techniques for testing the fit of components to ensure the best chance of getting the build right the first time. If you’ve ever gotten a breadboarded prototype humming along sweetly, only to suffer as you try to cram all the pieces into a tiny plastic box, you’ll definitely pick something up here.

Perhaps you’d like to check out this teardown of a Tesla Model S battery. Video after the break.

Continue reading “Animated EV Charge Cable Enlightens Us”

FORTRAN For The Web

There’s an old saying: “I don’t know what programming language scientists and engineers will use in the 22nd century, but I know it will be called FORTRAN.” FORTRAN was among the first real programming languages and, along with LISP, one of the oldest still in common use. If you are one of those that still loves FORTRAN, you no longer have to be left out of the Web development craze thanks to Fortran.io.

Naturally, the Fortran.io site is served by — what else — FORTRAN. The system allows for Jade templates, SQLite databases, and other features aimed at serving up web pages. The code is hosted on GitHub, and you can find several examples there, as well.

If you’ve ever wanted to do formatted I/O to a web page, here’s your chance. Come to think of it, why not? We’ve seen servers in BASIC and even in Linux shell script. Of course, today’s FORTRAN isn’t the one we learned back in the 1970’s (we assume if you didn’t learn about FORTRAN in the 1970’s, you quit reading this post a while back… prove us wrong and show us your FORTRAN projects).

Jenkins Lights The Christmas Tree

Jenkins is open-source automation software that tries to automate parts of the software development process. When you submit code, for example, Jenkins will grab it, build the project with it and run any tests on it. If you have a large number of people submitting new code or data, Jenkins will wait and grab a bunch of the submissions to build. Depending on the size of the project, this can take a while, and if there’s a problem, you need to know quickly so that people aren’t waiting on a broken build. Email’s fine for this, but [dkt01] saw one of the desktop LED Christmas tree projects on Hackaday, and integrated it into his Jenkins system.

Like the other projects, WS2812b LED rings are used as the tree, and an Arduino Pro Mini runs the show, with an Ethernet LAN Module to communicate with the Python script that monitors the Jenkins build job. The Python script sends commands to the Arduino, which in turn lights up the LEDs. They light up green on a successful build and red if something fails, but during the build process, the LEDs show the current state of the build, tracking Jenkins’ progress as it builds.

Our previous Jenkins post used a big, red LED light that would light up if the build failed. [dkt01]’s build lets you know if the build is successful or has failed, but the build progress is a great addition.

Continue reading “Jenkins Lights The Christmas Tree”