Whistling Birds v2.0 — Change log

Whistling Birds v2 gearbox comparison showing v1 in orange and v2 in blue

The main driver for v2 was getting the Whistling Birds ready for preassembled kit production. Since the original release, I have been collecting feedback from DIY builders and making small iterative improvements. That feedback helped, but preparing kits for customers who are much less likely to want to open the unit back up and troubleshoot it forced a deeper review of the design, fit, finish, and manufacturability.

v2 is the result of that review. On the hardware side, the focus was a cleaner gearbox, better fit and finish, lower friction, stronger snap-fit behavior, and geometry that prints more consistently. On the software side, the focus was improved usability and personalization so the module feels easier to operate and easier to tailor to the owner.

Looking for the build docs? The full build guide, assembly instructions, operations guide, and support docs are available here: Whistling Birds Guide Landing Page.


Model changes

The biggest physical change in v2 is the gearbox and front-module system. The entire assembly was reviewed from the perspective of repeatable production, cleaner installation, and long-term reliability. The goal was not to change what the prop is supposed to do, but to rebuild the parts that were creating friction during printing, fitting, assembly, and service.

Nearly every printed part was touched. The only parts that were left unchanged are the inner and middle LED housings/covers (the magnet-bearing pieces) and the short push arms. Everything else was rebuilt from the ground up around better geometry, better fit, and more reliable assembly behavior.

All printed parts comparison between Whistling Birds v1 and v2, showing the updated part layout and revised component set
All parts comparison: v2 cleans up the printed-part set, updates several module pieces, and removes older geometry that no longer needs to be printed separately.
Gearbox v1 vs v2 — four views showing the redesigned internal layout. v1 highlighted in orange, v2 in blue.
Left/orange: v1. Right/blue: v2. The gearbox housing was reworked for cleaner access and improved clearances.

Better fit, finish, and print quality across the gearbox

A large part of the v2 effort was improving how the gearbox prints and how the finished parts come together. The geometry was rebuilt to reduce ugly edge conditions, improve how surfaces resolve in print, and produce cleaner-fitting parts with less post-print cleanup. That matters for DIY builders, but it matters even more when building finished kits that need to look and feel production-ready out of the box.

Power button moved to the side

The power button is now on the side of the unit instead of the top face. That makes it easier to press intentionally, less likely to get bumped during handling, and easier to access once the module is installed in a gauntlet.

Case covers and snap closures

The surrounding covers were rebuilt with the housing update. The wire cover, MCU cover, and battery cover were all adjusted so the parts seat more cleanly, close with less fiddling, and hold with a more reliable snap fit. This is the kind of change that looks minor in a diff, but it matters immediately when assembling units repeatedly or opening them for service.

Gearbox Wire Cover — v1 on the left with flat orange tab, v2 on the right with rounded blue channel
Wire cover: the updated shape improves how the cover seats and closes against the housing.
Gearbox MCU Cover — v1 on the left highlighted in orange, v2 on the right in blue, showing the geometry change
MCU cover: the revised geometry supports the side button move and a cleaner closure.
Gearbox Battery Cover — v1 on the left, v2 on the right, showing updated battery retention geometry
Battery cover: revised geometry improves fit and closure behavior.

Lower friction geartrain and easier front-module attachment

The moving parts also got cleanup. One of the bigger mechanical issues in v1 was servo drag against the drive axle, so v2 reworks the geometry to reduce friction and smooth out the motion path. At the same time, the outer LED row attachment was redesigned along with the long push arm to make front-module assembly much faster. The inner and middle rows still connect with magnets as usual. The outer row now hooks onto the redesigned push arm with one finger, then snaps into place by pushing it forward and down. To remove it, arm the unit and pull the outer LED row back toward the gearbox to unhook it.

Timing gear comparison between v1 and v2 showing revised geometry for smoother motion
The timing gear profile was revised as part of the broader geartrain cleanup to reduce drag and smooth out motion.
Outer LED row comparison between v1 and v2 showing the revised connection geometry
The redesigned outer LED row hooks onto the long push arm and clips into place by pushing it forward and down. To remove it, arm the unit and pull the outer LED row back toward the gearbox.
v2 servo gear showing the redesigned profile
The v2 servo gear was redesigned as part of the geartrain friction cleanup and changes the effective gear ratio, which is why the servo timing defaults changed.
v2 redesigned long push arm showing the updated hook geometry
The long push arm was redesigned to work with the new outer LED row attachment. The hook geometry is what makes the one-finger clip-in and pull-to-remove motion possible.

Nozzle mount and retaining clip were reworked for installation

The mounting interface inside the gauntlet also got a major cleanup. The nozzle mount and rear retaining clip now make the module easier to position, easier to remove, and easier to reinstall without fighting the older clip-based front connection. This was a major part of making the system more practical both for repeatable kit assembly and for owners who may still need occasional service access.

Nozzle mount glued to the underside of the gauntlet nozzle
The revised nozzle mount gives the front of the module a cleaner, easier-to-manage attachment point inside the gauntlet.
Rear retaining clip glued to the gauntlet interior to center and secure the gearbox
The rear retaining clip keeps the module centered and secure while still making removal and reinstallation more straightforward.

Firmware changes

The firmware changes in v2 are focused on usability and personalization. The goal was to make the prop easier to operate, easier to configure, and easier to tailor to the owner without losing the feel of the original behavior. This release also updates the default gear timing values because the revised model changes the effective size relationship between the servo gear and the drive gear.

Servo timing defaults were updated for the revised gears

The v2 software adjusts the default _SERVO_ANGLES values to match the revised servo-gear and drive-gear geometry in the updated hardware. If you are building the new printed parts, use the new firmware defaults as-is.

Position v1 default v2 default
0 — retracted
1 — row 1 50° 70°
2 — row 2 100° 120°
3 — row 3 150° 180°

If you want the new firmware features without upgrading the hardware, back up your current _SERVO_ANGLES before updating. After the new files are copied over, restore those values into the new config.py so your existing mechanism keeps its known-good travel.

Config menu changed from double-tap to long hold

The config menu now opens with a long magnet hold while disarmed instead of the older double-tap gesture. That makes menu entry more deliberate and cuts down on accidental triggers from movement during normal handling.

Battery status is the default menu entry

The first thing shown when the config menu opens is now the battery view. That gives quick access to the current charge state without making you step through other items first, which is more useful in real operation than landing on a generic entry state.

Firing mode became a first-class setting

Firing behavior is now configured through two independent settings in the config menu: Firing Mode and Salvo Size. That makes the current behavior visible and adjustable without relying on gesture-only logic.

Firing Mode controls whether and how firing is triggered:

  • Off. The unit arms normally and the LEDs activate, but firing gestures do nothing. Good for arming up, walking around, and getting photos without risk of accidentally firing.
  • Tilt (default). Tilt the wrist left or right to fire. Tilt up or down while armed to cycle through salvo sizes.
  • Shake. A sharp wrist shake fires the weapon. Tilt left or right to cycle salvo sizes — left/right is used here instead of up/down because a shake motion is more likely to accidentally register as an up/down tilt, so the salvo control uses the other axis to stay out of the way.

Salvo Size controls how many darts fire per trigger. The available sizes are:

  • 0 — Row by row. Darts fire from each row in sequence rather than all at once.
  • 1 — Single dart. One dart fires per trigger.
  • 4 — Small salvo. Four darts fire in sequence — the same burst seen in The Mandalorian Season 1, Episode 2.
  • 12 — Full salvo. All twelve darts fire.

Idle animations were added

Armed idle behavior now includes selectable idle animations. That gives the prop a cleaner standby presentation and makes it easier to choose the look you want without changing the core firing behavior.

Ongoing cleanup for battery life

As always, the firmware work also includes cleanup aimed at squeezing more useful runtime out of a very small battery-powered device. Some of that comes from explicit behavior changes, and some of it comes from incremental housekeeping in how the controller and LEDs behave when the prop is not actively firing.


Upgrading from v1

If your v1 build is working correctly, you do not need to rebuild it immediately. The v2 changes focus on usability, serviceability, and cleaner behavior rather than changing the core concept of the module.

If you are planning a rebuild, the biggest differences to expect are the updated gearbox geometry, the side-mounted power button, the stronger snap-fit behavior across the covers, the lower-friction mechanism cleanup, the easier front-module attachment, the revised servo/drive gear relationship, and the firmware usability updates.

If you are only taking the software update, back up your current config.py first and make a note of your current _SERVO_ANGLES. The firmware update process is documented on the Software and Configuration page and covers the correct sequence: back up your config, delete the existing files from CIRCUITPY, and copy the new release files over cleanly.

0 comments

Leave a comment

Please note, comments need to be approved before they are published.