Schlagwort: Nano 33 BLE Sense

  • Add ML-controlled smart suspension adjustment to your bicycle

    Add ML-controlled smart suspension adjustment to your bicycle

    Reading Time: 3 minutes

    Some modern cars, trucks, and SUVs have smart active suspension systems that can adjust to different terrain conditions. They adjust in real-time to maintain safety or performance. But they tend to only come on high-end vehicles because they’re expensive, complicated, and add weight. That’s why it is so impressive that Jallson Suryo was able to add a similar smart suspension adjustment system to his bicycle.

    This system will only work on specific bicycles that have suspension forks that the user can adjust with a knob. A servo-driven mechanism mounts onto the fork and turns the knob to tweak the firmness and rebound of the front suspension. Normally the rider would need to stop and turn that knob by hand when necessary, but this system can perform that adjustment automatically in response to the current conditions. It can recognize and accommodate five different conditions: idle, medium, rough, smooth, and sprint. 

    Suryo’s project is especially interesting because it recognizes the conditions with a machine learning model that monitors an Arduino Nano 33 BLE Sense board’s built-in nine-axis inertial sensor. Suryo didn’t have to program explicit sensor reading classifications. He trained the machine learning model, built with Edge Impulse Studio, on real-world data gathered through the Arduino Science Journal app. He could, for example, ride on a rough trail and tell the model that the inertial sensor readings it sees correspond to that mode.

    The Arduino receives power from a lithium battery via a SparkFun charger/booster board. It runs the trained and deployed Edge Impulse ML model. When it detects inertial sensor readings that indicate a specific terrain or action, it turns the servo to adjust the suspension knob to the ideal setting. 

    [youtube https://www.youtube.com/watch?v=qQyYXJHtRaE?feature=oembed&w=500&h=281]
    Categories:Arduino

    Website: LINK

  • tinyML device monitors packages for damage while in transit

    tinyML device monitors packages for damage while in transit

    Reading Time: 2 minutes

    Arduino TeamSeptember 10th, 2022

    Although the advent of widespread online shopping has been a great convenience, it has also led to a sharp increase in the number of returned items. This can be blamed on a number of factors, but a large contributor to this issue is damage in shipping. Shebin Jose Jacob’s solution involves building a small tracker that accompanies the package throughout its journey and sends alerts when mishandling is detected.

    Jacob started by creating a new Edge Impulse project and collecting around 30 minutes of motion samples from an Arduino Nano 33 BLE Sense’s onboard three-axis accelerometer. Each sample was sorted into one of five categories that range from no motion all the way to a hard fall or vigorous shaking. Features were then generated and used to train a Keras model, which yielded an accuracy of 91.3% in testing.

    To communicate with the outside world, Jacob added a GSM module that allows the Nano 33 BLE Sense to send alerts over a 3G network to an awaiting Firebase endpoint. When the database updates, new data is propagated to a user-face webpage that shows the current status of the package along with any important events.

    More details can be found here in Jacob’s project write-up.

    Website: LINK

  • This piece of art knows when it’s being photographed thanks to tinyML

    This piece of art knows when it’s being photographed thanks to tinyML

    Reading Time: 2 minutes

    This piece of art knows when it’s being photographed thanks to tinyML

    Arduino TeamSeptember 9th, 2022

    Nearly all art functions in just a single direction by allowing the viewer to admire its beauty, creativity, and construction. But Estonian artist Tauno Erik has done something a bit different thanks to embedded hardware and the power of tinyML. His work is able to actively respond to a person whenever they bring up a cell phone to take a picture of it.

    At the center are four primary circuits/components, which include a large speaker, an abstract LED sculpture, an old Soviet-style doorbell board, and a PCB housing the control electronics. The circuit contains an Arduino Nano 33 BLE Sense along with an OV7670 camera module that can capture objects directly in front. Tauno then trained a machine learning model with the help of Edge Impulse on almost 700 images that were labeled as human-containing, cell phone, or everything else/indeterminate. 

    With the model trained and deployed to the Nano 33 BLE Sense, a program was written that grabs a frame from the camera, converts its color space to 24-bit RGB, and sends it to the model for inferencing. The resulting label can then be used to activate the connected doorbell and play various animations on the LED sculpture.

    [youtube https://www.youtube.com/watch?v=u6I8PXLvG6I?feature=oembed&w=500&h=281]

    More details about this project can be found here on Tauno’s website.

    Website: LINK

  • Detecting and tracking worker falls with embedded ML

    Detecting and tracking worker falls with embedded ML

    Reading Time: 2 minutes

    Certain industries rely on workers being able to reach high spaces through the use of ladders or mobile standing platforms. And because of their potential danger if a fall were to occur, Roni Bandini had the idea to create an integrated system that can detect a fall and report it automatically across a wide variety of scenarios.

    A fall can be sensed by measuring changes in acceleration; therefore, Bandini went with an Arduino Nano 33 BLE Sense board due to its built-in three-axis accelerometer. It also supports low-power consumption, meaning that a LiPo battery and accompanying TP4056 charging module could be added for completely wireless operation. Acceleration data was collected by taking several samples within the Edge Impulse Studio and labeling them either “fall” or “stand” when no movement is present. Once tested, the resulting model was integrated into an Arduino sketch, which emits a Bluetooth® advertising packet whenever a fall is detected.

    Collecting each of these packets is the responsibility of a central Raspberry Pi server. It runs a Python script that constantly scans for new BLE advertising data and inserts a new record into its database file accordingly. All of this data can then be queried in a separate script and used to create a chart showcasing how many times every worker has fallen.

    [youtube https://www.youtube.com/watch?v=bM0FFCcvyPQ?feature=oembed&w=500&h=281]

    More details can be found in Bandini’s project write-up and Edge Impulse’s blog post here.

    The post Detecting and tracking worker falls with embedded ML appeared first on Arduino Blog.

    Website: LINK

  • Controlling a bionic hand with tinyML keyword spotting

    Controlling a bionic hand with tinyML keyword spotting

    Reading Time: 2 minutes

    Arduino TeamAugust 31st, 2022

    Traditional methods of sending movement commands to prosthetic devices often include electromyography (reading electrical signals from muscles) or simple Bluetooth modules. But in this project, Ex Machina has developed an alternative strategy that enables users to utilize voice commands and perform various gestures accordingly.

    The hand itself was made from five SG90 servo motors, with each one moving an individual finger of the larger 3D-printed hand assembly. They are all controlled by a single Arduino Nano 33 BLE Sense, which collects voice data, interprets the gesture, and sends signals to both the servo motors and an RGB LED for communicating the current action.

    In order to recognize certain keywords, Ex Machina collected 3.5 hours of audio data split amongst six total labels that covered the words “one,” “two,” “OK,” “rock,” “thumbs up,” and “nothing” — all in Portuguese. From here, the samples were added to a project in the Edge Impulse Studio and sent through an MFCC processing block for better voice extraction. Finally, a Keras model was trained on the resulting features and yielded an accuracy of 95%.

    Once deployed to the Arduino, the model is continuously fed new audio data from the built-in microphone so that it can infer the correct label. Finally, a switch statement sets each servo to the correct angle for the gesture. For more details on the voice-controlled bionic hand, you can read Ex Machina’s Hackster.io write-up here.

    [youtube https://www.youtube.com/watch?v=0mc9VOxiwgo?feature=oembed&w=500&h=281]

    Website: LINK

  • Industrial IoT anomaly detection on microcontrollers

    Industrial IoT anomaly detection on microcontrollers

    Reading Time: 2 minutes

    Arduino TeamJuly 22nd, 2022

    Consumer IoT (Internet of Things) devices provide convenience and the consequences of a failure are minimal. But industrial IoT (IIoT) devices monitor complex and expensive machinery. When that machinery fails, it can cost serious money. For that reason, it is important that technicians get alerts as soon as an abnormality in operation occurs. That’s why Tomasz Szydlo at AGH University of Science and Technology in Poland researched IIoT anomaly detection techniques for low-cost microcontrollers.

    When you only have a single sensor value to monitor, it is easy to detect an anomaly. For example, it is easy for your car to identify when engine temperature exceeds an acceptable range and then turn on a warning light. But this becomes a serious challenge when a complex machine has many sensors with values that vary depending on conditions and jobs — like a car engine becoming hot because of hard acceleration or high ambient temperatures, as opposed to a cooling problem. 

    In complex scenarios, it is difficult to hard code acceptable ranges to account for every situation. Fortunately, that is exactly the kind of problem that machine learning excels at solving. Machine learning models don’t understand the values they see, but they are very good at recognizing patterns and when values deviate from those patterns. Such a deviation indicates an anomaly that should raise a flag so a technician can look for an issue. 

    Szydlo’s research focuses on running machine learning models on IIoT hardware for this kind of anomaly detection. In his tests, he used an Arduino Nano 33 BLE board as an IIoT accelerometer monitor for a simple USB fan. He employed FogML to create a machine learning model efficient enough to run on the relatively limited hardware of the Nano’s nRF52840 microcontroller.

    The full results are available in Szydlo’s paper, but his experiments were a success. This affordable hardware was able to detect anomalies with the fan speed. This is a simple application, but as Szydlo notes, it is possible to expand the concept to handle more complex machinery.

    Image: arXiv:2206.14265 [cs.LG]

    Website: LINK

  • Get connected to your Nano with the Screw Terminal Adapter

    Get connected to your Nano with the Screw Terminal Adapter

    Reading Time: 3 minutes
    Arduino Nano Screw Terminal Adapter

    The brand new Nano Screw Terminal Adapter turns up the speed on your prototyping efforts by giving you a fast, reliable way to hook up your boards. This awesome add-on is exactly what seasoned makers have been crying out for, and is now available from the Arduino Store.

    Let’s take a look at this mini mechanical marvel.

    A solderless solution

    With a finished project, you’re likely to make permanent connections to your Nano by soldering it. Even if you’re connecting it using a header strip, the wires, components, sensors and accessories will be soldered, crimped or attached in a permanent way to the controller side of your project. It makes perfect sense to do this, when you’re looking for a reliable connection.

    The trouble with permanent connections like this is that they’re… well, permanent! Soldering and de-soldering during the design and prototyping stage can become a real chore. And it’s not good for the components or the board itself, either.

    The Screw Terminal Adapter is what you need. It’s something we’ve been asked for a lot, giving people a way to make robust, fast, easy connections that can be changed just as easily.

    Easy access to all I/Os

    The Nano Screw Terminal Adapter features a double row of headers. The Nano drops into the two inner rows, giving you a second, outer set that lets you connecting using jumpers, wires or what have you.

    Then you have a third row of connectors on either side of the adapter with a screw terminal for each pin. The perfect way to connect wires or components in a reliable, but easily changeable way. It’s never been easier to develop and design a project that with these connection options.

    There’s even a 9×8 prototyping area with through plated holes for adding extra components, connections or accessories.

    Of course, this doesn’t have to only be for prototyping. The screw terminal is a long-established, trusted connection option, so there’s no reason it can’t become a permanent fixture in your project. That’s totally up to you, and is quintessentially what this board is all about; giving you lots of reliable options.

    Get connected

    We can really see this becoming an essential part of any Ardunino lover’s or maker’s tool kit. That’s why they come in packs of three. Once you’ve used one, you’ll realize how vital they are. Being able to assemble, test, change and reassemble a project with the adapter is a time saving, labor saving gift.

    You can also pick them up bundled with your favorite Nano board, in which case you get one adapter and one board. A perfect prototyping partnership.

    The Nano Screw Terminal Adapter is now available in stock to purchase on the Arduino Store and will be available from our global network of reseller partners in the forthcoming days.

    Check it out, and tell us what you think!

    Website: LINK

  • This device detects different household sounds through tinyML

    This device detects different household sounds through tinyML

    Reading Time: 2 minutes

    Arduino TeamJuly 14th, 2022

    For people who suffer from hearing loss or other auditory issues, maintaining situational awareness can be vital for keeping safe and autonomous. This problem is what inspired the team of Lucia Camacho Tiemblo, Spiros Kotsikos, and Maria Alifieri to create a small device that can alert users to certain household sounds on their phone.

    The team decided to incorporate embedded machine learning in order to recognize ambient sounds, so they opted for an Arduino Nano 33 BLE Sense. After recording many samples of various events, such as a conversation, knocking on the door, the TV, a doorbell, and silence, they fed them into a tinyML model with the help of Edge Impulse’s Studio. The resulting model was able to successfully differentiate between events around 90% of the time.

    Beyond merely outputting the recognized audio to a serial monitor, the team’s firmware also allows for the results to be sent over Bluetooth® Low Energy where a connected smartphone can read the data and display it. The mobile app contains three simple buttons for accessing a list of sounds, certain settings, and a submenu for managing the connection with the Arduino.

    You can read more about this accessibility project here on Hackster.io.

    Website: LINK

  • Detecting harmful gases with a single sensor and tinyML

    Detecting harmful gases with a single sensor and tinyML

    Reading Time: 2 minutes

    Arduino TeamJuly 11th, 2022

    Experiencing a chemical and/or gas leak can be potentially life-threatening to both people and the surrounding environment, which is why detecting them as quickly as possible is vital. But instead of relying on simple thresholds, Roni Bandini was able to come up with a system that can spot custom leaks by recognizing subtle changes in gas level values through machine learning.

    To accomplish this, Bandini took a single MiCS-4514 and connected it to an Arduino Nano 33 BLE Sense, along with an OLED screen, fan, and buzzer for sending out alerts. The MiCS-4514 is a multi-gas sensor that is able to detect methane, ethanol, hydrogen, ammonia, carbon monoxide, and nitrogen dioxide. This capability means that explosive and/or poisonous gas can be identified well before it builds up to a critical level indoors.

    Once several samples had been collected that ranged from typical to dangerous levels, Bandini fed the dataset into the Edge Impulse Studio in order to train a neural network classifier on the time-series samples. Whenever the device starts up, the sensor is calibrated for a preset amount of time and can be used to distinguish harmful air quality within 1.5 seconds. The display shows any high sensor readings and what if a leak has been detected.

    To see more about this project, you can read Bandini’s tutorial or watch this demonstration video below.

    [youtube https://www.youtube.com/watch?v=3ViArIxUhDY?feature=oembed&w=500&h=281]

    Website: LINK

  • This IoT weather monitor can track environmental data from almost anywhere

    This IoT weather monitor can track environmental data from almost anywhere

    Reading Time: 2 minutes

    Arduino TeamJuly 11th, 2022

    The need for rapid environmental data collection, processing, and viewing has never been more important, and with the rise of always-connected IoT devices, this goal is now closer than ever. However, most DIY solutions that rely on Bluetooth® or WiFi simply are not feasible in isolated areas due to their short range. This is what inspired Hackster.io user Pradeep to build his own data logger system utilizing much longer-distance LTE communication instead.

    In order to actually get the current weather conditions, including temperature/humidity, rain, air quality, and light levels, Pradeep connected a wide variety of sensor modules to a single Arduino Nano 33 BLE Sense board, which acts as the data processor. From here, he connected a Blues Wireless Notecard and Notecarrier assembly to the Arduino via its pair of UART pins that would allow the two board to send data between each other. After configuring Notehub to receive the incoming weather data in the form of a JSON-formatted string, Pradeep added a webhook integration with Qubitro.

    The Qubitro platform is a web-based tool that lets users aggregate data and display it within a nice dashboard, along with the ability to perform more complex analysis over time. With this setup, Pradeep was able to gather a large number of samples and produce a series of graphs showcasing the change in environmental data.

    You can dive deeper into Pradeep’s project by checking out his write-up here.

    Website: LINK

  • This device predicts when a refrigerator might fail using embedded ML

    This device predicts when a refrigerator might fail using embedded ML

    Reading Time: 2 minutes

    Arduino TeamJuly 4th, 2022

    The refrigerator is one of the centerpieces in a modern kitchen, and experiencing a loss in cooling can lead to hundreds or even thousands of dollars of spoiled goods. Perhaps even more importantly, a sudden loss of medications or vaccines that heavily rely on refrigeration can heave a big impact on the people that need them. Swapnil Verma wanted to solve this problem, so he came up with an idea to incorporate a simple machine learning model into a device that could monitor for failures.

    When gathering datapoints for training the model, Verma began by identifying different failure modes, such as a decrease in temperature, change in humidity, or simply an abnormality. He opted to use an Arduino Nano 33 BLE Sense along with its built-in temperature/humidity and ambient light sensors. From here, data is streamed over Bluetooth® LE to a Portenta H7 and logged to a microSD card. Verma then uploaded the resulting CSV files to Edge Impulse Studio and trained an anomaly detection model that could recognize when conditions inside the refrigerator are incorrect.

    Although the deployment doesn’t currently involve sending alerts, Verma did suggest that the feature could be added in the future, especially for the medical field. Want to dive into the details of project? Check out his tutorial on Edge Impulse as well as here in the Edge Impulse Studio.

    Website: LINK

  • GetFit is a DIY fitness tracker based on the Nano 33 BLE Sense

    GetFit is a DIY fitness tracker based on the Nano 33 BLE Sense

    Reading Time: 2 minutes

    Arduino TeamJune 3rd, 2022

    When it comes to fitness tracking, the average consumer would most likely reach for a smartwatch or similar wearable band. These all work by using their internal accelerometers and gyroscopes to sense motion and detect when a certain action, such as stepping or lifting a weight, has been completed. But to further simplify the process by eliminating the need to select a workout before starting an exercise routine, Nekhil and Shebin Jacob have worked together to come up with the GetFit fitness tracker.

    The GetFit is a battery-powered device that uses machine learning to detect not only when an action has been done, but also what kind of workout is being performed. They achieved this by gathering plenty of samples from a Nano 33 BLE Sense’s onboard accelerometer and training a Keras model with the help of the Edge Impulse Studio. It can accurately identify between arm circles, pushups, squats, and anything else in the future while also disregarding anomalous data.

    The Arduino sends the now-recognized motion to a connected smartphone over Bluetooth® Low Energy where it’s then used to calculate the number of calories burned and display weekly activity levels. Best of all, this data is tied to an account in a Firebase database for easy transferability.

    [youtube https://www.youtube.com/watch?v=BUWZJuIqC2I?feature=oembed&w=500&h=281]

    To read more about GetFit, you can read the duo’s write-up here on Hackster.io.

    Website: LINK

  • SafeDrill uses tinyML to encourage proper drilling technique

    SafeDrill uses tinyML to encourage proper drilling technique

    Reading Time: 2 minutes

    Arduino TeamMay 31st, 2022

    For those new to DIY projects that involve the use of power tools, knowing when a tool is being used in an unsafe manner is of utmost importance. For many, this can include employing the wrong drill bit for a given material, such as a concrete bit in a soft wood plank. This is why a team from the University of Ljubljana created the SafeDrill, which aims to quickly determine when misuse is occurring and notify the user.

    The team’s prototype consists of a small 3D-printed enclosure that contains a Nano 33 BLE Sense while allowing a USB cable to attach for power at the front. Once attached to a cordless drill with a pair of zip ties, they captured 100 seconds of data for each of the nine different classes that include three drill bits combined with three types of materials. From here, they trained a model in the Edge Impulse Studio in order to recognize the material/bit combination.

    The last part of the SafeDrill project was the mobile app. Built with the help of MIT App Inventor, the application receives data over Bluetooth® Low Energy from the Nano 33 BLE Sense and displays it to the user. For safe combinations, the text appears green whereas unsafe combinations show up in red.

    To read more about SafeDrill, check out the team’s tutorial on Hackster.io.

    [youtube https://www.youtube.com/watch?v=_f-P35rEFbA?feature=oembed&w=500&h=281]

    Website: LINK

  • This Arduino device can anticipate power outages with tinyML

    This Arduino device can anticipate power outages with tinyML

    Reading Time: 2 minutes

    Arduino TeamMay 24th, 2022

    Our reliance on electronic devices and appliances has never been higher, so when the power goes out, it can quickly become an unpleasant and inconvenient situation, especially for those who are unable to prepare in time. To help combat this problem, Roni Bandini has devised a device he calls “EdenOff,” which is placed inside an electrical outlet and utilizes machine learning at the edge to intelligently predict when an outage might occur.

    Developed with the use of Edge Impulse, Bandini began by creating a realistic dataset that consisted of three columns that pertain to different aspects of an outlet: its voltage, the ambient temperature, and how long the service has been working correctly. After training a model based on one dataset for regular service and the other for a failure, his model achieved an excellent F-1 score of .96, indicating that the model can forecast when an outage might take place with a high degree of accuracy. 

    Bandini then deployed this model to a DIY setup by first connecting a Nano 33 BLE Sense with its onboard temperature sensor to an external ZMPT101B voltage sensor. Users can view the device in operation with its seven-segment display and hear the buzzer if a failure is detected. Lastly, the entire package is portable thanks to its LiPo battery and micro-USB charging circuitry.

    For more details on this project, you can watch its demonstration video below and view its public project within the Edge Impulse Studio.

    [youtube https://www.youtube.com/watch?v=Fs-zV0d9BIU?feature=oembed&w=500&h=281]

    Website: LINK

  • Celebrate Earth Day with these Arduino projects

    Celebrate Earth Day with these Arduino projects

    Reading Time: 3 minutes

    In celebration of Earth Day, we thought it would be fun to highlight a handful of open-source projects that may inspire you to help make a positive impact on our world. From air quality and water pollution monitoring to wildlife conservation and deforestation prevention, here are just some of the ways our community members are leveraging Arduino to come up with innovative solutions.

    GSM & SMS-Enabled, AI-Driven Water Pollution Monitor

    Kutluhan Aktar has developed a budget-friendly, MKR GSM 1400-equipped device to collect water quality data from various resources and forecast pollution levels based on oxidation-reduction potential, pH, total dissolved solids, and turbidity measurements.

    Mahout – Save the Elephants

    In an effort to secure a future for vulnerable African elephants, Mithun Das prototyped a Nano 33 BLE Sense-powered smart collar that employs GPS, LoRaWAN, and embedded machine learning.

    RepRapable Recyclebot

    The team of Joshua Pearce, Adam Pringle, Joseph McCaslin, and Aubrey Woern devised an open-source, Arduino Mega-controlled extruder that converts recycled plastic into commercial-grade 3D printing filament.

    Training Wild Birds to Trade Litter for Food

    Researcher Hans Forsberg has managed to train magpies to exchange litter for food through the use of a high-tech dispenser, which features an Arduino-powered sensor setup to detect bottle caps.

    Arduino Air Quality Monitor

    After he found himself checking PurpleAir’s map multiple times a day for local air quality data, Dominic Pajak realized that a MKR WiFi 1010 could simply read the value itself and display the color on a MKR RGB Shield — so you would always know when it’s safe to go outside.

    Senso

    Built around a MKR FOX 1200, Senso is a low-powered system by Andrei Florian that utilizes audio analysis to identify the sound of logging machinery and immediately alert authorities.

    TinyML Aerial Forest Fire Detection

    Forest fires are a serious and deadly problem all around the world, especially in California — the home state of Nathaniel Felleke, Toren Andersen and Erk Sampat. This led the makers to create a long-range autonomous aerial vehicle out of an RC plane that’s capable of recognizing and reporting wildfires using a Nano 33 BLE with an onboard camera, tinyML, and a satellite modem.

    Obviously, this is only a small sampling of the many projects conceived by the community. Working on a problem-solving build of your own? Share it with us! And be sure to browse other environmental-themed ideas here.

    Website: LINK

  • Train yourself to avoid using filler words with the tinyML-powered Mind the Uuh device

    Train yourself to avoid using filler words with the tinyML-powered Mind the Uuh device

    Reading Time: 2 minutes

    Arduino TeamApril 21st, 2022

    Listening to a speaker who interjects words such as “um,” “uuh,” and “so” can be extremely distracting and take away from the message being conveyed, which is why Benedikt Groß, Maik Groß, Thibault Durand set out to build a small device that can help encourage speakers to make their language more concise. Their experimental solution, called Mind the “Uuh,” constantly listens to the words being spoken and generates an audible alert if the word “uuh” is detected.

    The team began by collecting around 1,500 samples of audio that ranged in length from 300ms to 1s and contained either noise, random words, or the word “uuh.” Then, after running it through a filter and training a Keras neural network using Edge Impulse, deployed it onto a Nano 33 BLE Sense. The board was connected to a seven-segment display via two shift registers that show the current “uuh” count, as well as a servo motor that dings a bell to generate the alert. 

    Once assembled and placed inside a 3D-printed case, the Mind the ‘Uuh’ gadget was able to successfully detect whenever the dreaded “uuh” filler word was spoken. As a minor extension, the team also created a small website that hosts the same machine learning model but instead uses a microphone from a web browser.

    Website: LINK

  • Arduino device uses tinyML to help wearers recover from shoulder injury

    Arduino device uses tinyML to help wearers recover from shoulder injury

    Reading Time: 2 minutes

    Arduino TeamMarch 15th, 2022

    Shoulder injuries can be quite complex and require months of careful physical therapy to overcome, which is what led to Roni Bandini to build a tinyML-powered wearable that monitors a patient’s rotator cuff movements to aid in the recovery process. His system is designed around a Nano 33 BLE Sense and its onboard accelerometer that measures both the types and frequencies of certain shoulder motions. 

    After 3D printing a small case to house the Arduino along with a battery pack and an OLED display, Bandini created a new project using the Edge Impulse Studio. The impulse takes in time-series three-axis accelerometer data, runs it through a spectral analysis block, and then infers the current movement being performed by the wearer. 

    Once switched on, the system initializes a set of three movement counts to zero: right, left, and up, while the last type, idle, is not counted. Then throughout the day, the patient is encouraged to perform various exercises in order to fill up the bars completely. The eventual goal is to make steady progress towards having a recovered rotator cuff joint with a larger range of motion than immediately after the injury.

    Bandini’s video explaining this shoulder recovery system can be viewed below, and the project’s design files/code can be found here on Hackster.io.

    Website: LINK

  • Arduino device uses tinyML to help wearers recover from shoulder injury

    Arduino device uses tinyML to help wearers recover from shoulder injury

    Reading Time: 2 minutes

    Arduino TeamMarch 15th, 2022

    Shoulder injuries can be quite complex and require months of careful physical therapy to overcome, which is what led to Roni Bandini to build a tinyML-powered wearable that monitors a patient’s rotator cuff movements to aid in the recovery process. His system is designed around a Nano 33 BLE Sense and its onboard accelerometer that measures both the types and frequencies of certain shoulder motions. 

    After 3D printing a small case to house the Arduino along with a battery pack and an OLED display, Bandini created a new project using the Edge Impulse Studio. The impulse takes in time-series three-axis accelerometer data, runs it through a spectral analysis block, and then infers the current movement being performed by the wearer. 

    Once switched on, the system initializes a set of three movement counts to zero: right, left, and up, while the last type, idle, is not counted. Then throughout the day, the patient is encouraged to perform various exercises in order to fill up the bars completely. The eventual goal is to make steady progress towards having a recovered rotator cuff joint with a larger range of motion than immediately after the injury.

    Bandini’s video explaining this shoulder recovery system can be viewed below, and the project’s design files/code can be found here on Hackster.io.

    Website: LINK

  • This contactless system combines embedded ML and sensors to improve elevator safety

    This contactless system combines embedded ML and sensors to improve elevator safety

    Reading Time: 2 minutes

    Arduino TeamJanuary 29th, 2022

    As an entry into the 5th IEEE National Level Project Competition, Anway Pimpalkar and his team wanted to design a system that could help improve safety and usability within elevators by detecting if a human is present, the floor they wish to travel towards, and automatically go to the ground floor in the event of a fire. 

    For determining when a person is standing within the elevator’s cabin, Pimpalkar used a Nano 33 BLE Sense and an OV7675 camera module that take advantage of embedded machine learning for facial detection. From there, the Nano will notify the user via a blinking LED that it is ready to accept a verbal command for the floor number and will transport the user when processed. Perhaps most importantly, an MQ-2 smoke sensor and LM-35 temperature sensor were added to the custom PCB. These two pieces of hardware are responsible for sensing if there is a fire nearby and subsequently activating an alarm and then moving the cabin to the ground floor if needed. 

    Altogether, this project is a great showcase of how powerful tinyML can be when it comes to both safety and accessibility. To read more about the system, you can check out Pimpalkar’s GitHub repository here.

    Website: LINK

  • Instead of sensing the presence of metal, this tinyML device detects rock (music)

    Instead of sensing the presence of metal, this tinyML device detects rock (music)

    Reading Time: 2 minutes

    Arduino TeamJanuary 29th, 2022

    After learning about the basics of embedded ML, industrial designer and educator Phil Caridi had the idea to build a metal detector, but rather than using a coil of wire to sense eddy currents, his device would use a microphone to determine if metal music is playing nearby. 

    Caridi started out by collecting around two hours of music and then dividing the samples into two labels: “metal” and “non_metal” using Edge Impulse. After that, he began the process of training a neural network after passing each sample through an MFE filter. The end result was a model capable of detecting if a given piece of music is either metal or non-metal with around 88.2% accuracy. This model was then deployed onto a Nano 33 BLE Sense, which tells the program what kind of music is playing, but Caridi wasn’t done yet. He also 3D-printed a mount and gauge that turns a needle further to the right via a servo motor as the confidence of “metal music” increases.

    As seen in his video, the device successfully shows the difference between the band Death’s “Story to Tell” track and the much tamer and non-metal song “Oops!… I Did It Again” by Britney Spears. For more details about this project, you can read Caridi’s blog post.

    Website: LINK

  • PsyLink is a low-cost, non-invasive EMG interface based on the Nano 33 BLE Sense

    PsyLink is a low-cost, non-invasive EMG interface based on the Nano 33 BLE Sense

    Reading Time: 2 minutes

    Arduino TeamJanuary 10th, 2022

    Non-invasive EMG interfaces have the potential to solve many problems that afflict those who suffer from a disability or simply want a more efficient way to perform a task. This is what led one maker, who goes by the name “Hut,” to create their own open source device called PsyLink. It works by measuring the minute electrical impulses that cause muscles to contract and then sending them for further processing and inferencing via a machine learning model. 

    PsyLink’s initial prototype was based around the Nano 33 BLE Sense due to its large number of ADC pins and potential for Bluetooth connectivity. The device features a pair of aluminum foil pads attached to some wires, although this was later changed out for studs embedded within a more secure sleeve. Signals are read from the electrodes and sent through a series of filters made from op-amps and eventually to an analog multiplexer. After that, the signal is digitized by the onboard ADC and transmitted over Bluetooth Low Energy where it is then displayed in a custom desktop application. 

    Hut used TensorFlow Lite to take many samples of data and train a neural network to recognize when a certain kind of signal corresponded to a given keypress. Once training was complete, this model could be deployed and used to do everything from typing faster and performing shortcuts, to even playing a video game.

    You can read more about this impressive project here on a well-detailed blog for the PsyLink.

    Website: LINK

  • This Arduino device knows how a bike is being ridden using tinyML

    This Arduino device knows how a bike is being ridden using tinyML

    Reading Time: 2 minutes

    Arduino TeamDecember 28th, 2021

    Fabio Antonini loves to ride his bike, and while nearly all bike computers offer information such as cadence, distance, speed, and elevation, they lack the ability to tell if the cyclist is sitting or standing at any given time. So, after doing some research, he came across an example project that utilized Edge Impulse and an Arduino Nano 33 BLE 33 Sense’s onboard accelerometer to distinguish between various kinds of movements. Based on this previous work, he opted to create his own ML device using the same general framework. 

    Over the course of around 20 minutes, Fabio collected data for both standing and sitting by strapping a Nano 33 BLE Sense to his arm and connecting it to a laptop. Once the data had been processed and fed through a training algorithm, his freshly minted model was then deployed back to the board for real-time processing. 

    The program Antonini made classifies incoming data from the IMU into one of four different states: seated on a plain, seated on an uphill, jumping on the pedals during an uphill, or pushing on a sprint while on a plain. From here, the built-in RGB LED changes its color to notify the user of what was inferred.

    You can read more about the creation process and usage of this project here in Antonini’s Medium blog post.

    Website: LINK