Duckiebot Configurations#

What you will need

  • Nothing

What you will get

  • Knowledge of Duckiebot configuration naming conventions and their respective functionalities.

We define the different Duckiebot configurations, from the first DB17 used during the MIT course 2.166 in 2017 to the latest available.

Duckiebots DB18 onwards can be obtained from the Duckietown project store.

Overview#

Model

Computation

Sensing

Actuation

Memory

Power

Notes

DB17

RPI3

Camera

2x DC motors, 5x RGB LEDs

32GB

Off-the-shelf

DB18

RPI3B+

Camera

2x DC motors, 5x RGB LEDs

32GB

Duckie-power bank

addressable LEDs

DB19

RPI3B+

Camera, Wheel Encoders

2x DC motors, 5x RGB LEDs

32GB

Duckie-power bank

DB21M

JN2GB

Camera, Wheel Encoders, ToF, IMU

2x DC motors, 4x RGB LEDs, Screen

32GB

Duckiebattery

Chassis v1

DB21

JN2GB / JN4GB

Camera, Wheel Encoders, ToF, IMU

2x DC motors, 4x RGB LEDs, Screen

64GB

Duckiebattery

Chassis v2

Legend:

  • “JN”: NVIDIA Jetson Nano

  • “RPI”: Raspberry Pi

  • “ToF”: Time of flight

  • “IMU”: Inertial Measurement Unit (Accelerometer, Gyroscope)

Duckiebot version 2021, or DB21#

The Duckiebot DB21 debuted with the “Self-Driving Cars with Duckietown” massive open online course, as version DB21M.

Later revisions, referred to under the broader label DB21 and then DB21J, improve the DB21M by:

  • expanding the onboard memory from 32 GB to 64 GB;

  • tweaking the chassis design (v1.0 -> v2.0) for reduced complexity and increased stiffness;

  • introducing a newer version of the HUT (v3.15); which is backwards compatible and removes the need for an additional resistor on the top button;

  • downgrades the IMU version from MPU-9250 to MPU-6050 due to global chip shortages (2021-2022 chip crisis).

To assemble a DB21J Duckiebot, follow these instructions.

Note

You can obtain a DB21J Duckiebot from the Duckietown project shop.

Duckiebot MOOC Founder’s edition, or DB21M#

The DB21M is the first Duckiebot equipped with an NVIDIA Jetson Nano 2 GB computational unit instead of a Raspberry Pi.

The DB21M debuts in 2021 with the first edition of the massive open online course, hosted on the edX platform.

../../_images/db21m.jpg

Fig. 1 The Duckiebot version DB21M.#

The DB21M is readily recognized by its blazing blue chassis and triple-decker configuration. It is equipped with a sensor suite including: camera, time-of-flight sensor, inertial measurement unit (IMU) and wheel encoders. Moreover, the DB21M features new electronics (HUT v3.1, front and back bumpers), a screen, a button and a custom designed Duckiebattery (not to be confused with the Duckie-power-bank).

To assemble a DB21M Duckiebot, follow these instructions.

Note

DB21M Duckiebots are no longer manufactured. If you want to obtain one you might try to find inventory leftovers from Duckietown official distributors, or reach out to the Duckietown hardware team.

Duckiebot version 2019, or DB19#

The DB19 is the latest version of the Duckiebot. You have a DB19 Duckiebot for sure if you have the blue motors shown in figure .

../../_images/dc-motor-db19.png

Fig. 2 The motors for the version DB19.#

Apart from the new motors and another HUT (v. 2.1), the DB19 is identical with the DB18. A complete version can be seen here:

../../_images/db19-complete-cad.png

Fig. 3 The complete Duckiebot DB19.#

To assemble a DB19 Duckiebot, follow these instructions.

Note

DB19 Duckiebots have been extremely successful but are no longer manufactured, and to the best of our knowledge only a few still exist unboxed.

Duckiebot version 2018, or DB18#

You have a DB18 Duckiebot if, e.g., you have pledged to the Kickstarter.

There are two configuration of the DB18.

The DB18 configuration#

The main configuration is labeled plainly as DB18 and is designed to operate on any Duckietown. You have the DB18 if, e.g., you are a student attending the 2019 graduate level classes in ETH or the University of Montreal, or you have pledged to Summer 2018 Kickstarter.

The DB18 supports different power bank models depending on the geographical region, but all these solutions are functionally equivalent, although their form factor is different.

You can recognize a DB18 from previous versions for having only one board in addition to the Raspberry Pi, a backplate, and the computational stack mounted in the bottom deck.

../../_images/howto_assemble_finish_milestone.jpg

Fig. 4 A DB18 Duckiebot assembly.#

../../_images/howto_assemble_finish_milestone-2.jpg

Fig. 5 Another DB18 Duckiebot assembly, with different battery.#

To assemble a DB18 Duckiebot, follow these instructions.

Note

DB18 Duckiebots are no longer manufactured. There are very few unopened DB18 boxes in the world. For additional information, reach out to contact the Duckietown hardware team.

The DB18-Robotarium configuration#

The DB18-Robotarium configuration adds to the DB18 the hardware necessary to operate in Robotariums (a.k.a. Duckietown Autolabs): continuously operating Duckietowns. They are otherwise identical to the DB18.

The additional hardware consists of a top localization April Tag infrastructure and an “auto-charging” mod, which allows Duckiebots to dock to charging stations and estimate the residual battery charge.

Autolabs are experimental Duckietown features, currently under development. You will find DB18-Robotarium models in university research labs.

If you are interested in obtaining DB18-Robotarium Duckiebots, or in building your Duckietown Autolab, contact the Duckietown team.

../../_images/a-glimpse-in-the-robotariums.png

Fig. 6 A Duckiebot in DB18-Robotarium configuration.#

Duckiebot versions 2017, or DB17#

In the DB17 version, we had several configurations.

The configurations are defined with a root: DB17-, indicating the “bare bones” Duckiebot used in the Fall 2017 synchronized course, and an appendix y which can be the union (in any order) of any or all of the elements of the optional hardware set \(\mathbb{O} = \{\)w, j, d, p, l, c\(\}\).

A DB17 Duckiebot can navigate autonomously in a Duckietown, but cannot communicate with other Duckiebots.

The elements of \(\mathbb{O}\) are labels identifying optional hardware that aids in the development phase and enables the Duckiebot to talk to other Duckiebots. The labels stand for:

  • w: 5 GHz wireless adapter to facilitate streaming of images;

  • j: wireless joypad that facilitates manual remote control;

  • d: USB drive for additional storage space;

  • c: a different castor wheel to replace the preexisting omni-directional wheel;

  • p: PWM hat for convenient powering of the DC motor hat;

  • l: includes LEDs, LED hat, bumpers and the necessary mechanical bits to set the bumpers in place. Note that the installation of the bumpers induces the replacement of a few DB17 components;

It may be convenient at times to refer to hybrid configurations including any of the DB17-jwcd in conjunction with a subset of the DB17-l components. In order to disambiguate, we define partial upgrades as:

  • DB17-l1: adds a PWM hat to DB17, in addition to a short USB angled power cable and a M-M power wire;

  • DB17-l2: adds a bumpers set to DB17, in addition to the mechanical bits to assemble it;

  • DB17-l3: adds a LED hat and 5 RGB LEDs to DB17-l1l2, in addition to the F-F wires to connect the LEDs to the LED board.

Note: introducing the PWM hat in DB17-l1 induces a replacement of the spliced cable powering solution for the DC motor hat. Details can be found in .

  • Functions: DB17-l is the necessary configuration to enable communication between Duckiebots, hence fleet behaviors (e.g., negotiating the crossing of an intersection). Subset configurations are sometimes used in a standalone way for: (DB17-l1) avoid using a sliced power cable to power the DC motor hat in DB17, and (DB17-l2) for purely aesthetic reasons.