A printable case for the receiver

An outdoor enclosure for the two-board receiver: two Seeed XIAO ESP32-S3 modules side by side on one carrier PCB, fed by a single USB. Parametric source in three variants — on-board antenna, external dipole, and a vertical wall-mount — so you can change the parts that depend on how yours is put together.

Nobody has printed this yet. The geometry is verified — both meshes are watertight and the dimensions check out — but it has never come off a bed, and one number in it is a guess. comp_h is set to 12 mm and should be the height of the tallest parts on your populated carrier — the USB-C housings and the through-hole pin tails usually win, not the modules. Measure it with calipers and set it before printing.

Download

Three variants of the same 60 × 30 mm carrier box. Print the base and lid; the source is there if you want to change a dimension.

Standard

On-board antennas radiating through the front wall. Start here.

Base, printable cielotrack-carrier-case-base.stl · 679 KB Lid, printable cielotrack-carrier-case-lid.stl · 99 KB OpenSCAD source cielotrack-carrier-case.scad · 6 KB

External dipole

Two tilted SMA bulkheads on the back wall for screw-on 2.4 GHz dipoles, spaced apart to cut BLE/Wi-Fi desense — the higher-gain option.

Base, printable cielotrack-carrier-case-dipole-base.stl · 864 KB Lid, printable cielotrack-carrier-case-dipole-lid.stl · 99 KB OpenSCAD source cielotrack-carrier-case-dipole.scad · 8 KB

Vertical wall-mount

The dipole box with its mounting ears on the front face, so it hangs flush on a wall with the drain still at the true low point.

Base, printable cielotrack-carrier-case-wallmount-base.stl · 899 KB Lid, printable cielotrack-carrier-case-wallmount-lid.stl · 99 KB OpenSCAD source cielotrack-carrier-case-wallmount.scad · 8 KB

Indoor sill stand

The dipole box reclined on a wedge foot so it sits on a window sill — antennas up-and-out, accessible USB-C for power, no mount or weatherproofing.

Base, printable cielotrack-carrier-case-indoor-base.stl · 792 KB Lid, printable cielotrack-carrier-case-indoor-lid.stl · 99 KB OpenSCAD source cielotrack-carrier-case-indoor.scad · 9 KB

Change a dimension in the source and re-export a part (swap in the dipole or wall-mount source the same way):

openscad -D 'part="base"' -o base.stl cielotrack-carrier-case.scad
openscad -D 'part="lid"'  -o lid.stl  cielotrack-carrier-case.scad

Print it in PETG or ASA

Not PLA. An enclosed box in direct sun passes PLA's softening point and sags; this one lives outdoors in Texas. ASA if it is in full sun, for the UV.

Never carbon-filled filament. Carbon fill is conductive and will detune or shield the antenna. That is the worst kind of failure here, because nothing looks wrong: the board boots, reports healthy, and quietly hears less than it should.

Three perimeters at a 0.4 mm nozzle matches the 2.4 mm walls. No supports needed — the openings are all on vertical faces.

Why it is shaped like this

FeatureReason
Antenna bulkhead on a 35° boss Signal at this site peaks around 30–40° of elevation and falls away on both sides, so an antenna forced vertical points above where the aircraft are. The boss also gives the nut a flat face to seat against, and a hole that is not horizontal does not collect water. It is one parameter — sma_tilt — and most rubber-duck antennas hinge at the base anyway.
One tall USB slot, not two ports The boards are stacked, so their USB-C connectors sit one above the other at the same end. A single slot reaches both and cannot misalign with either. They are flashed one at a time, and with the 5 V rails linked they must never both be plugged in at once.
Vents low on the sides, drain at the bottom Nothing open faces upward. Condensation kills more outdoor electronics than rain does, so it needs somewhere to leave.
Mounting ears outside the box So no screw passes through the sealed volume.
18 mm of slack for the pigtail 1.13 mm coax is lossy at 2.4 GHz and unhappy about tight bends. Short lead, gentle loop.

Wiring it

Two boards, three conductors: data on D9 to D10, a shared ground, and UUSB linked so one USB supply runs the pair. A keyed 3-pin connector — JST-XH suits the 2.54 mm pitch — matters more once the 5 V rails are tied, because a reversible plug can put 5 V on the data pin.

Confirm continuity from the USB connector's 5 V to the UUSB pin with a meter before relying on it.