Tag Archives: Featured

Now free! Get the Arduino Create app for Chrome classrooms

via Arduino Blog

In the latest Arduino Education update, we’ve made the Arduino Create app free for Chrome. From today, as many educators, students, and parents around the world as possible can now access the Arduino Create Agent.

Arduino Chrome app is now free

What is Arduino Create (soon to become Arduino Cloud)?

Arduino Create is an online platform that lets students write code, access tutorials, configure boards, and share projects. 

Designed to provide users with a continuous workflow, Arduino Create connects the dots from inspiration to creation. This means students can manage every aspect of their projects right from a single dashboard.

Get the app for Chrome and Chromebooks

The app lets you use the Arduino Create on Chromebooks. You can then code online and save your sketches in the Cloud. Then you can upload them to any Arduino board connected to your computer, and do it all without having to install anything locally.

Developed with the classroom in mind, the Arduino Create app runs on Chrome OS. It enables you to teach and play with Arduino electronics and programming in a shared environment. Because it’s a Cloud-based environment, you can also be sure it’s always up-to-date. All the contributed libraries are automatically included, and any new Arduino boards are supported out-of-the-box.

Arduino’s CEO, Fabio Violante, says, “The aim of Arduino Education is to put technology into the hands of every student around the world. Making Arduino Create free, and therefore more accessible, is a step towards doing this. We’re proud to provide open-source software, and want to inspire students and educators in STEAM learning.”

Download the Arduino Create app here, and join us on the forums to tell us about your experiences.

The post Now free! Get the Arduino Create app for Chrome classrooms appeared first on Arduino Blog.

Sense the future of smart agriculture with Arduino Edge Control

via Arduino Blog

The Arduino Pro lineup continues to grow with the introduction of the new Arduino Edge Control. This is a remote monitoring and control solution optimized for outdoor environments. Easy deployment makes it suitable for smart agriculture, precision farming, and other intelligent control applications in remote locations.

Featuring built-in Bluetooth, Arduino MKR boards can expand connectivity with 2G/3G/CatM1/NB-IoT modems, LoRa®, Sigfox and WiFi. With solar power capabilities you can place it anywhere while leveraging AI on the edge. Once installed in the field, it can then be managed remotely using Arduino IoT Cloud (or other services). 

Real-time monitoring with Edge Control sensors

You can also connect sensors, provide real-time monitoring, and drive actuators — commonly used in agriculture — thereby reducing production-related risks.

Particularly aimed at smart agriculture, the sensors can collect real-time data. Weather conditions, soil quality, crop growth and any other data you need. Once sent to Arduino IoT Cloud, the data value chain becomes valuable analytics that support business processes at various levels. For example, crop yield, equipment efficiency, staff performance and so forth. The Edge Control can improve crop quality, reduce effort and minimize error by automating processes like irrigation, fertilization or pest control.

Arduino Edge Control for smart agriculture and industrial applications

Remote access and maintenance

With its robust design, the Edge Control is a fitting solution for applications in any outdoor setting. For example, using it on construction sites or in real estate to automate access control. Similarly, swimming pool maintenance and cleaning companies could monitor and control the condition of pool water from remote locations. As usual, we expect the Arduino community to come up with countless ingenious ways to implement this new technology.

To learn more about how you can use the Edge Control, check out how to get started.

The Edge Control is now available for €169/US$199 on the Arduino Store.

The post Sense the future of smart agriculture with Arduino Edge Control appeared first on Arduino Blog.

Customizable artificial intelligence and gesture recognition

via Arduino Blog

In many respects we think of artificial intelligence as being all encompassing. One AI will do any task we ask of it. But in reality, even when AI reaches the advanced levels we envision, it won’t automatically be able to do everything. The Fraunhofer Institute for Microelectronic Circuits and Systems has been giving this a lot of thought.

AI gesture training

Okay, so you’ve got an AI. Now you need it to learn the tasks you want it to perform. Even today this isn’t an uncommon exercise. But the challenge that Fraunhofer IMS set itself was training an AI without any additional computers.

As a test case, an Arduino Nano 33 BLE Sense was employed to build a demonstration device. Using only the onboard 9-axis motion sensor, the team built an untethered gesture recognition controller. When a button is pressed, the user draws a number in the air, and corresponding commands are wirelessly sent to peripherals. In this case, a robotic arm.

Embedded intelligence

At first glance this might not seem overly advanced. But consider that it’s running entirely from the device, with just a small amount of memory and an Arduino Nano. Fraunhofer IMS calls this “embedded intelligence,” as it’s not the robot arms that’s clever, but the controller itself.

This is achieved when training the device using a “feature extraction” algorithm. When the gesture is executed, the artificial neural network (ANN) is able to pick out only the relevant information. This allows for impressive data reduction and a very efficient, compact AI.

Fraunhofer IMS Arduino Nano with Gesture Recognition

Obviously this is just an example use case. It’s easy to see the massive potential that this kind of compact, learning AI could have. Whether it’s in edge control, industrial applications, wearables or maker projects. If you can train a device to do the job you want, it can offer amazing embedded intelligence with very few resources.

The post Customizable artificial intelligence and gesture recognition appeared first on Arduino Blog.

The Arduino Forum is now completely renovated (and it’s so nice)

via Arduino Blog

It was a long Monday with the Arduino forum closed for maintenance, wasn’t it? Many people had to hold back their Arduino-related questions for an entire day… panic! But before getting mad at us, read on and you’ll understand it was for an extremely good cause. 😉

We migrated the forum to a new, modern, platform which provides a dramatically improved user experience. Try it now at forum.arduino.cc! It’s fast, clean, practical, and mobile-friendly. The new interface helps focus on contents, share knowledge and generate quality interactions between people.

New Forum Features

  • No more pages to browse manually.
  • Long conversations are loaded dynamically while scrolling.
  • Notifications are shown when someone mentions you or replies to your posts.
  • Links are expanded with previews. Long conversations can be automatically summarized.
  • Trust levels and other tools help fight spamming and encourage good behaviors.

And there’s a lot more!

The new forum is built on Discourse, which is the leading forum platform and is 100% open source. This makes the Arduino forum into the largest Discourse forum in the world, with over one million users and more than five million posts. We partnered with the Discourse team to perform this long and complex migration. It was great to collaborate with people who believe in quality, human-centric software and open source as much as we do.

A big thank you also goes out to all the volunteer moderators who help newcomers and keep things in order. They do an incredible job.

Spending time in the forum, reading conversations and answering questions is a great learning opportunity. Join the Arduino community now!

Forum Notes

User images (avatars) won’t be visible for a few hours because they’re being imported. There’s also some minor formatting in posts that hasn’t been applied yet, like emoticons and underlined text. There’s a job running in the background job which is working on things. Everything will appear automatically as soon as the process is complete. But we wanted to reopen the forum as soon as possible.

These are the most important things you need to know if you’re used to the old forum:

  • Drafts are automatically saved while typing. No need to click “Save Draft”.
  • The “Add Karma” button is not there any more because we now have message likes. If you want to show your appreciation, click the “Like” icon under a post.
  • The “Report to moderator” link has been replaced by the “Flag” button.
  • You can configure your notification preferences on a per-category or per-topic basis by clicking the bell icon at the top-right.
  • There’s no “Print” button any more. Just use the print function of your browser and a printer-friendly rendering will be applied.
  • You can now bookmark your favorite posts. Bookmarks are found, along with your notifications, mentions and history, by clicking on the avatar icon at the top right.

Should you notice issues with the new forum, let us know.

The post The Arduino Forum is now completely renovated (and it’s so nice) appeared first on Arduino Blog.

Test your Arduino projects with GitHub Actions

via Arduino Blog

This article was written by Per Tillisch from the Arduino Tooling Team.

The Arduino team created some tools that make it easy to automate a check for whether your Arduino sketches compile. Used with GitHub Actions, the tools allow anyone to set up a simple “smoke test” on every commit and pull request made to a GitHub repository, with reports on the impacts of those changes.

These free, open source actions are now listed on the GitHub Marketplace.

Why do a compile test?

Although passing a “Does it compile?” check is not definitive proof of a working project, failure to compile is a sure sign of a non-working project! For this reason, it can provide a useful “smoke test”.

Even if you have more formal tests in place, a compilation check remains a valuable supplement, since it is able to catch incompatibilities with the Arduino build system that other tests will miss.

The biggest advantage of this approach is that, unlike other testing methods, it takes very little effort to set up and maintain. All that’s needed is to define a few basic parameters of the compilations, such as which Arduino boards to compile for and which library dependencies of the sketch need to be installed. After that, everything is automatic!

GitHub Actions

GitHub Actions is the preferred automation service for continuous integration in the Arduino firmware repositories. Let’s take a look at its fundamental concepts.

Workflows define the procedure that should run when a specific event occurs in the repository. For example, you might have a workflow that runs every time someone submits a pull request to your repository. Using GitHub Actions is only a matter of adding a workflow configuration file to your repository.

Actions are programs that do specific tasks. These programs are packaged in a manner that makes them easy to reuse in any GitHub Actions workflow. By using combinations of the many actions provided by the open source community, you can easily do complex things with simple, easy to maintain workflows.

Actions for Arduino projects

Several GitHub Actions actions are available for use with Arduino projects. One of these is arduino/compile-sketches. As you might have guessed from the name, this is a tool for compiling Arduino sketches.

A complete workflow to compile the sketches in a repository can be as minimal as this:

On every commit and pull request, this workflow searches the subfolders of the repository recursively for sketches and compiles them for the Arduino Uno. If compilation of any of the sketches has an error, the commit status will be set to failure.

You can see a live demonstration of the workflow here: https://github.com/arduino/arduino-cli-example/tree/compile-sketches-demo

Next, let’s take a look at a workflow that shows some of the other features of the arduino/compile-sketches action:

This is a workflow used to test the sketches that accompany a machine learning tutorial. There are a few differences from the previous workflow:

The tutorial’s sketches were written for the Arduino Nano 33 BLE board, so instead of compiling for the action’s default Arduino Uno board as in the previous workflow, the workflow was configured to compile for the Nano 33 BLE by specifying that board’s fully qualified board name (FQBN) identifier (arduino:mbed:nano33ble) via the action’s fqbn input.

These sketches require some libraries to be installed. The names of the libraries are specified via the action’s libraries input. This causes them to be installed from the Arduino Library Manager.

You can see this workflow in use in the repository: https://github.com/arduino/ArduinoTensorFlowLiteTutorials/blob/master/.github/workflows/compile-sketch.yml

Not just for sketches

Just because we are compiling sketches, that doesn’t mean this action can only be used to test sketches. Compiling a sketch is also testing whether the libraries and boards platform used by that sketch will compile. Continuous integration in library and platform repositories is especially important to avoid breaking components other people rely upon. These projects often have multiple sketches that need to be compiled for multiple boards, making automation of the task even more beneficial. If you’re a library or platform developer, we strongly recommend spending a little time to set up a workflow.

This is the workflow used to test the ArduinoBLE library:

This library supports multiple architectures, so the compilations must be done for several boards. This is done by creating a job matrix. A copy of the compile-examples job runs for each of the boards listed under the jobs.compile-examples.strategy.matrix.fqbn[] key, avoiding the need to define a separate job for each board in the workflow.

You can see this workflow in use in the library’s repository: https://github.com/arduino-libraries/ArduinoBLE/blob/master/.github/workflows/compile-examples.yml

Don’t let its ease of use for basic applications fool you into thinking it’s not suitable for advanced use cases. arduino/compile-sketches is a powerful general purpose tool for compiling Arduino sketches. The configuration options provide a lot of flexibility that will make it useful no matter what your requirements are. See the documentation for details: https://github.com/arduino/compile-sketches#readme

Here’s a workflow using the action to test the ArduinoIoTCloud library: https://github.com/arduino-libraries/ArduinoIoTCloud/blob/master/.github/workflows/compile-examples.yml

This workflow uses the action to test the “Arduino mbed-enabled Boards” platform: https://github.com/arduino/ArduinoCore-mbed/blob/master/.github/workflows/compile-examples.yml

Compilation data reports

The arduino/compile-sketches action can be configured to report the change in memory usage and compiler warnings resulting from commits and pull requests. These will be displayed in the build log:

A companion action, arduino/report-size-deltas, comments on pull requests with a report of the resulting change in memory usage of the sketches that were compiled by the arduino/compile-sketches action:

The workflow for arduino/report-size-deltas is very simple, and doesn’t require any modifications to be used in your repository:

Give it a try!

Continuous integration can reduce the tedious task of manual testing. You probably wouldn’t enjoy compiling multiple sketches for multiple boards for every commit and every pull request, but these new actions are happy to do it for you.

These actions are especially useful for pull request triage. They provide an initial “smoke test” of the pull request without any effort from the repository maintainer. If the workflow job for the pull request fails or reports an undue increase in memory usage, the contributor of the pull request will often work to resolve the issues revealed by the CI system on their own initiative, reducing some of the effort required to review contributions.

We use these actions in the Arduino firmware repositories and are sure you’ll also find them useful for your projects.

Support and feedback

You can discuss or get assistance with setting up continuous integration for your Arduino projects on the Arduino Forum.

Feedback is welcome! Please submit feature requests or bug reports to the issue trackers:

The post Test your Arduino projects with GitHub Actions appeared first on Arduino Blog.

Join Us on the Official Arduino Day Live Stream on March 27th

via Arduino Blog

Everything’s in place and ready for the global celebration of Arduino’s sweet sixteenth birthday, including some amazing interviews, demos and talks. See you on March 27th at 4 p.m. CET on Arduino’s online channels.

It’s Arduino’s sweet sixteenth on March 27th, and after such a tough 2020 we wanted to make it an extra special event.

As you’ve probably already seen, we’ve themed this year’s Arduino Day around “Undistancing: open makes us close”, which is all about using everyone’s favorite tech to bring people together and find new ways to connect while we’re physically apart.

Presentations

There are so many topics the Arduino team wanted to cover this year that we’ve got lots of great presentations in the works for you.

Not least of them being a new inclusivity program called #include, that’s being integrated into Arduino as we speak, but there are big plans to bring it out into the community too. Isabela Freire from the Arduino Design Team will be with us to tell you all about that, and how it can benefit your projects, causes and communities.

We also want to show you around some of the top new Arduino devices, with some big reveals that are guaranteed to get people excited across the maker, education and professional sectors. The Nano RP2040 Connect is definitely going to be a highlight you won’t want to miss.

Interviews

Arduino Day is just as exciting to those of us inside the company, as well as you guys out there in the community. It’s at events like this where we get to talk to brilliant people who are making a genuine difference to the world through open-source tech.

Among them is the ever-inspiring Judi Girò Benet and Billy Chen, co-founders of the amazing breast cancer testing device The Blue Box. This incredible project recently won the international James Dyson Award, and it’s a remarkable tale of a first-time maker who brought her vision to life through Arduino and prototyping her own electronics.

We’ll also be revealing the 10 winners of this year’s Arduino Day Community Challenge. So if you’ve submitted a project to the competition make sure you’re online to find out if a treasure trove of Arduino gear is on its way to you.

Talks

Our very own Massimo Banzi is ready to give you a personal tour of the Tiny Machine Learning (TinyML) Kit. Together with Prof. Vijay Janapa Reddi of Harvard University – who specializes in mobile, cloud and edge-centric computing systems – they’ll discuss the impact that devices like TinyML can have in the education sector.

Ubi de Feo from Arduino Tooling Team will then follow with a first-hand demo of the exciting new Arduino IDE 2 beta, in which he’ll show us how this awesome platform represents the next evolution in accessible firmware development. Everything you ever wanted to know about the new IDE, plus a few new features in the pipeline.

Arduino Day Live Stream

So set the day aside on March 27th to join in with the Official Arduino Day live stream, which launches at 4:00 p.m. CET on the Arduino channels.

Get your seat on the front row at day.arduino.cc, and if you’ve any comments or questions in the meantime, just let us know. 

Oh, and if you want to see your face on the live stream, why not record a short video clip of yourself saying a big happy birthday to Arduino, and we’ll add you to the celebrations!

Just post it on social media with the hashtag #ArduinoD21 and we’ll stick a virtual candle in the sweet 16th birthday cake just for you!