Tinymovr alpha: Production Update #1

A project log for Tinymovr Motor Controller

Affordable, precise, integrated motion control for robotics

YannisYannis 07/22/2020 at 18:120 Comments

Here is the first update on the Tinymovr alpha board and Dev Kit manufacturing progress.

I have received all R3.2 PCBs from the manufacturer. Around half of the received boards are assembled and tested, and they perform as expected. For the rest I am waiting for components to be delivered, expected towards the end of the coming week.

In addition, I’ve completed design, assembly and testing of the first Dev Kit (image below).

The rest of the kits will be assembled in the coming week. In the meanwhile, I’ll be posting a video on the Dev Kit operation soon.

For the Dev Kits I have designed a lightweight mount that allows air circulation and that can be secured on a flat surface by adhesive or bolts. The mount allows access to all of the board’s ports while protecting the more sensitive polymer capacitors on the rear side. It is noted that in this configuration the encoder magnet is on the rear side of the board. This places tighter tolerances on the distance of the magnet from the board, but the magnetic field is within the allowed tolerances by the encoder manufacturer. 

Tinymovr Dev Kits include a USB-CAN Bus adapter board. This is an adaptation of the CANable design to use DF13 connectors as well as 2.54mm headers, and utilize a sturdier USB micro connector. This design will be open sourced in the spirit of the original CANable board. 

For this board, PCBWay kindly offered a sponsorship, and the boards just arrived today. They are beautiful in black matte soldermask and ENIG plating (image below).

Stay tuned as I’ll be posting a more in detail review of the boards in a few days.

Regarding the boards themselves; Qorvo, the manufacturer of the PAC5527 chip, have recently released a bootloader that allows firmware upgrades through serial. This is a great solution to enable user-upgradeable firmware as the PAC is currently only supported by J-Link adapters, which, while very capable, carry quite the price tag. I’m working to have the alpha boards and dev kits bootloader-enabled before shipping. I’ve already integrated the bootloader into the Tinymovr project and tested it on one board, which seems to be working as expected. More tests to follow.

Finally, today I’m open-sourcing the first of the Tinymovr software components, the Tinymovr Studio. Tinymovr Studio is a cross-platform (Windows, Macos, Linux) Python library and command line app that takes care of communication with Tinymovr using CAN bus. The user can type in commands in an IPython prompt to send/receive messages, or integrate the library to their project and take advantage of the simple API. Tinymovr Studio will be available through PyPI once Tinymovr alpha is sent out to users. Tinymovr Studio uses the python-can library, allowing it to interface with a broad array of hardware interfaces (including CANable through slcan). In the workshop I’m using it with an Arduino and MCP2551 based adapter I cobbled together for testing. 

The Tinymovr Studio repository also includes work-in-progress project documentation.

Head over to the Tinymovr github repository for more.

Stay tuned for more updates and releases in the coming days.