Pololu Blog » User Profile: Ryan »
Posts by Ryan
You are currently viewing a selection of posts from the Pololu Blog. You can also view all the posts.
Popular tags: community projects new products raspberry pi arduino more…
Roll your own continuous Arduino testing with our new arduino-ci
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:
- arduino:avr:uno
- arduino:avr:leonardo
- arduino:avr:mega
- arduino:avr:micro
- arduino:avr:yun
- arduino:sam:arduino_due_x
- arduino:samd:arduino_zero_native
- Intel:arc32:arduino_101
- esp8266:esp8266:huzzah
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.
Video: LVBots May 2018 line following competition
LVBots held a line following competition at Pololu on May 24th. This time we had our “classic” line following course like in previous competitions, and an “advanced” course with gaps, intersections, tighter turns, and shortcuts. Continued…
Pololu and LVBots CES Open House 2018
Are you attending CES or in Las Vegas on Wednesday, January 10th? You can join Pololu and LVBots any time from 5 p.m. to 8 p.m. for CES Open House 2018! Like last year, LVBots members will be showcasing their robotics and electronics creations, Pololu will be giving tours of our manufacturing and other operations, and you can present your company or your projects. We will provide food. Registration and other details are on the LVBots Meetup page.
Parallax Boe-Bot Robot Kit - USB
We are now carrying the Parallax Boe-Bot Robot Kit - USB, which incorporates a USB-to-serial adapter into the board, so it does not require a separate serial adapter.
The Boe-Bot Robot Kit is an educational kit complete with parts and a textbook for building and programming your own robot. No previous robotics, electronics, or programming experience is required; the kit does not require soldering.
Aerial photography kite rig
Pololu customer Yvon Hache made this 3D-printed aerial photography rig that he shared in a forum post. The rig, trailing 100 feet below the kite, automatically triggers a camera to take pictures at three tilt angles and sixteen pan angles. It incorporates an ARM Cortex-M4 microcontroller from Texas Instruments (32-bit, 80 MHz, TM4C123GH6PZ), an AltIMU-10 v5, Pololu voltage regulators, and a Zigbee module for wireless remote control. Yvon uses a pair of Pololu micro metal gearmotor extended brackets per motor—one mounts the motor to the frame and the other protects the encoder assembly.
More kite rig information and pictures can be found on Yvon’s website.
Zumo 32U4 Robot for RoboFest's RoboHit competition
We were excited to hear from the NCA Lights high school student robotics team about their recent entry in the RoboFest Michigan Championship 2017 RoboHit competition. RoboFest is a series of robotics events and competitions organized by Lawrenece Technological University. This year’s baseball-themed competition, “RoboHit”, involved hitting a ping pong ball off of a water bottle with a pencil and circling the outer edge of the arena (base running).
The NCA Lights used a Zumo 32U4 Robot Kit and two 50:1 Micro Metal Gearmotors HPCB 6V with Extended Motor Shaft as the base of their robot.
Open-source myoelectric hand prosthesis
Pololu customer Alvaro Villoslada made this impressive open-source 3D-printable hand prothesis. Each finger uses a 1000:1 Micro Metal Gearmotor HP 6V with Extended Motor Shaft to wind a fishing line—acting as a tendon—onto a spool. A magnetic encoder attached to each motor enables closed-loop control, and the motors are driven by DRV8838 DC motor driver carriers. An RC hobby servo controls the thumb position. Alvaro uses a Teensy 3.1 microcontroller to monitor the encoders and control the actuators, and he built a user interface in Python for controlling the hand from a computer.
For CAD files, detailed instructions and more pictures and videos, see the Hackaday project page.
Guide utilisateur du Robot Zumo Pololu
MCHobby, a Pololu distributor, translated the Pololu Zumo Shield for Arduino User’s Guide to French as the Guide utilisateur du Robot Zumo Pololu (2MB pdf)! They describe it in French as “Un guide complet pour assembler, utiliser et exploiter rapidement votre Robot Zumo (version 0.1)”. If you’d like to see more translations like this, please let them you know that you enjoyed it and support them by buying from their shop.
Sanyo pancake stepper motors with encoders
We are now offering two new NEMA 17-size pancake bipolar stepper motors from Sanyo, each featuring an integrated high-resolution quadrature encoder and home channel for absolute positioning.
Stepper motor | Steps per revolution | Current rating (per coil) | Voltage rating | Resistance (per coil) | Holding torque |
---|---|---|---|---|---|
#2279 42×31.5mm | 200 | 1 A | 5.4 V | 5.4 Ω | 1.9 kg-cm (26 oz-in) |
#2278 42×24.5mm | 200 | 1 A | 3.5 V | 3.5 Ω | 800 g-cm (12 oz-in) |
|
|
The integrated quadrature encoder operates from 5 V and has a resolution of 1000 P/R, which allows for 4000 counts per revolution (CPR) of the output shaft when counting both edges (i.e. rising and falling) of both channels (i.e. A and B). In addition to the A and B channel outputs, the encoder has a home channel, Z, that pulses once per revolution and can be used for absolute positioning. The encoder also has outputs for the inverse of A, B, and Z. A 15 cm (6″) encoder cable is included.
New 12V 1A wall power adapter
We’ve replaced our original 12 V 1 A wall power adapter with a lighter, smaller version. This UL-listed 12 W, “wall wart”-style switching power adapter supplies up to 1 A at a regulated 12 VDC. The AC adapter works with input voltages of 100 to 240 VAC and has a 1.5 m (5 ft) DC power cord that is terminated by a center-positive, 5.5 × 2.1 mm barrel connector.