Monthly Archives: December 2020

Our Year End Sale is going on now!

via Pololu Blog

We have one last sale for you before 2020 comes to an end! Get discounts on products we released in 2020, on all active Pololu-brand items, and on some select products that we’d like to reduce our inventory of. The sale runs through the end of Friday, January 1. Visit the sale page for details. Happy New Year!

Arduino control system puts defunct washing machine back into operation

via Arduino Blog

After three short years of use, Roni Bandini’s Samsung washing machine started to act erratically, and several technicians looked at it without really fixing the problem. Bandini then decided to take matters into his own hands and replaced its brains with a MKR WiFi 1010 board, along with four relays and a trio of buttons.

This new system can control the motor and valves to progress through a wash cycle. It also takes advantage of the Arduino’s WiFi abilities to integrate with Telegram, sending a message to the entire family when the laundry is done.

Future goals for the project include varying the motor speed and making it reverse, but so far it’s a brilliant way to keep a large hunk of metal and plastic out of the junkyard. Code is available on GitHub, and print files for the enclosure are up on Thingiverse.

Upload your sketch over-the-air with the Arduino IoT Cloud!

via Arduino Blog

Over-the-air (or OTA) programming is a very useful feature in all those cases where your devices are located in places that are not easily accessible. For example, you built a weather station using the Oplá IoT Kit, situated it on your rooftop, and started monitoring the weather from an IoT Cloud dashboard. That’s great until you find a bug or want to modify something and have to climb on your roof with a laptop to do so. Here’s where OTA becomes handy. 

If you have connected an Arduino Nano 33 IoT or a MKR WiFi 1010 to the Arduino IoT Cloud, you can now update the sketch using a wireless connection from the web.

How it works

To use OTA, you need to do two things: enable a device and create a Thing.

To enable a device, you need to connect a board to the IoT Cloud and update the firmware. Just plug the device into the USB, go to the Device tab, and click Add Device. A wizard will guide you through the process — at the end, your board will be available as a target for the upload over-the-air and you will be able to update the sketch remotely!

A Thing is a component that manages the dialogue between the cloud and the physical device thanks to a dedicated library (the Arduino Connection Handler), and stores the data into the cloud. Creating a Thing is simple: just select the voice from the IoT Cloud’s main menu, configure the variables that you want to exchange with the device, and pair the board that you have just enabled.

If you are new to the IoT Cloud, here is an in-depth tutorial on how to build an IoT project with Arduino Create. Once you have configured a Thing, you will be able to perform OTA updates. 

Devices that can be updated via OTA will appear in the dropdown list of all updatable devices in the online editors of Create — the full Web Editor and the new Sketch Editor have been introduced in the Thing configuration page to make minor changes to the code.

This Sketch Editor is one of the innovations that we have introduced in the IoT Cloud with two objectives in mind: 

1. Help those who are learning to program with Arduino follow the tutorials of IoT projects, such as those included in the Oplà IoT Kit.

2. Allow users to quickly make small changes to the sketch, which do not require access to libraries or more sophisticated editing functions.

More resources

If you want to know more about OTA and the redesign of the IoT Cloud, we have prepared a couple of detailed tutorials that will walk you through the exploration of the new features. 

Uploading sketches over-the-air (OTA)

Getting started with the Arduino IoT Cloud

New to Arduino Create? It’s a platform that helps you develop and manage connected projects with Arduino, featuring tools to code, monitor, and control devices from the Internet and your smartphones. Sign up for free now!

Don’t miss any updates and receive amazing projects from Arduino in your inbox! 

This machine stacks dominoes automatically

via Arduino Blog

Arranging dominoes in such a way that they knock each other down in sequence can be a fun pastime, but what if you would like a machine to take care of lining them up for you? As seen in the video below, Lewis of DIY Machines has come up with just such a device featuring 3D-printable parts and an Arduino Uno for control.

The project uses a single gearmotor to both move the robot over the floor and actuate the stacking mechanism, creating consistent spacing without the need for additional sensors. A steering servo points it in the right direction, and its motion can be pre-programmed via the Arduino IDE.

What’s more, the machine can be driven from a Blynk smartphone app over Bluetooth (to be explained in an upcoming video). It’s capable of holding around 140 dominoes at a time, and includes a carousel setup that can be changed to keep the placement going!

New products: CP2102N serial adapter and another USB Type-C breakout. Should we do more with USB-C?

via Pololu Blog

Seven years ago, we released a CP2104 USB-to-Serial Adapter Carrier, our first product with a USB Micro-B connector (we had only used Mini-B up to that point). A few months later I wrote a blog post discussing our decision to switch connector types, and since then, we have exclusively used the Micro-B connector in all of our USB products.

Well, it’s now 2020 and we recently released a CP2102N USB-to-Serial Adapter Carrier to replace the CP2104 board, along with a breakout for a different type of USB connector: our USB 2.0 Type-C Connector Breakout Board (usb07b). These products do not seem to have much in common at first glance (other than both being related to USB), but I think they create a good opportunity to talk about USB connectors again.

First, a bit about these new boards:

The CP2102N is Silicon Labs’ replacement for several of their older USB-to-UART bridge ICs that are going out of production, including the CP2104. (It is not to be confused with the even older CP2102 without the “N”, featured on our first USB-to-serial adapter and also being phased out.) Compared to the CP2104, the CP2102N has similar functionality but includes a few small improvements, such as a higher maximum baud rate and a re-programmable configuration ROM. Our CP2102N carrier can be used as a drop-in replacement for our CP2104 board in most applications. For more information, see the product page for the CP2102N USB-to-Serial Adapter Carrier.

Our usb07b connector breakout board is very similar to the first Type-C breakout (usb07a) that we released last year. The two boards use different styles of connectors, and the newer one is priced a bit lower, but they both provide access to all of the USB-C connections required for USB 2.0 operation (power, USB 2.0 data, configuration, and sideband pins) and feature integrated CC pull-down resistors that make it easy to use the port as a power sink. For more information, see the product page for the USB 2.0 Type-C Connector Breakout Board (usb07b).

So now, the obvious question is: Why doesn’t this new serial adapter have a USB Type-C connector?

When we designed and released the CP2104 board in 2013, the USB Type-C connector did not even exist yet. (Its development was probably well under way, but the specification was not finalized until August 2014.) Since then, USB-C connectors have started appearing in all kinds of devices and are becoming increasingly widespread. They offer the promise of a single type of connector that can be used everywhere, supporting faster data transfer, higher power, and alternate modes. On top of all that, the connector is reversible, so you don’t have to worry about getting the orientation of the plug right.

With those advantages in mind, it’s reasonable to wonder why we haven’t started using the Type-C connector in more products. I touched on some of the challenges introduced by USB Type-C when I announced for our first USB-C breakout board, and that increased complexity accounts for part of the explanation here. A full-featured Type-C connector like the one on usb07a has 24 separate pins, way more than the five on a Micro-B connector, which means it’s significantly harder both to design a printed circuit board for it and to ensure good quality and yields when manufacturing that board (especially since half of the contacts on the usb07a connector are small, tightly-packed through-hole pins). Because it is more mechanically complex, the Type-C receptacle usually also costs quite a bit more than a Micro-B connector.

The connector on our new usb07b board improves the situation a bit. It does not expose the eight USB 3 SuperSpeed signals (which we did not make available on our usb07a breakout anyway), and some of the power and ground pins are paired up more conveniently. So this connector effectively has just 12 pins, and they are all surface-mount, which helps lessen some of the design and manufacturing challenges I mentioned. The connector’s simpler construction makes it slightly less expensive as well.

Bottom view comparison of the USB Type-C connectors used on our usb07a (left) and usb07b (right) breakout boards.

This means it’s now a little bit more practical for us to consider a Type-C connector for more applications. However, there is still some question of what is to be gained by switching to it. While the enhanced power delivery capabilities of USB 3 and Type-C might open up some interesting possibilities for new kinds of devices, it’s not clear that our existing products would benefit much from a change to USB-C, and there are some features like SuperSpeed communication that we are not likely to take advantage of anytime soon with the types of electronics we make.

So we want to ask you: what products, revised or new, would you like to see us make with USB Type-C? Would a device have to be uniquely enabled by Type-C in order to be compelling (maybe something like a USB bus-powered motor controller), or is just having a reversible connector alone worth it, and would you be willing to pay a couple extra dollars to get something with a Type-C connector instead of Micro-B? What else about USB-C appeals to you? Please let us know in the comments!

Mesmerize your holiday guests with these motor-driven rheoscopic fluid ornaments

via Arduino Blog

We’ve all see Christmas ornaments shaped like a ball – interesting, but a bit passive. Will Donaldson, however, has created an amazing enhancement for these “orbaments,” adding a rheoscopic fluid inside that shows turbulent swirling patterns as it moves.

The fluid is simply tap water and food coloring, plus the special rheoscopic concentrate that contains an array of light reflecting particles. To maintain a state or turbulence, Donaldson affixed a small drone-style motor to the hanger assembly on top of each orb using hot glue.

Motors were inserted with propellers attached, which were bent to fit inside. To vary the speed of the turbulence, Donaldson added an Arduino Nano, along with an L293 driver, using the analogWrite() function for PWM control.