Normal view

There are new articles available, click to refresh the page.
Today — 5 February 2025Main stream

Control your Raspberry PI GPIO with Arduino Cloud using Node.js | Part III

5 February 2025 at 20:56

As a Node.js developer, you’re probably eager to put your JavaScript skills to work beyond the browser or server, diving into the world of hardware control with Raspberry Pi GPIOs. If that’s the case, you’re in the right place!

This article is the third part of our series, following  A guide to visualize your Raspberry Pi data on Arduino Cloud | Part I and the Python-focused Control your Raspberry Pi GPIO in Arduino Cloud using Python | Part II, which introduced GPIO management. Now, it’s time to explore how Node.js can be your gateway to controlling Raspberry Pi GPIOs, a foundational task in IoT development. Whether you’re toggling LEDs, reading sensors, or controlling relays, Node.js offers the tools and flexibility to make it happen seamlessly.

But IoT isn’t just about managing hardware locally. True IoT projects require remote dashboards that let you visualize real-time and historical data, and control devices from anywhere. With Arduino Cloud, you can do all of this with ease.

Let’s dive in and see how you can take your IoT skills to the next level with Node.js and the Arduino Cloud!

Raspberry Pi basic GPIO setup

In this article, we present a straightforward yet comprehensive example to demonstrate the power of Arduino Cloud. You’ll learn how to use an Arduino Cloud dashboard to remotely control and monitor your Raspberry Pi’s digital GPIOs. Specifically, we’ll cover how to:

  • Turn an LED connected to your Raspberry Pi on and off.
  • Detect when a push button connected to your Raspberry Pi is pressed.
  • Visualize the real-time and historical values of an integer variable.

To get started, let’s connect an LED and a push button to your Raspberry Pi as illustrated in the diagram below.

It’s a very simple setup. Now that we have everything ready, let’s get started!

Create the Device and Thing in Arduino Cloud

To send your Raspberry Pi data to Arduino Cloud, you have to follow these simple steps:

1. Set up an Arduino Cloud account if you didn’t have one before.
2. Create your device as a Manual device.

    Note: Jot down your Device ID and Secret, as we will need them later.

    3. Create your Thing and add your variables.

      In the example shown in this blog post, we use the following three variables:

      • test_value: We will use this integer variable to show an integer value generated periodically in our Raspberry Pi application in our Arduino Cloud dashboard.
      • button: We will use this boolean variable to send the information to the Cloud when the push button is pressed.
      • led: We will use this boolean variable to switch on and off the LED from the Arduino Cloud dashboard.

      Create an Arduino Cloud dashboard for data visualization:

      • Create a switch widget (name: LED) and a LED widget (name: LED) and linke them to the led variable.
      • Create a chart widget (name: Value evolution) and a Value widget (name: Value) and link them to the test_value variable.
      • Create a Push button (name: Push Button) and a Status widget (name: Button) and link them to the button variable.

      With the dashboard, you will be able to:

      • Switch ON and OFF the LED using the switch widget
      • Visualize the status of the LED with the LED widget
      • Visualize the real time value of the variable test_value with the Value widget
      • Visualize the evolution over time of the variable test_value with the chart widget
      • Visualize on the Push Button and Button widgets when the push button has been pressed on the board

      Note: You can find more detailed information about the full process in our documentation guide.

      Program your IoT device using Node.js

      Now it’s time to develop your Node.j application.

      const gpiod = require('node-libgpiod');
      const { ArduinoIoTCloud } = require('arduino-iot-js');
      const { DEVICE_ID, SECRET_KEY } = require('./credentials');
      
      
      // Modify these lines according to your board setup
      const GPIOCHIP = 'gpiochip4';
      const LED = 14; // GPIO14, Pin 8
      const BUTTON = 15; // GPIO15, Pin 10
      
      
      // Make sure these variables are global. Otherwise, they will not
      // work properly inside the timers
      chip = new gpiod.Chip(GPIOCHIP);
      ledLine = chip.getLine(LED);
      buttonLine = chip.getLine(BUTTON);
      
      
      ledLine.requestOutputMode("gpio-basic");
      // To configure the pull-up bias, use 32 instead of gpiod.LineFlags.GPIOD_LINE_REQUEST_FLAG_BIAS_PULL_UP if it is undefined
      buttonLine.requestInputModeFlags("gpio-basic", gpiod.LineFlags.GPIOD_LINE_REQUEST_FLAG_BIAS_PULL_UP);
      
      
      let client;
      
      
      // This function is executed every 1.0 seconds, polls the value
      // of the button and sends the data to Arduino Cloud
      function readButton(client) {
        let button = buttonLine.getValue() ? true : false;
        if (client)
           client.sendProperty("button", button);
        console.log("pollButton:", button);
      }
      
      
      // This function is executed every 10.0 seconds, gets a random
      // number between 0 and 100 and sends the data to Arduino Cloud
      function readValue(client) {
        let value = Math.floor(Math.random() * 101);
        if (client)
           client.sendProperty("test_value", value);
        console.log("pollValue", value);
      }
      
      
      // This function is executed each time the "led" variable changes
      function onLedChanged(led) {
        ledLine.setValue(led ? 1 : 0);
        console.log("LED change! Status is: ", led);
      }
      
      
      // Create Arduino Cloud connection
      (async () => {
        try {
           client = await ArduinoIoTCloud.connect({
              deviceId: DEVICE_ID,
              secretKey: SECRET_KEY,
              onDisconnect: (message) => console.error(message),
           });
           client.onPropertyValue("led", (led) => onLedChanged(led));
        }
        catch(e) {
           console.error("ArduinoIoTCloud connect ERROR", e);
        }
      })();
      
      
      // Poll Value every 10 seconds
      const pollValue = setInterval(() => {
        readValue(client);
      }, 10000);
      
      
      // Poll Button every 1 seconds
      const pollButton = setInterval(() => {
        readButton(client);
      }, 1000);
      

      Create a file called credentials.js with your Device ID and secret.

      module.exports = {
         DEVICE_ID: '09d3a634-e1ad-4927-9da0-dde663f8e5c6',
         SECRET_KEY: 'IXD3U1S37QPJOJXLZMP5'
       };
      

      This code is compatible with all Raspberry Pi models and should also work on any Linux-based machine. Just make sure to specify the correct gpiochip and configure the appropriate GPIO lines in the code snippet below:

      const GPIOCHIP = 'gpiochip4';
      const LED = 14; // GPIO14, Pin 8
      const BUTTON = 15; // GPIO15, Pin 10

      For more information about the project, check out the details on Project Hub. You can find the complete code and additional resources in the Github repository. Plus, don’t miss the comprehensive JavaScript + Arduino Cloud guide in the following article.

      Start with Arduino Cloud for free

      Getting your Raspberry Pi connected to Arduino Cloud with Node.js is incredibly simple. Simply create your free account, and you’re ready to get started. Arduino Cloud is free to use and comes with optional premium features for even greater flexibility and power.  

      If you’re ready to simplify data visualization and remote control for your Raspberry Pi applications using Node.js, Python, or Node-RED, Arduino Cloud is the perfect platform to explore and elevate your projects.  

      Get started with Arduino Cloud!

      The post Control your Raspberry PI GPIO with Arduino Cloud using Node.js | Part III appeared first on Arduino Blog.

      Yesterday — 4 February 2025Main stream

      Welcoming ControlSI to the Arduino Pro System Integrators Partnership Program!

      3 February 2025 at 22:26

      We’re thrilled to announce the latest member of our System Integrators Partnership Program (SIPP): ControlSI, based in Peru, is well known for their expertise in Industry 4.0 solutions – including industrial automation, operational intelligence, data analytics, computer vision, and edge AI – and brings a wealth of knowledge and innovation to the Arduino ecosystem.

      This partnership is a game-changer, combining Arduino Pro’s reliable and flexible hardware with ControlSI’s advanced cyber-physical systems integration. Together, we’ll deliver customized solutions that span from data capture to real-time analytics, empowering businesses across industries to optimize their processes through accessible and scalable technology.

      “We are excited to welcome ControlSI into the Arduino Pro family,” said Guneet Bedi, Arduino’s Senior Vice President and General Manager of the Americas. “Their dedication to making IoT and cyber-physical technologies accessible to all aligns perfectly with our mission. We look forward to seeing how this partnership will drive innovation and deliver exceptional value to our clients.”

      ControlSI’s directors, Orlando Torres and Carlos Diaz, echoed this enthusiasm: “This association with Arduino Pro allows us to expand the limits of industrial automation and real-time data analysis, providing our clients with a complete solution that adapts to their technological and growth needs.”


      The System Integrators Partnership Program by Arduino Pro is an exclusive initiative designed for professionals seeking to implement Arduino technologies in their projects. This program opens up a world of opportunities based on the robust Arduino ecosystem, allowing partners to unlock their full potential in collaboration with us.

      The post Welcoming ControlSI to the Arduino Pro System Integrators Partnership Program! appeared first on Arduino Blog.

      Before yesterdayMain stream

      David Cuartielles receives the Open Source Award on Skills and Education

      3 February 2025 at 21:11

      We are proud to announce that David Cuartielles, co-founder of Arduino, has been honored with the Open Source Award on Skills and Education 2025 and has become a founding member of the Open Source Academy of Europe. This prestigious award recognizes individuals who have made outstanding contributions to open-source education, ensuring that knowledge remains accessible to all.

      David’s impact on the world of education and technology is undeniable, but this recognition is about more than just one person’s efforts: it is a celebration of the huge community of educators, students, and innovators who have embraced open-source tools, shaping the way we all engage with technology and empowering millions worldwide.

      To share this moment with all of you, here are some key reflections from David’s acceptance speech.

      A lifelong commitment to education and openness

      “I became an engineer by following my own dreams. Since then, I have devoted my professional career to education. I taught, and still teach, programming and electronics to artists and designers. As a side effect, I co-authored what is probably the most copied piece of educational hardware to date – Arduino. Hardware that we decided to publish under an open license.”

      When Arduino was introduced in 2005, open-source hardware was a radical idea. At the time, open licenses were primarily associated with software, music, and written content, not physical artifacts. Arduino helped expand the reach of openness, to include design files for hardware, lab tools, and even furniture. This was a game-changer for education, enabling students, researchers, and makers everywhere to build, modify, and share technology freely.

      “We were the hippies of hardware, but we believed that open licenses were the way to ensure full access to tools for students and researchers. We were part of an emergent movement happening on a global scale, and we were lucky to arrive early.”

      Defending openness in the modern world

      But as open-source adoption has grown, its meaning has shifted. What once symbolized accessibility, collaboration, and ethical responsibility has, in some cases, become diluted within large corporate structures. David spoke directly to this concern: “Openness went from being a club of misfits to being what everyone wanted to be. Being a hacker was once seen as dangerous and strangely illegal… now, it’s what parents want for their kids, fueled by stories of economic success.”

      Despite widespread – often superficial – adoption, the political values and ethical foundations of open source are fading. “This is the moment to address the elephant in the room. We now live in a world where some claim to be creating open-source LLMs running on the public cloud, but neither are the LLMs open, nor is the cloud public.”

      David’s message is clear: the open-source movement must reaffirm its roots in solidarity, companionship, and social progress. True openness should continue to empower individuals, foster collaboration, and break down barriers to education and innovation.

      A heartfelt thank you

      David concluded his speech by acknowledging the people who have supported him throughout his journey:

      “I would like to thank all of those who supported me on the way: my colleagues and students at Malmö University, the community members and mates at Arduino, my friends, and my family. Thank you.”

      This award is a recognition not just of David’s achievements, but of the shared effort of the Arduino community and the global open-source movement. It’s a moment to reflect on how far we’ve come and to continue pushing forward, together.

      Congratulations to Dr. David Cuartielles, and thank you to everyone who carries the spirit of open-source forward!

      The post David Cuartielles receives the Open Source Award on Skills and Education appeared first on Arduino Blog.

      Join us for Arduino Day 2025: celebrating 20 years of community!

      30 January 2025 at 23:58

      Mark your calendars for March 21-22, 2025, as we come together for a special Arduino Day to celebrate our 20th anniversary! This free, online event is open to everyone, everywhere.

      Two decades of creativity and community

      Over the past 20 years, we have evolved from a simple open-source hardware platform into a global community with literal millions of makers, educators, and innovators. Together, we’ve built countless projects (5,600+ just on Project Hub at the time of writing!), shared knowledge, and inspired one another to push the boundaries of technology. 

      As we celebrate this milestone, we want to honor our shared journey as a community. The technological world is accelerating and welcoming more people than ever before: we believe this makes it even more important for everyone to have access to innovation, and to contribute to a future filled with creativity and collaboration.

      Be part of the celebration

      This year’s Arduino Day promises to be one of the most content-packed to date, featuring engaging talks from experts and enthusiasts on a variety of topics, exciting product announcements to get a first look at what’s coming next, and of course our favorite – community showcases that feature inspiring projects from amateur and professional users around the world. Because it may be called “Arduino Day”, but it’s all about you and the community. 

      If you’re passionate about sharing your knowledge or organizing an event to celebrate the Arduino community and all that it stands for, here’s how you can get involved:

      • Call for Speakers: Have a project, idea, or experience to share? Submit your proposal to present during the event. Visit the Arduino Days website for details or go directly to the submission form for speakers.
      • Call for Organizers: Interested in hosting a local meetup or workshop? Join our global network of organizers and bring Arduino Day to communities everywhere. We’ll literally “put you on the map” on the Arduino Days website! Go to the site for details or straight to the submission form for organizers.

      Stay tuned and get involved

      Find the most updated information and schedule for the two-day event on the dedicated Arduino Day website, live now: as speakers and organizers are confirmed, we’ll add them there! 

      Bookmark the page to view the live streaming on March 21st and 22nd: we can’t wait to celebrate this milestone birthday with all of you. Let’s make our 20th-anniversary celebration a memorable one, together!

      The post Join us for Arduino Day 2025: celebrating 20 years of community! appeared first on Arduino Blog.

      Build your own smart pet feeder with the Arduino Plug and Make Kit

      30 January 2025 at 21:33

      If you are a pet owner, you know how important it is to keep furry companions fed and happy – even when life gets busy! With the Arduino Plug and Make Kit, you can now build a customizable smart pet feeder that dispenses food on schedule and can be controlled remotely. It’s the perfect blend of functionality and creativity, designed to simplify your life and delight your cat, dog, rabbit, hamster, or cute creature of choice.

      Here’s everything you need to automate feeding your pet

      This intermediate project is packed with advanced features, made easy by the intuitive Plug and Make Kit. With its modular components, creating your own smart pet feeder is straightforward, fun, and easy to customize.

      Here’s what you’ll need:

      • Arduino Plug and Make Kit, which already includes UNO R4 WiFi, Modulino Distance, Modulino Buttons, Modulino Pixels, and Qwiic cables
      • A continuous servo motor (such as this one, for example)
      • Some jumper wires and screws for assembly
      • A 3D printer (to create the case either with the files we provide, or with your own designs!)

      Simply follow our step-by-step tutorial on Project Hub to put everything together, customize your code, and print the 3D encasings. 

      Once the setup is complete, you can remotely control the feeder via a ready-to-use Arduino Cloud dashboard, where you’ll set dispensing schedules, adjust portion sizes, and even customize LED lights to match your pet’s mood. 

      The Modulino Distance sensor ensures food comes out only when needed, while the Modulino Buzzer adds some audio feedback for a playful touch.

      Make it the cat’s meow!

      As you know, the Plug and Make Kit’s versatility allows for endless possibilities. Feel free to expand this pet feeder project with additional features! For example, you can add a motion-activated camera to capture your pet’s activities, or a real-time weight monitor to track how much food is consumed. You can even activate voice commands for an interactive feeding experience (maybe skip this one if you have a parrot!). 

      Now you have all the info you need to build your own smart pet feeder: time to grab your Arduino Plug and Make Kit and get started. The template we’ve created simplifies the process, letting you focus on the fun parts of building and experimenting. 

      Be sure to share your creations with us – upload them to Project Hub or email creators@arduino.cc to get in touch. We can’t wait to see how you make the small daily routine of feeding your pet smarter, and a lot more fun, with Arduino!

      The post Build your own smart pet feeder with the Arduino Plug and Make Kit appeared first on Arduino Blog.

      The future of making, Made in India: Introducing the Arduino UNO Ek R4

      26 January 2025 at 01:30

      We are proud to announce the Made-in-India UNO Ek R4! Available exclusively in India in both WiFi and Minima variants, it is born to meet the needs of the country’s growing maker and innovation ecosystem, by combining all the powerful features of the UNO R4 with the benefits of local manufacturing, enhanced availability, and dedicated support for Indian users.

      Uno, one, Ek !
      In case you are wondering, Ek means “one” in Hindi, symbolizing unity and simplicity. It represents the Arduino UNO’s position as the foundation of countless maker projects – simple yet powerful, and always the first step toward innovation. To pronounce Ek, say “ake” (rhymes with “bake”) with a soft “k” sound at the end. 

      Supporting innovation in India

      The two new boards were developed under the “Make in India” campaign, launched to make India the global design and manufacturing hub, and are being launched as part of the country’s Republic Day celebrations. They were first unveiled at the World Economic Forum 2025 in Davos, where they were presented to Shri Ashwini Vaishnav, India’s incumbent Minister of Electronics and Information Technology, and Mr Jayant Chaudhary, Minister of State (IC) for the Ministry of Skill Development & Entrepreneurship. The event was an outstanding opportunity to reflect on India’s huge role in technological innovation and open-source initiatives, with a focus on fostering STEM education and advancing the maker community.

      Fabio Violante, CEO (right), and Guneet Bedi, SVP and General Manager (left) with Shri Ashwini Vaishnaw, Minister of Electronics and IT (center).
      Fabio Violante, CEO (right), and Guneet Bedi, SVP and General Manager (left) with Mr Jayant Chaudhary, Minister of State (IC) for the Ministry of Skill Development & Entrepreneurship (center).

      We are committed to empowering the thriving maker and engineering community in India – the second country in the world for Arduino IDE downloads, just to mention one important statistic! As our CEO Fabio Violante shares, “Arduino’s decision to manufacture in India reflects the nation’s immense potential as a rising global leader in technology. This step embodies our deep belief in the power of collaboration and community. By joining forces with Indian manufacturers, we aim to ignite a culture of innovation that resonates far beyond borders, inspiring creators and visionaries worldwide.”

      Why choose UNO Ek R4 boards?

      The UNO Ek R4 WiFi and UNO Ek R4 Minima offer the same powerful performance as their global counterparts, featuring a 32-bit microprocessor with enhanced speed, memory, and connectivity options. But the Made-in-India editions come with added benefits tailored specifically for Indian users, including:

      • Faster delivery: Locally manufactured boards with extensive stock ensure reduced lead times for projects of all sizes.
      • Affordable pricing: Genuine Arduino products made accessible at competitive prices.
      • Local support: Indian users gain access to official technical assistance alongside Arduino’s vast library of global resources.
      • Sustainable manufacturing: Produced ethically with eco-friendly packaging and certified to SA8000 and FSC standards.

      Guneet Bedi, Arduino’s Senior Vice President and General Manager of the Americas, comments: “By adding the Arduino UNO Ek R4 WiFi and Arduino UNO Ek  R4 Minima to our product line, Arduino is helping to drive adoption of connected devices and STEM education around the world. We’re excited to see the creative projects this community can create with these new boards.”

      The past and the future are Ek

      The strong legacy of the UNO concept finds a new interpretation, ready to leverage trusted Arduino quality and accessibility to serve projects of any complexity – from IoT to educational applications to AI. 

      Catering more closely to local needs, UNO Ek R4 WiFi and UNO Ek R4 Minima are equipped to drive the next wave of innovation in India.  Both will be available through authorized distributors across the country: sign up here to get all the updates about the release! 

      The post The future of making, Made in India: Introducing the Arduino UNO Ek R4 appeared first on Arduino Blog.

      A Game Boy is the worst and best option for a car’s dash

      18 January 2025 at 07:33

      If your car was made in the last decade, its dash probably has several displays, gauges, and indicator lights. But how many of those do you actually look at on a regular basis? Likely only one or two, like the speedometer and gas gauge. Knowing that, John Sutley embraced minimalism to use a Game Boy as the dash for his car.

      Unlike most modern video game consoles, which load assets into memory before using them, the original Nintendo Game Boy used a more direct tie between the console and the game cartridge. They shared memory, with the Game Boy accessing the cartridge’s ROM chip at the times necessary to load just enough of the game to continue. That access was relatively fast, which helped to compensate for the small amount of available system RAM.

      Sutley’s hack works by updating the data in a custom “cartridge’s” equivalent of ROM (which is rewritable in this case, and therefore not actually read-only). When the Game Boy updates the running “game,” it will display the data it sees on the “ROM.” Sutley just needed a way to update that data with information from the car, such as speed.

      The car in question is a second-generation Hyundai Sante Fe. Like all vehicles available in the US after 1998, it has an OBDII port and Sutley was able to tap into that to access the CAN bus that the car uses to send data between different systems. That data includes pertinent information, such as speed.

      Sutley used an Arduino paired with a CAN shield to sniff and parse that data. The Arduino then writes to the “ROM” with whatever Sutley wants to display on the Game Boy’s screen, such as speed.

      This is, of course, a remarkably poor dash. The original Game Boy didn’t even have a backlight for the screen, so this would be downright unsafe at night. But we can all agree that it is very cool.

      The post A Game Boy is the worst and best option for a car’s dash appeared first on Arduino Blog.

      This robot can dynamically change its wheel diameter to suit the terrain 

      14 January 2025 at 02:25

      A vehicle’s wheel diameter has a dramatic effect on several aspects of performance. The most obvious is gearing, with larger wheels increasing the ultimate gear ratio — though transmission and transfer case gearing can counteract that. But wheel size also affects mobility over terrain, which is why Gourav Moger and Huseyin Atakan Varol’s prototype mobile robot, called Improbability Roller, has the ability to dynamically alter its wheel diameter.

      If all else were equal (including final gear ratio), smaller wheels would be better, because they result in less unsprung mass. But that would only be true in a hypothetical world on perfectly flat surfaces. As the terrain becomes more irregular, larger wheels become more practical. Stairs are an extreme example and only a vehicle with very large wheels can climb stairs.

      Most vehicles sacrifice either efficiency or capability through wheel size, but this robot doesn’t have to. Each of its wheels is a unique collapsing mechanism that can expand or shrink as necessary to alter the effective rolling diameter. Pulley rope actuators on each wheel, driven by Dynamixel geared motors by an Arduino Mega 2560 board through a Dynamixel shield, perform that change. A single drive motor spins the wheels through a rigid gear set mounted on the axles, and a third omni wheel provides stability. 

      This unique arrangement has additional benefits beyond terrain accommodation. The robot can, for instance, shrink its wheels in order to fit through tight spaces. It can also increase the size of one wheel, relative to the other, to turn without a dedicated steering rack or differential drive system. 

      The post This robot can dynamically change its wheel diameter to suit the terrain  appeared first on Arduino Blog.

      This maker designed a custom flight controller for his supercapacitor-powered drone

      12 January 2025 at 21:35

      Basic drones are very affordable these days—you can literally find some for less than the cost of a fast food drive-thru meal. But that doesn’t mean drones are easy to control. That is actually quite difficult, but manufacturers are able to work off of established reference designs. In a video that perfectly illustrates the difficulty, The Tinkering Techie attempted to make a supercapacitor-powered drone with his own custom flight controller. 

      Most airplane designs have inherent aerodynamic stability. Even without power, they can continue to glide. Even helicopters have some inherent stability in the form of autorotation. Quadrotor drones do not—they need constant power and very frequent motor control updates just to stay aloft. Even the slightest control error will result in catastrophic failure. Despite knowing the challenge, The Tinkering Techie wanted to try making his own flight controller.

      Aside from the custom flight controller, this drone is also unique for its power storage. Instead of conventional lithium batteries, it has a bank of supercapacitors. Those can fully charge in seconds—though they don’t store energy well over long periods of time. 

      The job of the flight controller is directing power from the supercapacitors to the motors (brushed DC motors, in this case) in a very precise manner. An Arduino Nano 33 IoT board oversees that process and The Tinkering Techie chose it because it has onboard sensors useful for a quadcopter, including a gyroscope and an accelerometer. A custom PCB hosts the Arduino and the supercapacitors, while a simple 3D-printed frame ties everything together.

      Unfortunately, this isn’t a success story and The Tinker Techie ultimately failed to achieve stable flight. The are many potential reasons for that, but one of the most glaring was the use of brushed DC motors, which can’t respond as fast as brushless DC motors can — an important factor for a drone.

      The post This maker designed a custom flight controller for his supercapacitor-powered drone appeared first on Arduino Blog.

      This telescope can intelligently point itself anywhere in the sky

      7 January 2025 at 20:54

      Known by their characteristic mounting solution, Dobsonian telescopes are the standard in amateur astronomy due to their lower cost and ease-of-use. But after seeing how some of the larger, motorized telescopes at observatories can simply pivot to a target of interest, one member from the FabLab at Orange Digital Center Morocco wanted to add this functionality to his own hobbyist telescope.

      The base of the telescope guidance system was made by cutting a large disk from a sheet of plexiglass on a laser cutter and then wrapping it in a timing belt for setting the azimuth (yaw). Once mounted, a 3D-printed set of gears, along with some bearings, were attached to one side in order to provide the altitude adjustments. Each axis is moved by a single stepper motor and accompanying A4988 stepper driver, and both plug into an Arduino Nano.

      Over on the controls side of the project, an interface was added that gives the user two buttons, an analog joystick, and an LCD screen at the top. With it, they can select between three different modes. In offline mode, locations that have been preloaded into the other Nano can be chosen as the target, while any arbitrary location can be sent via serial from a host PC in online mode. Finally, the joystick can be used in manual mode to move anywhere.

      To read about this project in more detail and see some of the incredible photos that were captured, you can visit its write-up here on Instructables.

      The post This telescope can intelligently point itself anywhere in the sky appeared first on Arduino Blog.

      Control your volume with a wireless rotary encoder, as you deserve

      7 January 2025 at 04:54

      Every decent stereo sold since the invention of sound has included a knob on the front for adjusting volume. There are influencers and entire communities dedicated to evaluating the feel of those wonderful knobs. So why would you settle for the mushy volume buttons on a remote? Eric Tischer didn’t think he should have to, so he built his own wireless rotary encoder device for controlling his DAC’s volume.

      A digital-to-analog converter (DAC) is an important part of modern digital audio systems. Tischer’s DAC/preamp takes the digital signal from a TV or other device, turns it into an analog signal, and then pushes that out to an amplifier. The DAC has a rotary encoder on the device itself for adjusting volume, but the remote just has the standard buttons. Tischer measured that remote and found that it takes 25 seconds to go from zero to full volume. That’s almost as annoying as the horribly unsatisfying buttons.

      Tisher’s solution was to construct a new wireless remote with only one job: controlling volume. It has a big CNC jog-wheel style rotary encoder that reportedly has a very nice feel, with 100 total detent “clicks” per revolution. That matches perfectly with the number of volume levels.

      An Arduino Nano ESP32 board monitors the remote rotary encoder and communicates the detected position (via pulse-counting) to another ESP32 board by the DAC over ESP-NOW. That second board attaches to the DAC’s built-in rotary encoder pins and simulates pulses that match the remote. So as far as the DAC knows, Tischer is rotating the built-in encoder. In reality, he’s sitting comfortably on the couch spinning that handheld knob instead of pushing buttons dozens of times per commercial break.

      The post Control your volume with a wireless rotary encoder, as you deserve appeared first on Arduino Blog.

      This autonomous go-kart only needs a camera to navigate a workshop circuit

      24 December 2024 at 04:40

      Autonomous vehicles, and self-driving cars in particular, are probably one of the most enticing technologies of the 21st century. But despite a great deal of R&D and even more speculation, we have yet to see a self-driving car that can actually operate on real public roads without any human oversight at all. If, however, we remove that “real public roads” constraint, the challenge becomes a lot more approachable. All you need is a few Arduino boards and a webcam, as proven by Austin Blake’s self-driving go-kart.

      Blake previously attempted a miniature self-driving Tesla project, which was supposed to drive around a park walking path. That was only a partial success, because the vehicle struggled to put its “behavioral cloning” machine learning algorithms into practice. Blake took those lessons and applied them here, with much better results.

      Behavioral cloning, in this context, means that the machine learning algorithm watches what Blake does as he drives around the track, then attempts to replicate that while driving on its own. During training, it looks ahead of the kart through a webcam while monitoring the steering angle. Then, while driving on its own, it looks through the webcam at the track and tries to match the steering angle to what it saw during training.

      The machine learning model runs on a laptop, but Blake needed a way for it to control the kart’s steering and throttle. He used three Arduino Nano boards to pull that off. The first just listens to the machine learning model’s serial output for a PWM signal representing the steering angle. It then sends that to the second, which uses that information and the real-time steering angle to control a Cytron motor driver for the steering. The third controls the throttle using an RC car-style circuit.

      This proved to work quite well and the go-kart can navigate around a small track in Blake’s workshop. In theory, it could also handle new tracks — so long as they have similar clearly marked edges.

      The post This autonomous go-kart only needs a camera to navigate a workshop circuit appeared first on Arduino Blog.

      See how this homemade spectrometer analyzes substances with an Arduino Mega

      23 December 2024 at 22:40

      Materials, when exposed to light, will reflect or absorb certain portions of the electromagnetic spectrum that can give valuable information about their chemical or physical compositions. Traditional setups use a single lamp to emit white light before it is split apart into a spectrum of colors via a system of prisms, mirrors, and lenses. After hitting the substance being tested, a sensor will gather this spectral color data for analysis. YouTuber Marb’s Lab realized that by leveraging several discrete. LEDs, he could recreate this array of light without the need for the more expensive/complicated optics.

      His project uses the AS7431 10-channel spectrometer sensor breakout board from Adafruit due to its adequate accuracy and compact footprint. Once it was attached to the clear sample chamber and wired to a connector, Marb got to work on the electromechanical portion of the system. Here, a stepper motor rotates a ring of six LEDs that are driven by a series of N-channel MOSFETs and a decade counter. Each component was then wired into a custom-designed control board, which acts as a shield when attached to the Arduino Mega 2560 below.

      The sketch running on the Mega allows for the user to select between photometer (single wavelength) and spectrometer (multiple wavelengths) modes when sampling the substance. Once the data is captured, the user can then choose one of three interpolation modes to get a smooth curve, as seen here when measuring this chlorophyl.

      The post See how this homemade spectrometer analyzes substances with an Arduino Mega appeared first on Arduino Blog.

      Does your sample contain DNA or RNA? DIYNAFLUOR can tell you on a budget

      20 December 2024 at 04:22

      Lab equipment is — traditionally at least — tremendously expensive. While there are understandable reasons for those costs, they are prohibitive to anyone operating outside of a university or corporate lab. But as the “citizen science” movement has grown, we’ve seen more and more open-source and affordable designs for lab equipment hitting the internet. The latest will be interesting to anyone who wants to do work with DNA or RNA: the DIYNAFLUOR

      DINYAFLUOR stands for “DIY Nucleic Acid Fluorometer,” which describes this device’s function. A fluorometer is a piece of equipment the measures the amount of light emitted by anything that fluoresces. In this context, that would be a reagent that increases in fluorescence when it comes into contact with the nucleic acid in DNA or RNA. The more light the fluorometer detects, the more nucleic acid is present in the sample. Sensitivity is important, which is part of the reason that fluorometers are expensive (usually several thousand dollars for basic models).

      The DIYNAFLUOR, on the other hand, only costs about $40 to build. It works with both custom and commercially made fluorescent DNA quantification kits and can measure DNA on the scale of nano-micrograms.

      This is affordable because its designers built it around off-the-shelf components that are easy to source and a 3D-printable enclosure. The primary component is an Arduino UNO Rev3 board, which looks at the sample through a TSL2591-based light sensor. An LED puts out 470nm light to excite the reagent and optical filters remove the unwanted wavelengths. User-friendly software with a simple GUI lets citizen scientists take measurements and record data directly to their computers.

      This may be a specialized device with narrow appeal. But for those who want to work with DNA or RNA outside of a “real” lab, the cost and performance of DIYNAFLUOR is unbeatable.

      The post Does your sample contain DNA or RNA? DIYNAFLUOR can tell you on a budget appeared first on Arduino Blog.

      Exploring Alvik: 3 fun and creative projects with Arduino’s educational robot platform

      19 December 2024 at 03:19

      Alvik is cute, it’s smart, it’s fun… so what can it actually do? 

      To answer this question, we decided to have fun and put the robot to the test with some of the most creative people we know – our own team! A dozen Arduino employees volunteered for a dedicated Make Tank session earlier this fall, and came up with a few great in-house projects for us to share – and you to try! 

      We were so happy with the creative and engaging ideas that we took them on the road for the Maker Faire Rome 2024: they were a hit and attracted many curious visitors to the Arduino booth.

      Hello, Alvik!

      This interactive project, created by Christian Sarnataro and Leonardo Cavagnis, brings to life Alvik’s friendly personality. By waving your hands in front of a Nicla Vision camera, you trigger a cheerful “big hands” gesture in response: it’s Alvik’s way of welcoming newcomers to robotics!

      Why it’s great: The project highlights Alvik’s ease of use and intuitive interactivity, while demonstrating how advanced learners can tap into the robot’s AI capabilities to create meaningful, engaging robotic experiences.

      Robo-Fight Club

      Developed by Davide Neri and Alexander Entinger, this competitive game turns Alvik into a feisty battling robot. Participants control their Alvik to push opponents out of the arena, while trying special moves like “yellow-banana” for spins, “green-slime” to reverse controls, and “blue-ice” to freeze competitors for five seconds. Any robot stepping out of the arena automatically loses the match.

      Why it’s great: Robo-Fight Club demonstrates how Alvik can be used for multiplayer, interactive gaming experiences while teaching users about programming logic and control systems.

      Alvik Mini City

      In this project by Giovanni Bruno, Julián Caro Linares, and Livia Luo, Alvik works tirelessly in a mini city, moving balls from one floor to another. The project showcases how robotics can assist in repetitive and potentially hazardous tasks, inspiring us to imagine practical applications for robotics in their daily lives.

      Why it’s great: This project emphasizes how Alvik is more than just an educational robot – it’s a tool for exploring real-world use cases in automation and problem-solving.

      Your turn!

      Alvik is the perfect companion to learn coding and robotics because it’s easy to get started with, but powerful enough to support complex projects. With the option to program using block-based coding, in MicroPython or the Arduino language, everyone from beginners to advanced users can choose the environment that suits their needs best!

      Inspired by these projects? Check out all of Alvik’s features and specs on this page, or go ahead and start your journey today! Don’t forget to share your creations with us: upload your projects to Project Hub or email creators@arduino.cc – we can’t wait to see what you build!

      The post Exploring Alvik: 3 fun and creative projects with Arduino’s educational robot platform appeared first on Arduino Blog.

      UNO Rev3 or UNO R4? Choosing the perfect Arduino for your project

      18 December 2024 at 22:03

      The Arduino UNO is legendary among makers, and with the release of the UNO R4 in 2023, the family gained a powerful new member. But with two incredible options, which UNO should you pick for your project? Here’s a breakdown of what makes each board shine, depending on your needs, skills, and goals.

      Why the UNO Rev3 is still a go-to classic

      The UNO Rev3 has been around for over a decade, earning its reputation as a solid, reliable board perfect for beginners. Simple, robust, and versatile, it’s the “base camp” of the Arduino ecosystem. Its 8-bit architecture makes it straightforward to understand exactly what’s happening in your code. 

      Applications and ideal uses 

      The UNO Rev3 is fantastic for projects like controlling LEDs, motors, and simple sensors – as well as any of the 15 projects included in our best-selling Arduino Starter Kit.

      Its ability to handle a higher current directly from each pin makes it ideal for connecting power-hungry sensors or motors without needing extra components. It’s also compatible with an enormous number of sketches and libraries that have been built around it over the years.

      One key advantage? The microcontroller on the UNO Rev3 can be removed, allowing you to use it independently – a feature that many seasoned users love.

      Over the years, users have pushed it to the limit to create some pretty impressive applications: a remarkably powerful library for audio, an interactive crypto-mining tool, and even a whole BASIC computer that you can hang around your neck like a badge!

      The UNO R4 was designed for the modern maker

      The UNO R4 builds on everything makers love about the Rev3, adding features that bring it up to speed with the needs of today’s tech. Its 32-bit Arm® Cortex®-M4 guarantees significantly faster processing power and can handle more advanced projects. It comes in two versions: the UNO R4 Minima for essential functionality and the UNO R4 WiFi for Internet-connected projects.

      The latter is the brains of the Plug and Make Kit: the easiest way to go from zero to tech hero, with step-by-step tutorials to create a custom weather station, a video game controller, a smart timer and so much more!

      Advanced features for new possibilities

      The UNO R4 packs in features that are groundbreaking for the UNO family:

      • 12-bit DAC: Enables analog output for audio waveforms or other analog components without external circuitry.
      • CAN bus: Ideal for connecting multiple devices in robotics or automotive projects.
      • Wi-Fi® and Bluetooth® on the R4 WiFi model: Easily build IoT projects and connect to the Arduino Cloud to control your devices remotely.
      • Enhanced Diagnostics: The R4 WiFi includes an error-capturing mechanism that helps beginners by identifying issues in the code, a fantastic learning tool.

      Applications and ideal uses 

      With increased memory and processing power, the UNO R4 is perfect for projects that require complex calculations or manage multiple processes. Think IoT, data sensing, automation systems, creative installations or scientific equipment where precise measurements and real-time adjustments are key.

      What’s more, the UNO R4 has the capability to leverage AI – and our community has jumped at the chance of exploring whole new realms. One user built a gesture recognition system made of cardboard, another added smart detection to a pet door to always know if their cat was home or not, and another yet came up with a great tool to always know what song is playing.
      Not to mention the possibilities for advanced animations like this one – inspired by Bad Apple – developed thanks to the LED matrix right on the UNO R4.

      Is a 32-bit MCU always better than an 8-bit?

      The short answer is, no. We believe the best solution is always determined by the requirements of the project at hand: bigger, faster, more powerful or more expensive is not always better.

      8-bit microcontrollers process data in 8-bit chunks, which limits the size of numbers they can handle directly to values between 0 and 255 (or -127 and 128). This limitation makes them best suited for applications with minimal data processing needs, such as basic tasks like toggling LEDs or controlling simple sensors. However, they also tend to be more affordable and to consume less power, making hardware design less expensive, and have a simpler architecture, which translates to easier programming. So, if you are still learning the basics and need the most straightforward tool, or you are tackling a project with minimal requirements, an 8-bit MCU is not only all you need, but probably your best option.

      On the other hand, if you need to work on much larger numbers and perform data-heavy calculations, 32-bit microcontrollers can handle advanced applications like image processing and real-time analytics. The difference is not just 4-fold going from 8 to 32: it’s a huge jump from 255 to 4,294,967,295! Almost by definition, any solution that requires this kind of performance will be more complex to design and program, require more memory, and consume more power, often affecting battery life. The upside, of course, is the incredible potential of what you can achieve!

      Compatibility and transitioning from UNO Rev3 to UNO R4

      If you already have experience with the UNO Rev3 and are considering the R4, but have concerns about compatibility, rest assured: they have the same form factor, pinout, and 5V operating voltage. This makes it easy to transfer accessories such as shields from one to the other. 

      On the software side, tutorials and projects are often compatible. We have even created a GitHub repository where you can check compatibility for libraries with the new R4 (and even help us update information or add new R4-friendly versions). This is part of the effort we share with our community to make sure that transitioning to the UNO R4 – if you choose to do so – is as seamless as possible.

      Which Arduino UNO should I choose?
      UNO Rev3UNO R4
      • Best for beginners or those working on foundational projects.

      • Great for educational settings, where understanding core programming concepts and hardware interactions are the focus.

      • Ideal if you need a reliable, budget-friendly, no-frills board with vast project resources available online.

      • Perfect for advanced users or beginners looking to push boundaries with more complex projects.

      • Best for IoT, data-intensive, or networked applications that require more processing power.

      • A smart choice if you’re experimenting with new peripherals like CAN bus, DAC, or Wi-Fi/Bluetooth connectivity.

      Choose your UNO and start creating!

      Whether you choose the classic UNO Rev3 or the more recent UNO R4, you’re joining a global community of makers, educators, and inventors who love to create. Both boards offer incredible opportunities, each tailored to different stages and styles of making.
      Ready to dive into a new project? Buy your next UNO and discover limitless possibilities!

      The post UNO Rev3 or UNO R4? Choosing the perfect Arduino for your project appeared first on Arduino Blog.

      Arduino Education at Bett 2025: Shaping the future of K-12 and higher education

      17 December 2024 at 20:43

      Mark your calendars… Arduino Education is coming to Bett UK 2025! Taking place for three days from January 22nd-24th at the ExCeL exhibition center in London, Bett is the ultimate global event for educational innovation. 

      We are attending the stand with our partner CreativeHut again this year. Join us at our booth (Stand NF10) where we’ll bring the future of education to life. Get hands-on with our latest solutions, meet our passionate team of experts, and discover how you can use Arduino Education kits in the classroom to boost STEAM skills and improve learning outcomes. 

      Explore the latest EdTech solutions for K-12 teachers

      If you’ve been keeping up with our social media posts, you’ll know that we recently launched block-based coding for the Alvik robot. Now’s your chance to see it in action. Perfect for younger learners, block-based coding with Alvik enables students as young as seven to engage with robotics through hands-on, cross-disciplinary projects and lessons. And don’t miss our live demos showcasing just how simple it is to program Alvik using MicroPython too.

      But that’s not all. You’ll also have the chance to get hands-on with the Plug and Make Kit – a powerful tool that allows educators and students to explore the world of IoT (Internet of Things). Designed for hands-on learning, the kit includes seven engaging projects that provide a structured starting point. And with seamless integration into Arduino Cloud, collaboration and innovation have never been easier.

      Are you an HE educator? We’ve got you covered too!

      If you’re teaching at the higher education level, we’ve got something special for you too. Stop by our stand to explore the cutting-edge PLC Starter Kit, an incredible resource for teaching industrial automation. Designed to bridge the gap between theory and practice, this kit prepares students for real-world challenges and helps them grasp complex concepts with ease.

      And here’s the really exciting part – we’ll be showcasing a brand-new kit specifically designed for higher education in industry automation. Be among the first to experience this innovative solution, designed to take advanced learning to the next level. You heard it here first!

      Get involved with interactive demos and more

      At our booth, you’ll have the opportunity to take part in interactive demonstrations and explore a comprehensive content platform catering to K-12 and higher education. This includes resources on coding, robotics, DIY smart IoT projects, PLC (Programmable Logic Controllers), and computer vision solutions, all aimed at enriching the educational journey.

      Will we be award winners?

      We’re beyond excited to share that Arduino Education has been shortlisted for the Bett Awards 2025 in the category of AV, VR/AR, Robotics, or Digital Devices – and it’s all thanks to our incredible Alvik robot! Watch this space to find out if we win!

      We can’t wait to see you at Bett 2025. For more information and to book your ticket, visit the Bett website.

      The post Arduino Education at Bett 2025: Shaping the future of K-12 and higher education appeared first on Arduino Blog.

      Turn your old Android smartphone into an Arduino screen with the RemoteXY app

      17 December 2024 at 09:17

      Each component you add to your Arduino project increases its complexity and the opportunity for mistakes. But most projects require some “auxiliary” hardware — components that you use to interact with the Arduino or to help it do the job you’re asking of it. Buttons and displays are great examples. But as Doctor Volt demonstrates in his most recent video, you can replace both of those with the high-quality touchscreen on your old Android smartphone using the RemoteXY app.

      You likely learned early in your Arduino journey that the serial connection between the Arduino development board and a PC is very handy. It lets the Arduino output information and also lets you input commands. But an entire computer (even a laptop) is pretty bulky and requires a lot of power. The RemoteXY app, available for Android devices, lets you use your smartphone to do the same job.

      Even better, you can use the RemoteXY app with an Arduino library to get an interface much more sophisticated than a normal serial terminal. The app still communicates with the Arduino via serial behind the scenes, but it uses that data to enable nice touchscreen-friendly GUI controls, graphs, and more. 

      For that to work, you need a way for your Android smartphone to establish a serial connection with your Arduino board. That is easy to do using an OTG cable with a USB-to-Serial adapter. Together, those let your smartphone talk to your Arduino just like your PC does. Doctor Volt’s video walks you through setting up and using the RemoteXY Arduino library and how to configure the app.

      In a short amount of time, you’ll get a user-friendly interface for your project on the smartphone’s high-resolution touchscreen.

      The post Turn your old Android smartphone into an Arduino screen with the RemoteXY app appeared first on Arduino Blog.

      This nature-inspired display reacts to ambient sounds

      13 December 2024 at 20:41

      We all need ways to calm down and relax, and few things are as effective as nature itself. Taking inspiration from organic patterns and smooth, flowing waves, dzeng on Instructables has built an LED wall light that responds to the sounds within a room in real-time.

      The project started out as a 2D vector graphic that featured several overlapping, organic leaf patterns arranged within a circle. This pattern was then etched onto a piece of clear acrylic via a laser cutter before being attached to a blue-painted base. For the lighting effects, dzeng added an LED strip between the two layers before connecting it to an Arduino Nano ESP32.

      The reactive lighting effects are provided by the Nano ESP32’s sketch, which maintains two variables: brightness and delay. Every loop, the current sound levels are read from a microphone and averaged before being mapped onto the aforementioned values. Finally, the currently-illuminated LED is shifted by one position on the strip and the calculated brightness is applied.

      To see it and the entire design process, you can view dzeng’s tutorial here on Instructables.

      The post This nature-inspired display reacts to ambient sounds appeared first on Arduino Blog.

      Speed up your project’s compile time by up to 50% in Arduino Cloud!

      13 December 2024 at 20:27

      At Arduino, we know how precious your time is when you’re building your next big project or experimenting with new ideas. That’s why we’re thrilled to introduce a game-changing update to the Cloud Editor Builder — the engine behind compiling your sketches in Arduino Cloud.

      This update is all about you: making your development faster, smoother, and more secure, so you can focus on what truly matters — creating.

      Here’s what’s new:

      Faster compilations: Up to 50% faster!

      No more waiting around! With the new builder, sketch compilations are now up to 50% faster, enabling you to focus more on creating and testing your projects, and less on waiting. Two years ago, we significantly improved the Cloud Editor Builder, setting a new standard for performance.

      And now, whether you’re working on a quick prototype or a complex IoT solution,  we provide you with faster compilation times, which means you can iterate and innovate more efficiently.

      See compilation progress at a glance

      One of the standout features of the new builder is the introduction of a dedicated compilation progress bar. Now, you can see exactly how far along the compilation process is, with clear visibility into its completeness percentage. No more guesswork — just a smoother and more transparent experience.

      Your IoT projects, more secure

      We’ve also made improvements under the hood, adding an extra layer of security and reliability to the Cloud Editor Builder. Your data and projects are safer than ever, giving you peace of mind while you create.

      IDE vs. Cloud Editor: Which one fits your workflow?

      We understand that every Arduino user has unique needs, which is why we offer both the Arduino IDE and the Cloud Editor. Wondering which option suits your workflow best? We’ve prepared a clear comparison table showcasing the key differences between the two tools. From compilation speeds to storage options, see how the Cloud Editor stacks up against the IDE.

      Check out the full comparison table in this article.

      Ready to experience the difference?

      The new Cloud Editor Builder will be live in the coming days, and we can’t wait for you to try it! Stay tuned for updates, and get ready to enjoy faster compilations, improved usability, and enhanced security.

      We’re excited to see how this update will elevate your projects. As always, we’d love to hear your feedback. Please share your thoughts, questions, and experiences with us on social media or Arduino Forum.

      Let’s build something amazing together!

      Ready to elevate your projects? Discover the full potential of the Arduino Cloud Editor and explore all its powerful features here. Need guidance? Dive into our comprehensive documentation.

      The post Speed up your project’s compile time by up to 50% in Arduino Cloud! appeared first on Arduino Blog.

      ❌
      ❌