December 18, 2025
Description
Demo video:
https://peertube.art3mis.de/w/xk4FYHjtFn7LpKPURgXS5J
This is going to be a challenging build. Your best chance for success will require some experience with model building and hobby electronics assembly / soldering.
For this, after printing the shell pieces, you'll need:
adafruit rp2040 propmaker board, with a fair amount of modifications
desolder / remove servo pins
remove stemma connector from board
remove / desolder external neopixel pin screw section
custom PCB assembled by either jlcpcb.com or pcbway.com
28 awg wire for power connections between custom PCB and adafruit board
a laser pointer (optional)
You WILL need the slimmest possible usb-C adapter or DIY cable so you can charge it once it's assembled. Otherwise you'll have to remove the board from the shell every time you need to recharge it. The thumb pad should press-fit into the body, so you should be able to flip the switch on the board to turn it off if you're not going to use it for a while.
Assembly notes:
inner emitter glues to the outer emitter, then press-fits into the top of the main body
trigger button should be taped to the underside of the thumb pad, then slid and press-fit into the main body
emitter tip can be press fit into the outer emitter - you don't need glue for this, but you can use some if you want
assembled emitter should press-fit into the body without the need for glue.
i highly recommend also removing the battery connector from the adafruit board, and replacing it with a pair of wires connected to the same jst plug. this will make the whole build fit in the shell less awkwardly, and allow better settings buttons movement.
This phaser, when completed, will have:
laser pointer with supporting led beam
show-accurate sounds wherever possible for firing, overload
sound that persists for as long as you want to hold down the trigger
auto-sleep mode to save battery. press down any button to wake phaser back to default mode.
8 RGB leds for “settings”
lowest mode is “cleaning / warning shot mode” (single pink led)
intensity modes 1-8 transition from green > yellow > orange > red as intensity goes up
overload mode with a progressively flashing display and beep sound before an explosion sound. after the explosion sound, the phaser goes into sleep mode.
settings menu, accessible when both settings buttons are held down for 2 seconds. within this menu, you can modify multiple settings, but they will return to default when phaser goes to sleep. getting these to persist between sleeps is on my to-do list. settings allows:
frequency remodulation - adds a slight color tint to the beam
wesley's autofire mode - persists until any button is pressed
sound volume increase / decrease
sleep timer disable / enable
beam led brightness
settings led brightness
start phaser overload
battery level indicator - shown when it wakes from sleep, and when the left setting button is pressed while already at lowest intensity (0 / pink / Mariner mode)
intensity setting goes from 0-8. level 1 is a single green light, where 0 is a single pink light. the pink light is meant to represent warning shot / misc cleaning (broom?) mode. i call this setting Mariner mode.
at max intensity, if the right setting button is held down over 2 seconds and released, the phaser will go into overload mode. it will flash all settings red progressively faster as a warning countdown before it plays an explosion sound. after the explosion sound, it goes to sleep mode.
The small amount of space means you'll need to be very comfortable soldering components in a particular order- I soldered headers to get the custom PCB and adafruit propmaker board as flush as possible while back-to-back.
Final build shown has almost all parts printed in PLA with a spray acrylic clearcoat. Settings “window glass” and inner emitter use clear sainsmart TPU. Translucent parts then got treated with gel nail polish clearcoat before assembly.
Aside from the custom electronics board and the adafruit rp2040 propmaker, you can also attach a laser pointer, but it's not required. I used a 250mah 3.7v battery - you'll want to find something that's as flat (under 5mm thick?) and small as possible. I used a 402035, but you'll want to make sure anything you buy uses the same orientation in the battery plug as the adafruit board needs. I had to remove the wires from this one's plug and swap them. The 250mah battery lasts about a day and a half if the board switch is left in the “on” position.
I also put some golf weights in the inside of the shell to add some weight. I recommend filling some of the inside of the shell with some sugru or something to make sure the settings buttons don't move the board when pressed.
Pictures of shown print use
Sainsmart Clear TPU (settings LED and emitter tip "glass") - you'll probably get best results with these 3d printed in transparent resin, with a lot of post processing
Code for the board and custom electronics board design files are on the github, but also at the bottom of this files list:
https://github.com/lambtor/Phaser
The board design is meant to sit on top of the adafruit rp2040 propmaker. Split off the LED row sections along the sides, then solder the side-chunk you like better as the row on top, with basic headers to raise it. The pictures don't necessarily show the revised "v5" board as part of assembly.
License:
Creative Commons — Attribution