Posts | Comments

Planet Arduino

Archive for the ‘iot’ Category

No matter who you are,  you produce garbage of some kind or another. Two students decided they wanted to create a smart garbage can that could alert them when the can is full or even when it is stinky.

We will go on on the record: we didn’t know that an alcohol sensor could tell if your garbage is stinky, so if that works, that’s a new one on us. However, it makes a certain kind of sense because garbage ferments. We thought garbage smelled because of hydrogen sulfide and methane.

Trash cans have a tough life, so if you really want to duplicate this, you’ll probably want to mount things a bit more securely. The software, however, runs everything through a cloud service and from there can use Blynk for a phone app and IFTTT to ship things to a spreadsheet, should you care to track your garbage history statistics.

You can see in the video this is a small proof of concept can. We almost want to build one just to see if the sensor really knows when the can is smelly.

Granted, the project may not be the most practical, but it is amazing how easy it is now to build devices with a high degree of connectivity thanks to the wealth of inexpensive boards and services available.

This isn’t the first time we’ve seen Blynk. For that matter, it isn’t even our first smart trash can.

You don’t have to be an extinct mammal or a Millennial to enjoy the smooth, buttery taste of an avocado. Being psychic on the other hand is definitely an advantage to catch that small, perfect window between raw and rotten of this divaesque fruit. But don’t worry, as modern problems require modern solutions, [Eden Bar-Tov], [Elan Goldberg], and [Mizpe Ramon] built the AvoRipe, a device to notify you when your next avocado has reached that window.

Taking both the firmness and color of an avocado as indicators of its ripeness into account, the team built a dome holding a TCS3200 color sensor as stand for the avocado itself, and 3D printed a servo-controlled gripper with a force sensor attached to it. Closing the gripper’s arms step by step and reading the force sensor’s value will determine the softness the avocado has reached. Using an ESP8266 as centerpiece, the AvoRipe is turned into a full-blown IoT device, reporting the sensor readings to a smartphone app, and collecting the avocado’s data history on an Adafruit.IO dashboard.

There is unfortunately one big drawback: to calibrate the sensors, a set of nicely, ripe avocados are required, turning the device into somewhat of a chicken and egg situation. Nevertheless, it’s a nice showcase of tying together different platforms available for widescale hobbyist projects. Sure, it doesn’t hurt to know how to do each part from scratch on your own, but on the other hand, why not use the shortcuts that are at our disposal to remove some obstacles — which sometimes might include programming itself.

Okay, we’ve just left May and stepped into June, why are we talking about Arduino Day — traditionally a March 16th event where makers congregate and share projects? I live in Ho Chi Minh City, and the event tends to take place in mid-May, but the enthusiasm and collaborative spirit are just as strong. Organized by the awesome local maker group Fablab Saigon with the venue provided by Intek Institute, there were some neat projects on display along with some talks from local companies.

The first thing that struck me about the event was how young the maker movement is here – most attendees were still in high school or early university. By contrast, I was 23 when I first learned to use AVR microcontrollers with assembly language (by the time Arduino started to get traction the boat effectively missed me). I couldn’t help but feel like a bit of a relic, at least until we all started talking excitedly about robots (I had brought a couple). It seems that geeking out about electronics is the great equalizer which knows no age limits.

Tesla Coils, Blinking Circuits, and Robot Races

Among the projects on display was this low-power Tesla coil, happily making small sparks, turning on CCFL bulbs in its immediate vicinity, and generating a bit of plasma too.

There was a learn to solder workshop for attendees to join in anytime and produce artful dead-bug style transistor multivibrator circuits.

Many of you will be familiar with the astable multivibrator circuit seen here as a popular introduction to electronics and soldering. But if you’re not, it’s a good place to start as you’ll learn about several different components, and the result has blinking lights… while leaving your Arduino free to be used in other projects! Someone had also brought in a bit of a show-and-tell on using GSM modules here.

Next there was a workshop where rover-style robots were built from a locally developed STEM education kit called GaraStem. Fundamentally, it’s a tacklebox filled with instructions, laser-cut chassis parts, an Arduino compatible board and sensors, and an Android control application for your smartphone. It looked easy and fun to work with, and I wish that STEM robot kits like this were available when I was a kid. I can’t help but feel a little jealous – all we had in my area when I was in high school was the occasional science fair!

Of course, any time more than one remote controlled robot is in the same place, a race is necessary and we got right to that. Entirely by coincidence, the floors were painted in a way that sort of looked like a racetrack.

Talks from Hardware Startups

Besides the projects and workshops, there was a track of talks from local companies on what they’ve been up to. One of them, called Indruino, designs their own Arduino boards for use in industrial environments, along with all the bells and whistles that requires. They had a good demo of a speed controller for a 3-phase motor, and talked about what they’ve done to make the platform suitable for industrial use.

At the very least, I could tell that their boards made ample use of optoisolators, secure connectors, and high quality shielded DC-DC converters. According to their pamphlet, they’ve already deployed in a number of factories, with industrial touchscreens and a freeze-drying system controller — not surprising as freeze dried foods is an industry that has really been taking off in Vietnam the last few years and designing what you can locally is a good move.

Vulcan Augmentics, a local startup that designs modular prosthetic limbs was there to present their work on practical human-machine interfaces. For a variety of reasons, there are quite a few amputees of all ages in Vietnam, and so any effort to better serve them is certainly appreciated. Unfortunately, their prosthetic limbs were either overseas or in use at the time, so I couldn’t examine the hardware. Nonetheless, it’s a nice example of how the skills we learn as a hobby can one day develop to the point where we can make a positive impact on another person’s life.

I presented some IoT use cases and demos, many of which I’ve written about here, along with some notes on the importance and implementation of security such as MQTT with either AES or TLS. I also talked about ways to define reliable failure states for IoT devices in case of loss of connectivity. While it’s an extreme example, you can’t have a large robot plow into a wall because the last command received before a connection loss was ‘go forward’! Of course, there exists the argument that we shouldn’t be connecting dangerous robots to the Internet frivolously in the first place, but it’s not very interesting and the lessons in control systems still apply. It was good fun and no robot, human, or architecture was harmed.

Chúc mừng sinh nhật Arduino!

Even the Cake was High Tech

At the end of the day, there was the requisite cake (strawberry jam). The local bakeries have something like a type of marzipan sheet that they can print on at a surprisingly good resolution, and the cake featured some pretty good imagery as a result.

The event wrapped up with a trivia competition, with some kits that had been donated as prizes for the highest scores.

Overall the sense of community at the event was strong, and despite the fairly high attendance it was well organized. My hat is off to Fablab Saigon for putting it together.

When you think of world-changing devices, you usually don’t think of the washing machine. However, making laundry manageable changed not only how we dress but how much time people spent getting their clothes clean. So complaining about how laborious our laundry is today would make someone from the 1800s laugh. Still, we all hate the laundry and [Andrew Dupont], in particular, hates having to check on the machine to see if it is done. So he made Laundry Spy.

How do you sense when the machine — either a washer or a dryer — is done? [Andrew] thought about sensing current but didn’t want to mess with house current. His machines don’t have LED indicators, so using a light sensor wasn’t going to work either. However, an accelerometer can detect vibrations in the machine and most washers and dryers vibrate plenty while they are running.

The four-part build log shows how he took an ESP8266 and made it sense when the washer and dryer were done so it could text his cell phone. He’d already done a similar project with an Adafruit HUZZAH. But he wanted to build in some new ideas and currently likes working with NodeMCU. While he was at it he upgraded the motion sensor to an LIS3DH which was cheaper than the original sensor.

[Andrew] already runs Node – RED on a Raspberry Pi, so incorporating this project with his system was a snap. Of course, you could adapt the approach to lots of other things, as well. The device produces MQTT messages and Node – RED subscribes to them. The Pushover handles the text messaging. Node – RED has a graphical workflow that makes integrating all the pieces very intuitive. Here’s the high-level workflow:

You might wonder why he didn’t just have the ESP8266 talk directly to Pushover. That is possible, of course, but in part 2, [Andrew] enumerates some good reasons for his design. He wants to decouple components in the system for easier future upgrades. And MQTT is simple to publish on the sensor side of things compared to API calls which are handled by the Raspberry Pi for now.

Laundry monitoring isn’t a unique idea and everyone has a slightly different take on it, even some Hackaday authors. If phone notification is too subtle for you, you can always go bigger.

How can you help advance Industry 4.0 using the Arduino ecosystem? From robots and predictive maintenance to remote control and data acquisition, we’ve teamed up Distrelec to launch a new Automation & Robotics Contest challenging our community to create innovative solutions that can make the industry faster, cheaper, more flexible, and efficient.

Participants are required to tap into our extensive range of IoT boards like the MKR1000 WiFi and MKR GSM 1400, libraries, and online platform to bring their ideas to life. Industrial automation projects could target energy management, remote monitoring, machine safety, or predictive maintenance, for example, using Arduino Create to set up, control, and connect your Arduino, Intel, and Arm-based devices. Robotics projects could include designs for surveillance drones, robotic arms, rovers, or autonomous transportation, leveraging feature-rich boards like the Mega and Due to prototype advanced systems. 

How to Enter

  • Create a free account on Arduino.cc (or log in if already a member).
  • Register for the contest by clicking “Register as a participant.”
  • Send your concept to the Arduino/Distrelec: Automation & Robotics Contest by June 29, 2018. The top 150 makers will receive a coupon for Distrelec online store. Moreover, there will be a series of micro contests, with weekly prizes handed out from Distrelec.
  • Design, build, and submit your project by September 16, 2018. Winning projects will be selected based on their originality, quality, creativity, and social impact. 

Prizes

Ready to get started? You can find more information on the contest here and browse Distrelec’s entire Arduino lineup on their website. To submit your ideas, please visit the Arduino Project Hub. And remember, projects must use an Arduino board in order to be eligible to win!

Back in the olden days, when the Wire library still sucked, the Arduino was just a microcontroller. Now, we have single board computers and cheap microcontrollers with WiFi built in. As always, there’s a need to make programming and embedded development more accessible and more widely supported among the hundreds of devices available today.

At the Embedded Linux Conference this week, [Massimo Banzi] announced the beginning of what will be Arduino’s answer to the cloud, online IDEs, and a vast ecosystem of connected devices. It’s Arduino Create, an online IDE that allows anyone to develop embedded projects and manage them remotely.

As demonstrated in [Massimo]’s keynote, the core idea of Arduino Create is to put a connected device on the Internet and allow over-the-air updates and development. As this is Arduino, the volumes of libraries available for hundreds of different platforms are leveraged to make this possible. Right now, a wide variety of boards are supported, including the Raspberry Pi, BeagleBone, and several Intel IoT boards.

The focus of this development is platform-agnostic and focuses nearly entirely on ease of use and interoperability. This is a marked change from the Arduino of five years ago; there was a time when the Arduino was an ATmega328p, and that’s about it. A few years later, you could put Arduino sketches on an ATtiny85. A lot has changed since then. We got the Raspberry Pi, we got Intel stepping into the waters of IoT devices, we got a million boards based on smartphone SoCs, and Intel got out of the IoT market.

While others companies and organizations have already made inroads into an online IDE for Raspberry Pis and other single board computers, namely the Adafruit webIDE and Codebender, this is a welcome change that already has the support of the Arduino organization.

You can check out [Massimo]’s keynote below.

Fidget spinners — so hot right now!

[Ben Parnas], and co-conspirator in engineering inanity [Greg Daneault], brought to the recent Boston Stupid Hackathon in Cambridge, MA, their IoT-enabled Fidget Spinner…. spinner. A Spidget Finner. Yep, that’s correct: spin the smartphone, and the spinner follows suit. Stupid? Maybe, but for good reason.

Part satire on cloud tech, part learning experience, a curt eight hours of tinkering brought this grotesque, ESP32-based device to life. The ESP can the Arduino boot-loader, but you’ll want to use the ESP-IDF sdk, enabling broader use of the chip.

Creating an app that pulls data from the phone’s gyroscope, the duo set up the spinner-bot to access the WiFi and request packets of rotational data from the smartphone via a cloud-based server — the ‘spincloud.’ Both devices were enabled as clients to circumvent existing IoT services.

[Parnas] stipulates that — theoretically — you could control as many spinners as you can imagine with this setup, but one is quite enough of a silly idea for us. Ridiculous or not — if you learn something, then it’s probably worthwhile! So keep hacking away at those ideas and you might be able to justify it to all the people with concerned stares.

To start, you can tell them you’re in  good company.


Filed under: Android Hacks, Arduino Hacks

On Arduino Day, we announced the latest member of the Arduino MKR family: the MKRFOX1200. This powerful IoT development board offers a practical and cost effective solution for Makers looking to add Sigfox connectivity to their projects with minimal previous networking experience.  

The MKRFOX1200 shares several similarities with other MKR products, like the MKR1000 and MKRZero, including a compact form factor (67 x 25mm) and a Microchip SAM D21 32-bit Cortex-M0+ microcontroller at its core. The recently unveiled board also features an ATA8520 module for long-range, low-energy consumption, and is capable of running for over six months on two standard AA 1.5V batteries.

Designed for Makers ready to take their IoT projects into the real world, the MKRFOX1200 comes with a GSM antenna that can be attached to the board and a two-year subscription to the Sigfox network. This provides users with full access to Sigfox’s efficient messaging system (up to 140 messages per day), cloud platform, webhooks, APIs, as well as the new Spot’it geolocation service.

MKRFOX1200 can be used in a wide variety of settings, from agriculture (livestock management, smart irrigation and weather stations), to smart cities (dumpster monitoring, air quality networks, street lighting or parking lot tracking), to utility metering and other industrial applications.

“Sigfox loves Makers,” says Nicolas Lesconnec, Head of Developer Relations at Sigfox. “Sigfox aims to empowers billions of new IoT solutions. We’re proud to partner with Arduino, the leading open-source electronics platform, to offer the simplest way to connect anything.”

Sigfox currently operates in over 30 countries, with more to follow in the next few years. (Use this map to see whether it has been deployed or is rolling out in your area.) The first version of the MKRFOX1200 is compatible with Sigfox Radio Configuration Zone 1 (868MHz, 14dBm), meaning it is only supported in network-covered regions of Europe, the Middle East, and South Africa.

The board is now available on Arduino’s European online store!

The project itself is very simple: getting push notifications via MQTT when a wireless doorbell sounds. But as [Robin Reiter] points out, as the “Hello, world!” program is a time-honored tradition for coders new to a language, so too is his project very much the hardware embodiment of the same tradition. And the accompanying video build log below is a whirlwind tour that will get the first-timer off the ground and on the way to MQTT glory.

The hardware [Robin] chose for this primer is pretty basic – a wireless doorbell consisting of a battery-powered button and a plug-in receiver that tootles melodiously when you’ve got a visitor. [Robin] engages in a teardown of the receiver with attempted reverse engineering, but he wisely chose the path of least resistance and settled on monitoring the LEDs that flash when the button is pushed. An RFduino was selected from [Robin]’s ridiculously well-organized parts bin and wired up for the job. The ‘duino-fied doorbell talks Bluetooth to an MQTT broker on a Raspberry Pi, which also handles push notifications to his phone.

The meat of the build log, though, is the details of setting up MQTT. We’ve posted a lot about MQTT, including [Elliot Williams]’ great series on the subject. But this tutorial is very nuts and bolts, the kind of thing you can just follow along with, pause the video once in a while, and have a working system up and running quickly. There’s a lot here for the beginner, and even the old hands will pick up a tip or two.


Filed under: Arduino Hacks, home hacks

IoT, web apps, and connected devices are all becoming increasingly popular. But, the market still resembles a wild west apothecary, and no single IoT ecosystem or architecture seems to be the one bottle of snake oil we’ll all end up using. As such, we hackers are keen to build our own devices, instead of risking being locked into an IoT system that could become obsolete at any time. But, building an IoT device and interface takes a wide range of skills, and those who are lacking skill in the dark art of programming might have trouble creating a control app for their shiny new connected-thing.

Enter Involt, which is a framework for building hardware control interfaces using HTML and CSS. The framework is built on Node-Webkit, which means the conventions should be familiar to those with a bit of web development background. Hardware interactions (on Arduinos) are handled with simple CSS classes. For example, a button might contain a CSS class which changes an Arduino pin from high to low.

Involt can take that CSS and convert it into a function, which is then sent to the Arduino via serial or Bluetooth communication. For more advanced functionality, Javascript (or really any other language) can be used to define what functions are generated — and, in turn, sent to the Arduino. But, all that is needed for the basic functionality necessary for many IoT devices (which might only need to be turned on and off, or set to a certain value) is a bit of HTML and CSS knowledge. You’ll create both the interface and the underlying hardware interactions all within an HTML layout with CSS styling and functionality.

While Involt isn’t the only framework to simplify hardware interaction (it’s not even the only Node.js based method), the simplicity is definitely laudable. For those who are just getting started with these sorts of devices, Involt can absolutely make the process faster and less painful. And, even for those who are experienced in this arena, the speed and efficiency of prototyping with Involt is sure to be useful.


Filed under: Arduino Hacks


  • Newsletter

    Sign up for the PlanetArduino Newsletter, which delivers the most popular articles via e-mail to your inbox every week. Just fill in the information below and submit.

  • Like Us on Facebook