Author Archives: Arduino Team

Detect vandalism using audio classification on the Nano 33 BLE Sense

via Arduino Blog

Having something broken into and/or destroyed is an act that most people hope to avoid altogether or at least catch the perpetrator in the act when it does occur. And as Nekhil R. notes in his project write-up, traditional deterrence/detection methods often fail, meaning that a newer type of solution was necessary.

Unlike other glass breaking sensors, Nekhil’s project relies on a single, inexpensive Arduino Nano 33 BLE Sense and its onboard digital microphone to record audio, classify it, and then alert a property owner over WiFi via an ESP8266-01 board. The dataset used to train the machine learning model came from two sources: the Microsoft Scalable Noisy Speech Dataset for background noise, and breaking glass recorded on the device itself. Both of these were added to an Edge Impulse project via the Studio and split into two-second samples before being processed by a Mel-filterbank Energy (MFE) algorithm.

The resulting model, trained using 200 training cycles and slight noise additions, resulted in an impressive 92% accuracy, with some glass breaking samples being misclassified as mere noise. This was then exported to the Nano 33 BLE Sense as a library for use in a sketch that continually classifies incoming sounds and sends an email with the help of IFTTT if breaking glass is detected.

You can watch Nekhil’s demo video below and read more about this project here on the Edge Impulse blog.

The post Detect vandalism using audio classification on the Nano 33 BLE Sense appeared first on Arduino Blog.

Binbot 9000 moves to where the trash is

via Arduino Blog

Our modern societies create a lot of garbage, which we can fortunately remove from our homes thanks to local waste management services. But the garbage people won’t come sift through your house for refuse, which forces you to utilize trash bins. Those bins never seem to be nearby when you need them, which is why James Bruton built the Binbot 9000.

The Binbot 9000 is exactly what it sounds like: a robotic trash can. No longer must the bin remain stationed in some out-of-the-way location. Instead, Binbot 9000 can drive around a home in search of people who need to throw things away.

Bruton started by placing a standard trash can on a robotic frame built using aluminum extrusion and 3D-printed parts. It has two drive wheels with encoders, which an Arduino Mega 2560 controls. To navigate through the home while avoiding collisions, Bruton added an NVIDIA Jetson Nano single-board computer and a Raspberry Pi Camera. The Jetson runs computer vision software and feeds commands to the Arduino via serial.

The computer vision software looks for simple targets printed on sheets of paper. The robot rotates until it sees and centers a target in the video frame. It will then drive forward until it reaches the target, rotates 90 degrees, and repeats the process. If it collides with something (ideally someone’s foot), the wheel encodes will detect the stall and the robot will open its lid with a servo. After someone deposits trash and closes the lid, the robot will go back into its target-seeking cycle.

By placing targets in strategic locations around his home, Bruton gave Binbot 9000 the ability to drive around his home in efficient paths. Whenever he needs to throw something away, he can nudge the robot to stop it and deposit his garbage. It also responds to voice commands, so Bruton can summon it or send it home as needed.

The post Binbot 9000 moves to where the trash is appeared first on Arduino Blog.

This health belt can provide early warning of heart failure

via Arduino Blog

Heart disease is the most common cause of death — not just in industrialized countries, but for the world as a whole. Many deaths caused by heart failure could be prevented if the patient received medical care sooner, but people are often unaware of impending heart failure until it actually occurs. However, there are physiological indicators that become detectable in advance of heart failure. This wearable “health belt” contains sensors that monitor for those indicators to give warning of imminent heart failure so patients can seek lifesaving medical attention.

This health belt has a variety of sensors to monitor key physiological indicators, including thoracic impedance, heart rate, electrocardiogram activity, and motion activity. None of those alone would reliably correspond to upcoming heart failure without many false positives and negatives, but together they provide a clear picture. The sensor array, which is wearable and resembles a cumberbund, communicates via Bluetooth with the user’s phone. When the signs of heart failure appear, their phone can either notify them to seek medical attention or notify a third party, like a family member or doctor.

The team used an Arduino Uno board to construct their prototype health belt. It connects to several sensors: a peripheral module interface (PMOD) Impedance Analyzer (IA), an AD8232 ECG (electrocardiogram) sensor, a MAX30105 heart rate sensor, and an ADXL362 accelerometer. Power comes from a 9V battery and an HC06 module handles the Bluetooth communication. 

More testing is needed to determine the health belt’s efficacy, as the research team wasn’t able to gather data from people actually experiencing heart failure. But early testing with a subject mimicking similar body movement and breathing was promising.

Image credit: Iqbal, S.M.A., Mahgoub, I., Du, E. et al. Development of a wearable belt with integrated sensors for measuring multiple physiological parameters related to heart failure. Sci Rep 12, 20264 (2022). https://doi.org/10.1038/s41598-022-23680-1

The post This health belt can provide early warning of heart failure appeared first on Arduino Blog.

Fully automated desktop weaving machine controlled by Arduino

via Arduino Blog

Automated weaving machines are one of the most important (and underappreciated) advancements to come from the industrial revolution. Prior to their invention, most people only owned a few garments that were woven and maintained by the family. With the introduction of machines able to churn out textiles, affordable clothing suddenly became available. As an expert in the industry, Roger de Meester was able to construct a fully automated weaving machine controlled by Arduino boards.

Unlike the early weaving machines of the industrial revolution that could only produce patterns inherent to their construction, de Meester’s desktop weaving machine utilizes sophisticated computer control to produce a huge range of patterns on demand. A new pattern can be completely different from the preceding pattern and the machine can even adjust the pattern on-the-fly during the weaving process, meaning it can create rich tapestries. 

This machine is incredibly complex, as it doesn’t rely on any mechanical coupling. That means that every facet of the machine’s operation is adjustable via a stepper motor, DC motor, or servo motor. There are a lot of motors to drive, so de Meester needed multiple Arduino boards: an Arduino Mega 2560 and two Arduino Nanos. The mechanical components are 3D-printed (like the shuttles) or made from aluminum extrusion and wood (like the frame). 

None of our descriptions can give this project justice, so be sure to watch the video to see de Meester’s machine in action. 

The post Fully automated desktop weaving machine controlled by Arduino appeared first on Arduino Blog.

The new Arduino Cloud for Business will have you… on a cloud!

via Arduino Blog

While our philosophy is all about the democratization of technology, we are well aware that businesses and professional users have specific needs: that’s why our Pro business unit is entirely focused on catering to them, with dedicated solutions that meet the strictest requirements for performance and security.

And after growing our Arduino Pro hardware portfolio with over a dozen new components in the past few months, we are happy to announce a major software advancement in our ecosystem: the Arduino Cloud for Business offers unique benefits for companies and industrial clients wanting enhanced features in terms of device management, RBAC, fleet management, and safe remote access.

The Arduino Cloud for Business is based on a powerful and flexible data plane where you can gather real-time and historical data in one place, sending information securely over-the-air. Display everything you need on dashboards built simply by choosing from dozens of configurable widgets: easily connect your devices – as many as you want! – to the Cloud and build your own control center.

Join an Organization Space. Define and manage multiple Organization spaces in Arduino Cloud for Business. Set up role-based access control (RBAC) by assigning profiles and sharing with any number of users, and access all cloud projects and sketches – always in sync thanks to the Web Editor – at any time and from any device, thanks to wide cross compatibility (Windows, Mac, Linux or Chromebook) and the free IoT Remote app.

The Arduino Cloud for Business allows for device management with instant or programmed OTA updates, secure provisioning to connect boards leveraging their secure element, and easy verification of their status (connected, not connected) and maintenance.

And there’s more: its specific fleet management features enable you to filter your devices by status, create groups and tags to more efficiently manage campaigns, search between boards, and list and order them.

Multiple of 50 devices can be connected under the Enterprise Base Plan – and you can always contact our team for a tailored plan to accelerate your IoT solutions.

Sketching and coding run through the integrated Arduino Web Editor, allowing you to program your boards from any browser, update devices over-the-air, move all sketches and libraries to the Cloud, use the latest IDE features without having to install any software locally, share projects across your team, and customize your libraries online.

With Arduino Cloud for Business, you can create an unlimited number of dashboards. Push button, Switch, Scheduler, Map, Chart… These are just a few of the many widgets you can customize to visualize all your data or to remotely control your devices. Click here to learn more. 

Allow your team to view/edit your dashboards or share them with your customers in just a couple of clicks. Everyone you want can have the permission to access them, not only in the browser, but also on-the-go using the free IoT Remote app (available from Google Play and the App Store).

Whether your data is needed every day or every minute, Arduino Cloud infrastructure is optimized to receive, elaborate, and return tons of data each second across the globe.

And, with one year data retention by default, Arduino Cloud for Business provides companies a place to store and mine data for additional insights and analysis, like condition monitoring or predictive maintenance. If you need to store the data somewhere else, export your entire set of data locally for further evaluation or manipulation.

Use Arduino IoT Cloud back-end to control Things and devices via Arduino rest APIs in Javascript, Python, or Go. With Arduino rest APIs, you will be able to manage up to 50 requests per second, guaranteeing stable data sharing. Leveraging the APIs, you can interact with any element of the Cloud: data, devices, dashboards, and web properties. Add the power to script, to create complex scenarios, or to send and receive data from your custom service or mobile application.

Generate your secure API key in just one click and start interacting with third-party apps and services without friction. Do you want to learn more? Check our API documentation.

The Arduino Cloud for Business is compatible with the widest range of Arduino PRO devices in the Portenta and Nicla families, as well as with MKR and Nano components. 

To address additional needs, Arduino Cloud for Business can be customized with optional add-ons: 

  • Portenta X8 Manager: Securely maintain Portenta X8 Linux distribution with this dedicated add-on. Deploy and update all your applications packaged into containers and perform secure over the air differential updates to target Portenta X8 devices/fleets. Check Portenta X8 documentation to find out more. 
  • LoRaWAN Device Manager: Easily connect your LoRa devices to Arduino Cloud for Business with this integrated add-on. Build your own enterprise grade LoRaWAN network server without location constraints and directly visualize and manage data exchanged through LoRa protocol into your Cloud projects. Get started now. 
  • Machine Learning Tools Enterprise: Build and train professional grade predictive models with just few lines of code through this dedicated add-on. Deploy premade models out of the box to quickly develop your machine learning projects, starting from object detection, machine vision to audio segmentation. Click here to learn more.

So, why choose Arduino Cloud for Business for your next IIoT challenge? 

Here are a few reasons:

  • Remotely access all your data and dashboards from any device.
  • Securely update your applications over-the-air.
  • Use multiple connectivity options (e.g. WiFi, LoRa, Ethernet, cellular etc.).
  • Your data is always fully encrypted.
  • Securely provision your devices leveraging their secure elements.
  • Share and grant access to your projects to colleagues and customers in one click.
  • Export your Cloud data locally when needed.
  • Optional add-on covering all your needs.
  • Develop your projects including all your MKR, Nano, and Portenta devices.

Last but not least, the Arduino Cloud for Business offers the frictionless experience and extensive documentation and tutorials Arduino is known for: check out available plans and start building your Cloud workspace today! 

The post The new Arduino Cloud for Business will have you… on a cloud! appeared first on Arduino Blog.

This skull-like android head was made to mimic human expressions

via Arduino Blog

Peter Balch visited a robot exhibit at his local museum and noticed that one of the most popular pieces was a robot head that would track and mimic visitors’ faces. That was so interesting that Balch decided to replicate the project in order to learn how it was done. To do that, he first needed a robot head to work with. This Instructables tutorial explains how he built a skull-like android head that will eventually mimic human expressions.

Balch hasn’t yet tackled the facial detection and expression recognition portions of the project, which will require significant processing power. But he has built the android head that will receive the expression commands. It resembles a human skull with a copper tube framework that acts as both a support structure and a design accent. The head also has copper wire eyebrows (with heat-set insert ends) and plastic eyeballs from a cheap toy.

The robot can tilt its head up and down, rotate left and right, point its eyes in any direction, open and close its jaw, and pivot its eyebrows. That doesn’t cover the full range of human facial expression, but it does provide enough actuation for the robot to emote in a recognizable way. An Arduino Nano board drives the servos that handle the actuation. At this time, the Arduino controls the servos according to explicit commands. But once Balch finishes the facial recognition software, the device it runs on will send control commands to the Arduino to replicate the functionality that Balch saw in the museum.

The post This skull-like android head was made to mimic human expressions appeared first on Arduino Blog.