Alexa Keeps Pet Snake Thermoregulated

[Chris Grill] got his hands on a pet boa constrictor, which requires a fairly strict temperature controlled environment. Its enclosure needs to have a consistent temperature throughout, or the snake could have trouble regulating its body temperature. [Chris] wanted to keep tabs on the temp and grabbed a few TTF-103 thermistors and an Arduino Yun, which allowed him to log the temperature on each side of the enclosure. He used some code to get the temp reading to the linux side of an Arduino Yun, and then used jpgraph, a PHP graphing library, to display the results.

snakemainBut that wasn’t good enough. Why not get a little fancy and have Amazon’s Echo read the temps back when you ask! Getting it setup was not so bad thanks to Amazon’s well documented steps to get custom commands set up.

He eventually lost the battle to get the Echo to talk to the web server on the Yun due to SSL issues, but he found an existing workaround by using a proxy.

Continue reading “Alexa Keeps Pet Snake Thermoregulated”

ArduWorm: A Malware For Your Arduino Yun

We’ve been waiting for this one. A worm was written for the Internet-connected Arduino Yun that gets in through a memory corruption exploit in the ATmega32u4 that’s used as the serial bridge. The paper (as PDF) is a bit technical, but if you’re interested, it’s a great read. (Edit: The link went dead. Here is our local copy.)

The crux of the hack is getting the AVR to run out of RAM, which more than a few of us have done accidentally from time to time. Here, the hackers write more and more data into memory until they end up writing into the heap, where data that’s used to control the program lives. Writing a worm for the AVR isn’t as easy as it was in the 1990’s on PCs, because a lot of the code that you’d like to run is in flash, and thus immutable. However, if you know where enough functions are located in flash, you can just use what’s there. These kind of return-oriented programming (ROP) tricks were enough for the researchers to write a worm.

In the end, the worm is persistent, can spread from Yun to Yun, and can do most everything that you’d love/hate a worm to do. In security, we all know that a chain is only as strong as its weakest link, and here the attack isn’t against the OpenWRT Linux system running on the big chip, but rather against the small AVR chip playing a support role. Because the AVR is completely trusted by the Linux system, once you’ve got that, you’ve won.

Will this amount to anything in practice? Probably not. There are tons of systems out there with much more easily accessed vulnerabilities: hard-coded passwords and poor encryption protocols. Attacking all the Yuns in the world wouldn’t be worth one’s time. It’s a very cool proof of concept, and in our opinion, that’s even better.

Thanks [Dave] for the great tip!

Irrighino, An Arduino Yun Based Watering System

There are many different ways to keep your plants watered on a schedule. [Luca Dentella] just created a new one by building the irrighino watering system. He used standard off the shelf, hardware to keep it simple. Irrighino is a complete watering system based on the Arduino Yun, featuring a user friendly AJAX interface. This allows scheduling in a manner similar to creating appointments in Outlook. It’s also possible to manually control the various water solenoids. The code is fully customizable and open source, with code available from [Luca’s] github repository. The web interface is divided in to three tabs – “runtime” for manual control, “setup” to configure the scheduling, and “events” to view system logs.

The Arduino Yun activates solenoid valves via a relay shield. A switch panel has indicator Status LED’s and three position switches. These allow the outputs to be switched off or on manually, or controlled via the Yun when in auto mode. [Luca] describes how to read three states of the switch (On-Off-On) when connected to a single analog input of the Arduino. He’s also got another tutorial describing how to connect a USB WiFi adapter to the Yun. This is handy since the Yun is mounted inside an enclosure where the signal strength is very weak. While the Yun has on-board WiFi, there is no possibility to attach an external antenna directly to the test SMA socket.

One interesting part is the commercial rain sensor. It’s a switch surrounded by a spongy material. When this material absorbs rain water, it begins to expand and triggers the switch. The Arduino sees the sensor as a simple digital input.

Check a short demo of his system in the video after the break.

Continue reading “Irrighino, An Arduino Yun Based Watering System”

Open Hybrid Gives You The Knobs And Buttons To Your Digital Kingdom

With a sweeping wave of complexity that comes with using your new appliance tech, it’s easy to start grumbling over having to pull your phone out every time you want to turn the kitchen lights on. [Valentin] realized that our new interfaces aren’t making our lives much simpler, and both he and the folks at MIT Media Labs have developed a solution.

open-hybrid-light-color-pickerOpen Hybrid takes the interface out of the phone app and superimposes it directly onto the items we want to operate in real life. The Open Hybrid Interface is viewed through the lense of a tablet or smart mobile device. With a real time video stream, an interactive set of knobs and buttons superimpose themselves on the objects they control. In one example, holding a tablet up to a light brings up a color palette for color control. In another, sliders superimposed on a Mindstorms tank-drive toy become the control panel for driving the vehicle around the floor. Object behaviors can even be tied together so that applying an action to one object, such as turning off one light, will apply to other objects, in this case, putting all other lights out.

Beneath the surface, Open Hybrid is developed on OpenFrameworks with a hardware interface handled by the Arduino Yún running custom firmware. Creating a new application, though, has been simplified to be achievable with web-friendly languages (HTML, Javascript, and CSS). The net result is that their toolchain cuts out a heavy need for extensive graphics knowledge to develop a new control panel.

If you can spare a few minutes, check out [Valentin’s] SolidCon talk on the drive to design new digital interfaces that echo those we’ve already been using for hundreds of years.

Last but not least, Open Hybrid may have been born in the Labs, but its evolution is up to the community as the entire project is both platform independent and open source.

Sure, it’s not mustaches, but it’s definitely more user-friendly.

Continue reading “Open Hybrid Gives You The Knobs And Buttons To Your Digital Kingdom”

Is The Arduino Yun Open Hardware?

According to [Squonk42], nope. And we think he’s probably right.

The Yun is an Arduino Leonardo with an Atheros AR9331 WiFi SoC built in. It’s a great idea, pairing the Arduino with a tiny WiFi router that’s capable of running OpenWRT.  But how is this no longer Open Source Hardware? Try getting an editable board layout. You can’t.

Or at least [Squonk42] couldn’t. In Sept. 2013, [Squonk42] posted up on the Arduino forums requesting the schematics and editable design files for the Arduino Yun, and he still hasn’t received them or even a response.

Now this dude’s no slouch. He’s responsible for the most complete reverse-engineering of the TP-Link TL-WR703N pocket router, which is, not coincidentally, an Atheros AR9331-based reference design. And this is where the Arduini ran into trouble, [Squonk42] contends.

[Squonk42]’s hypothesis is that Arduino must have done what any “sane” engineer would do in this case when presented with a super-complex piece of hardware and a potentially tricky radio layout: just use the reference design (Atheros AP-121). That’s what everyone else in the industry did. And that’s smart, only the rest of the consumer electronics industry isn’t claiming to be Open Source Hardware while the reference design is protected by an NDA.

So it looks like Arduino’s hands are tied. They, or their partner Dog Hunter, either signed the NDA or downloaded the PDF of the reference design that’s floating around on the Interwebs. Either way, it’s going to be tough to publish the design files under a Creative Commons Attribution Share-Alike license.

Is this a change of strategy for the Arduino folks or did they just make a mistake? We won’t know until they respond, and that answer’s a year and a half in coming. Let’s see what we can do about that. And who knows, maybe Arduino can lean on Atheros to open up their reference design? It’s already an open secret at best.

But before you go out lighting up your righteous Open Source Hardware pitchforks and sharpening up your torches, read through [Squonk42]’s case and then dig through the primary sources that he’s linked to make up your own mind. You’ll make your case more eloquently if you’re making it yourself.

Good luck, [Squonk42]! We hope you at least get your answer. Even if you already know it.

A Wireless Web-Connected Morse Code Keyer

[Kevin] recently scored a Morse code keyer/sounder unit from the 1920s on eBay. While many hams would love to use an old keyer for CW, [Kevin] took a different route and repurposed it into a wireless web-connected morse code keyer.

[Kevin] mounted an Arduino Yun under the keyer, which listens for user input and provides web connectivity. The Yun connects to [Kevin]’s open-source web API he calls “morsel,” which allows it to send and receive messages with other morsel users. When a message is keyed in, the Yun publishes it to the API. When another keyer queries the API for incoming messages, the Yun downloads the morse sequence and replays it on the sounder.

[Kevin] also added some copper electrodes to the top of his enclosure, which act as capacitive buttons while keeping the keyer’s old-school appearance. The left button replays the most recently received message, and the right button sets the playback speed. Check out the video after the break to hear and see the keyer in action.

Thanks for the tip,  [Jarrod].

Continue reading “A Wireless Web-Connected Morse Code Keyer”

kickstarter notifications

Kickstarter Monitor Will Brighten Your Day

Keeping up with a kickstarter campaign can be quite a task, especially if your project is real (looking at you, Scribble Pen!) and you’re trying to keep up with product fabrication and all the other logistics involved in bringing a product to market. [macetech] are currently in the middle of a campaign themselves and built a loud, bright alert system to notify them of any new kickstarter backers.

The project uses a LED marquee to display the current number of backers, but every time a new backer contributes to the project, a blindingly bright green arrow traffic signal is illuminated and a piezo speaker plays a celebration tune. All of these devices are controlled by an Arduino Yun which, with its built-in Atheros chipset, easily connects to the network and monitors the kickstarter page for changes.

[macetech] used some interesting hardware to get everything to work together. They used a USB-to-RS232 cable with and FTDI chip to drive the LED marquee and a PowerSwitchTail 2 from Adafruit to drive the power-hungry traffic signal. Everything was put together in a presentable way for their workshop and works great! All of the source code is available on their project page, and you can check out their RGB LED Shades kickstarter campaign too.