Altium · Embedded C · WebGL

Hardware Lab

Boards, motors and sensors: an Altium PCB you can orbit in 3D, a three-phase motor wound from scratch, and a water-contact sensor built for a UAS. In the gallery below the board, clicking a reference image swings the 3D view round to the orientation it was captured from.

PCB Lab · Digital Twin

Heart-rate PCB · Altium Designer 24 · Drag to orbit · Scroll to zoom

BPM72
LED dome, pulses with BPM
Board body, semi-transparent in X-Ray mode
Click a reference image to sync 3D orientation

Altium Reference Gallery

Click to sync 3D view · Hover to zoom

3D Assembly View · Top-side component render · Heartbeat Hotel Rev. A

BLDC Motor · Technical Deep Dive

$94.92 / $100 CAD

CAD Cross-Section

9-pole stator · 16-pole rotor · Wye winding geometry

Physical Prototype

Physical Prototype

PETG HF housing · Iron bolt stator teeth · 24 AWG windings

Motor Demo

First spin-up · AaABbBCCC winding sequence · Hobbywing Skywalker 30A V2 ESC

hub

Magnetic reluctance

μᵣ: 1 → ~200

Challenge

PLA stator teeth have a relative permeability of ≈ 1, effectively air. High reluctance limited flux density and produced insufficient torque at target RPM.

Solution

Replaced the PLA teeth with iron bolts (μᵣ ≈ 200), which give the flux somewhere to go. More torque for the same windings and the same current.

thermostat

Thermal limit

Tg: 55°C → 70°C

Challenge

Resistive heating under the 30A ESC draw brought winding temperatures near the PLA+ glass transition (Tg ≈ 55°C), risking dimensional deformation of the stator and rotor housing.

Solution

Reprinted the base and rotor in PETG HF (Tg ≈ 70°C). It holds its shape at the temperature the windings actually reach, and its layers hold together better where the magnets are pressed in.

electric_bolt

Winding sequence

ABCABCABC → AaABbBCCC

Challenge

Initial ABCABCABC winding distributed opposing magnetic polarities across adjacent teeth, causing torque cancellation and low-speed oscillation that prevented clean spin-up.

Solution

Rewound as AaABbBCCC, which puts each phase on neighbouring teeth instead of spreading it around the stator. The poles then pull the same way at the same time and it spins up cleanly.

Topology9S / 16P Inrunner
Winding~200 T/pole · 24 AWG
Rₚₕ~2.022 Ω
ControlArduino + Hobbywing 30A

2nd Year UAS Aerospace Team: Water Contact Sensor

UBCO UAS Aerospace Team · 2nd Year

Detects when a tube lowered from a UAV touches the water inside a target barrel.

ApplicationUAV tube-water contact detection in target barrel
ToolKiCad 7.0
FocusSchematic capture + PCB layout
TeamUBCO UAS Aerospace Team
Year2nd Year Engineering