Welcome to the Pololu Blog, where we provide updates about what we and our customers are doing and thinking about. This blog used to be Pololu president Jan Malášek’s Engage Your Brain blog; you can view just those posts here.
We are approaching a year since governments in the US started shutting down businesses in response to the pandemic, and by this time last year, the then-novel coronavirus was already causing what we naively considered to be severe disruption to our operations because of the restrictions that were implemented in China. (We have an office in Shenzhen, and many parts we use, such as bare printed circuit boards, come from China even when our China office is not involved).
The past year has been so filled with ups and downs that it’s difficult to recall how things were when. In my last update in mid-November, I almost wrote something about no one at Pololu having tested positive for COVID yet. That same week, we had several employees test positive as we were caught up in Nevada’s surge in cases. Nevada, like many other states, newly tightened restrictions on businesses and public gatherings, and we scaled back in-person staff to only those necessary on premises for basic operations. Over the holiday period, we had an additional 10-15 people who had been back return to being off-site, leaving around 30 on-site. Fortunately, we seem to have prevented any coronavirus transmission here, and those who did get sick have recovered without serious complications.
Nevada’s government-mandated “pause” was extended twice, and some of the restrictions finally began easing in mid-February. We did have some additional isolated COVID cases among our employees this year, but we have been able to maintain production and shipping throughout this time. It looks like new infection rates are coming down and vaccination rates are going up, which makes it easy to be optimistic that the worst is finally behind us. Like everyone else in the world, we don’t know what changes are still ahead and how close we are to full (or at least substantial) resumption of activities, but it was a big relief at least to make it through 2020, and now the first two months of 2021.
Looking back, we were fortunate to be where we were when the pandemic hit us. One major example is that we did some fairly substantial renovations from 2018-2019, and we spent most of 2019 with big holes in our floors and many areas of the building impassable. I had this hole outside my office starting in February 2019, and the stairs weren’t even usable until July (and they were finally finished even later)!
And our production area looks much better today than it did for most of 2019:
And while it’s still sad to see how empty and underutilized our breakroom has been for the past year, it still beats the piles of dirt we had inside less than a year before.
2020 was stressful enough as it was, and I am very grateful we wrapped up the remodeling by the time the pandemic hit. I feel so sorry for all the businesses who made similar recent investments before the pandemic and then had their businesses completely shut down. At least we are still able to use the space, and I hope it will eventually see more use as it gets safer to have more people in the building.
So, where does that leave us going forward? I’m reminded of a false “proof” by induction, that I can carry infinite weight because I know I can carry some weight and for any weight I can carry, I can carry one gram more. It’s easy to take it for granted and get lulled into complacency that since we’ve made it this far, we’ll make it forever. (That keeps being true until it’s not.) However, I do want to recognize that while in some sense we lost a year, in many ways, we are in a better place than we were a year ago. One way we are acknowledging this is to update our donation requests to be less about our survival. I am hesitant to completely remove those requests and declare victory since that would be an unwarranted arrogance, so I would rather reframe the donation requests as an invitation to support us if you like what we do, similar to how you might donate to content creators on YouTube or Patreon.
Our operations are still stretched fairly thin since we have about 30% fewer people doing almost the same amount of work as we did a year ago. Some things are more difficult to do now than before, but we also have a more experienced core team and we keep working on our processes to do things better. Our emphasis is on normal production and order fulfillment, which I hope has gone well enough that most customers will not have noticed any changes. New challenges, including component shortages and other supply chain disruptions, keep cropping up, but that was also true of just normal life before the pandemic, too. Some of our extra support and special services like product customizations have been affected, but we will work on improving those and on more effective ways to address the very broad range of challenges our customers face.
Thank you to everyone who has supported us and helped us get through this past year. We hope the worst is behind us, and we will keep working hard to contribute to a better future for all of us.
In many applications ranging from robotics to industrial automation, it is useful to quickly detect the presence of objects within a certain distance. Our carrier boards for the Sharp/Socle GP2Y0D8x digital distance sensors have been popular in this role, but those sensors are unfortunately no longer being produced and are becoming hard to find. So we are excited to announce the release of our next-generation lidar-based Pololu Digital Distance Sensors, which can replace the discontinued Sharp sensors and more!
These new sensors use an on-board rangefinder module to determine distance by measuring the time of flight (ToF) of invisible, eye-safe infrared laser light. They are available in three different digital output versions with the same range thresholds as the GP2Y0D8x series:
- Pololu Digital Distance Sensor 5cm
- Pololu Digital Distance Sensor 10cm
- Pololu Digital Distance Sensor 15cm
We also have one additional option for more advanced applications:
(More on that version below.)
A camera with no IR filter shows the infrared light emitted by a Pololu Digital Distance Sensor.
The Pololu Digital Distance Sensors work like the Sharp sensors: they operate with either a 3.3 V or 5 V supply and output a simple digital signal, which is low if an object is detected within the specified range, high otherwise. They have the same indicator LED, pinout, and form factor as our GP2Y0D8x carrier boards (but are much thinner than the Sharp sensors), allowing them to be drop-in replacements in most applications.
The pulse width output version looks almost identical to its digital output counterparts, but instead of simply indicating the presence or absence of an object, it outputs a pulsed signal (similar to a hobby servo control signal) that encodes the distance it is measuring in the length of each high pulse. By timing these pulses, you can get quantitative range readings for targets up to half a meter away (depending on reflectance and environmental conditions).
The four numbered surface-mount jumpers on these sensors’ printed circuit boards, near the mounting hole on the front side, determine the sensor’s operating mode. You can change the jumper connections yourself to customize its behavior and even effectively convert the sensor into a different version (more information on the jumper settings will be available soon). And since we assemble and program these boards here in our Las Vegas facility, we can produce a custom-configured batch of sensors for you. If you are interested in manufacturing customization, please contact us for more information.
We are back to offering an introductory special discount on new products, to help share in our celebration of releasing these Pololu distance sensors. The first hundred customers to use coupon code DISTSENSORS can get up to three units of each type for just $7.87 each!
We are excited to release our first video related to our new 3pi+ robot! This assembly video walks you through the steps found in the assembly section of the 3pi+ 32U4 User’s Guide. While our user’s guides aim to be as thorough as possible, some things are a lot easier to understand when you actually see someone doing it (like soldering the leads to the motor tabs!), so we hope you find this video a useful addition to our 3pi+ documentation.
Is there something you would like to see in a future 3pi+ video? Let us know in the comments below!
Customer and forum user Brian Gormanly (known as bg305 on our forum) just released the first video in his new Arduino Lab Series: Introduction to Robotics: Building an Autonomous Mobile Robot. Brian writes, “Throughout this series we will be introducing topics on building and programming an autonomous mobile robot! You can follow along with each lab adding amazing new behaviors to your robot projects and learning the algorithms and tuning techniques that produce incredible robots!”
Brian is using our new 3pi+ 32U4 Robot in his videos and from the first video, it looks like the series will be a great introduction to robotics and the 3pi+! Subscribe to Brian’s channel Coding Coach so you can make sure to catch each video as it is released.
As I wrote a few years ago, we used to use Travis CI and PlatformIO to confirm our Arduino libraries and examples compile after every code change. This helps us maintain confidence in the quality of our code and makes it easier to release changes. Of course that’s not as good as the extensive testing with actual hardware that we also do, but it’s really great as a quick check that we haven’t completely broken anything.
Unfortunately, Travis CI doesn’t work for code in development that has not yet been put up on GitHub. That, combined with Travis CI limiting how many testing minutes you get each month for free and GitHub Actions existing as a free replacement for it, pushed me to make a new solution that works for us.
So, we made arduino-ci: a simple Ruby script that is super easy to use with the continuous testing solutions provided by GitHub and GitLab. It uses arduino-cli to install cores (bundles of code for specific Arduino board architectures), install library dependencies, and compile all the examples. By default, it compiles all examples for the following boards:
You can use the configuration file to edit these defaults and add any additional library dependencies.
This isn’t the only Arduino continous testing program around. There’s also:
- arduino_ci (underscore not dash) – a much bigger Ruby project with features like C++ unit testing and mocks
- ci-arduino (are you seeing the pattern of confusing names yet?) – Adafruit’s testing program written in Python with features like Doxygen integration and code formatting
Sorry about the names, really! In contrast with these, arduino-ci is a very small program that focuses on compiling Arduino libraries and examples.
We are using arduino-ci for all of our libraries, and it should work for any Arduino Library, so if you have one, please try it out and tell us what you think! For more information, please read the arduino-ci readme.
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!
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!
If you missed our Black Friday sale or realize you didn’t quite get everything you wanted, don’t fret: now through December 24, we have all active Pololu-brand and PCX products on sale for 12% off, and we are offering 15% off twenty broad categories of our products. Save on some Christmas shopping, or stock up now on robot parts for the new year. Merry Christmas!
We have expanded our selection of JST SH-style cables and connectors! These cables and connectors are ideal for use with our magnetic encoders for Micro Metal Gearmotors as seen in the photo on the right above.
In addition to the 6-pin single-ended female JST SH-style cables we’ve offered for a while, we now offer 6-pin female-female JST SH-style cables in five different lengths. Here’s the full list of currently available options:
- 6-Pin Female-Female JST SH-Style Cable 10 cm
- 6-Pin Female-Female JST SH-Style Cable 16 cm
- 6-Pin Female-Female JST SH-Style Cable 25 cm
- 6-Pin Female-Female JST SH-Style Cable 40 cm
- 6-Pin Female-Female JST SH-Style Cable 63 cm
- 6-Pin Single-Ended Female JST SH-Style Cable 12 cm
- 6-Pin Single-Ended Female JST SH-Style Cable 30 cm
- 6-Pin Single-Ended Female JST SH-Style Cable 75 cm
To go along with the new female-female cables, we also have breakout boards available for both the side-entry and top-entry versions of the JST SH-style connector. When used with our encoders and JST cables, these breakout boards offer a convenient way to access the encoder signal and power pins through a breadboard, and the pins are labeled on the board’s bottom silkscreen with this application in mind. Alternatively, these boards can serve as general-purpose breakouts for other applications that do not involve encoders. For example, a pair of connector breakouts with a female-female cable could be used as a removable general-purpose interconnect between different parts of a modular system.
We are trying something new with how we package and sell these connector boards. At Pololu, all our electronics undergo functional testing, where each product is placed on a custom testing apparatus and checked for functionality. This is a labor intensive step in our production process, and for a product as simple as these connector boards, testing and packaging represent a significant amount of the cost to produce it. As such, we are offering two options for purchasing these connector boards: either fully tested and individually packaged, or an untested pack of three.
Even though we do not functionally test the discounted 3-packs, each one undergoes automated optical inspection (AOI) to visually check the placement of the connector and the quality of the solder joints. Additionally, each printed circuit board (PCB) is electrically tested by our PCB manufacturer, so we know the PCB itself is free from electrical defects. This makes it very unlikely for any of the breakout boards to be bad.
The additional functional testing we perform on the fully tested units just confirms the solder connections between the connector and the board. If you purchase the untested units but would still like this additional confirmation, you can easily check it yourself with a multimeter. (Just use it to check for continuity between corresponding pins on the actual JST connector and through-holes on the board, and verify that there is no continuity between adjacent pins.) In the unlikely event you receive a unit with a poor or shorted connection, you should be able to touch it up yourself with a soldering iron. So for common applications that require two boards, such as use with a pair of encoders, you have the option of two individually packaged units we have confirmed functional or, for the same price, three units that have passed visual inspection and are very likely to leave you with two functional units plus a spare.
All units automatically optically inspected.
Here are all of our 6-pin JST SH-style connector options:
- Breakout for JST SH-Style Connector, 6-Pin Male Top-Entry (Individually Packaged)
- Breakout for JST SH-Style Connector, 6-Pin Male Top-Entry (3-Pack Untested)
- Breakout for JST SH-Style Connector, 6-Pin Male Side-Entry (Individually Packaged)
- Breakout for JST SH-Style Connector, 6-Pin Male Side-Entry (3-Pack Untested)
What do you think about this kind of approach where we test something less thoroughly in order to offer it at a lower price? Would you prefer it over the fully tested option? Do you think one option will be more popular than the other? We’d love to hear your thoughts!
Our Black Friday / Cyber Monday sale is going strong, and we have been working hard to make and ship the products that people are getting great deals on. Most of the sale coupons can be used on backorders if we happen to run out of stock, but you should still get your orders in early since lead times on some popular products can get long.
Please note that our same-day shipping guarantee has been suspended since we started operating with a reduced staff in March due to the COVID-19 pandemic (see Jan’s latest post here), though we will do our best to get your order shipped as fast as we can. Additionally, we are closed Thursday, November 26 (tomorrow) for Thanksgiving. Happy Thanksgiving!