Electrical & Computer Engineering

Hi, I’m Ben.

I’m studying Electrical & Computer Engineering at the University of Colorado Boulder, pursuing my B.S. (May 2027) and M.S. (May 2028).

Ben Mackert smiling in a blue shirt and black vest
Ben Mackert CU Boulder · B.S. / M.S.
B.S. Electrical & Computer Engineering
3.9 GPACU Boulder · Expected May 2027 · Dean’s List
M.S. Electrical & Computer Engineering
4.0 GPACU Boulder · Expected May 2028

Experience

Industry experience

  1. PresentSan Francisco, CA

    Chief Technology Officer (CTO) · Skopos

    Developing an interior-survey system that connects drone sensing, a wearable computer, and a map displayed on smart glasses.

    • Lead technical development across embedded sensing, mapping software, and the heads-up display.
    • Develop a system with separate depth sensing for obstacle avoidance and scanning LiDAR for interior surveys, with map processing on a wearable computer.
    • Validate mapping, obstacle avoidance, and autonomous survey behavior in simulation. The obstacle sensor runs on bench hardware; the aircraft remains in development.
    • Embedded systems
    • LiDAR
    • Mapping
    • Robotics
    • Wearable displays
  2. Jun – Aug 2026Boston, MA

    Electrical & Software Engineering Intern · Medtronic

    Computer vision and hardware bring-up for a surgical robotics program.

    • Built a surgeon head-pose tracking pipeline using Intel RealSense, OpenCV, MediaPipe Face Mesh and solvePnP, and measured RGB and NIR camera tracking against a motion-capture reference system.
    • Synchronized motion-capture head pose with camera frame timestamps over DDS, so stereo NIR, RGB and reference tracking could be compared both live and after each session.
    • Built a Python GUI to manage capture metadata and log synchronized tracking data across test sessions.
    • Supported STM32 board bring-up for a surgical robotics prototype: debugged hardware issues and wrote I²C firmware for sensor data acquisition.
    • Python
    • OpenCV
    • MediaPipe
    • RealSense
    • DDS
    • STM32
    • I²C
  3. May – Aug 2025Denver, CO

    Electrical Engineering Intern · CONMED Corporation

    Auto-calibration hardware for electrosurgical unit (ESU) testing.

    • Designed and built an auto-calibration system using an Arduino Nano Every and a digital potentiometer, mapping ESU voltage to resistance with a 4th-degree polynomial.
    • Designed a custom PCB in Altium for the calibration hardware, with a resistor ladder under MCU control.
    • Wrote a Python Tkinter GUI with a serial and Matplotlib backend to plot calibration in real time.
    • Cut calibration error by 92.5%, which made the system compatible with every transformer and reduced manufacturing scrap. Simulated 3- and 4-point calibration down to 1.76 Ω² LMS error.
    • Altium
    • Arduino
    • Python
    • Tkinter
    • Calibration
    • Curve fitting

Selected work

Made. Tested. Documented.

A selection of circuits, embedded systems, and software. The details, measurements, and lessons are in the write-ups.

Business-card PCB with a 555 timer driving four blue LEDs of different brightness

ECEN 3730 · PCB Design · Fall 2026

555 timer board: design, bring-up & characterization

A business-card-sized board with an LMC555 driving four LEDs through 10 kΩ to 50 Ω resistors. It worked on first power-up with no rework. I brought it up in stages using jumper isolation switches and characterized it with a scope.

  • 502 Hzmeasured vs. 481 predicted
  • 66%duty cycle (66.7% designed)
  • ~32 Ωextracted 555 Thevenin R
  • Altium
  • Bring-up
  • Oscilloscope
Bar chart comparing 2-wire, nulled and 4-wire trace resistance measurements

ECEN 3730 · Labs 11 & 12 · Fall 2026

Trace resistance & current capacity

I measured eight copper traces four different ways and showed that 2-wire readings were 2 to 40× too high because of lead and contact resistance. Then I pushed current through a 5 mil trace until it smoked and compared the result with the IPC-2221 limit.

  • 0.41 mΩ/sqmeasured sheet R
  • ~1.6 milinferred copper thickness
  • 5 Ato smoke (IPC: ~1 A)
  • 4-wire Kelvin
  • IPC-2221
  • Data analysis

Project · Altium Designer

STM32 board with Bluetooth & USB-C

A 4-layer STM32 board that adds USB-C data and BLE telemetry for wireless diagnostics during testing. I worked with three other engineers on the stack-up and high-speed routing constraints to keep EMI down, and wrote oscilloscope test procedures that sped up bring-up.

  • 480 MbpsUSB-C data
  • 4-layercontrolled routing
  • +20%debug efficiency
  • Altium
  • High-speed layout
  • USB
  • BLE

ECEN 4610 · Senior Capstone · Fall 2026 · in progress

SPICE: photon-statistics timing firmware

This is the firmware for a Hanbury Brown–Twiss setup. It timestamps every pulse from two single-photon detectors on one shared clock and builds the g²(τ) histogram that tells you whether light is random, bunched or made of single photons. I run the STM32H723 at 550 MHz with dual-channel timer input capture streamed into circular DMA buffers.

  • 3.6 nstimestamp resolution
  • 101 × 10 nshistogram bins
  • 64-bitwrap-extended time base
  • STM32H7 / Cortex-M7
  • DMA
  • Input capture
  • Cache coherency

ECEN 5003 · Embedded AI (graduate) · Fall 2026

Keyword spotting on an STM32F407

A wake-word pipeline that runs entirely on the microcontroller. It goes from the PDM microphone through I²S/DMA to an STFT spectrogram, then a small CNN running in ExecuTorch, with predictions streamed over UART. I trained a compact model that beat the 11-million-parameter reference while fitting comfortably in 1 MB of flash.

  • 95.3%validation accuracy (ref. 93.3%)
  • ~1,100×fewer parameters
  • 1.2 send-to-end on board
  • PyTorch
  • ExecuTorch
  • DSP
  • C++
  • Renode

ECEN 5003 · Embedded AI (graduate) · Fall 2026

Neural-network inference on bare metal

I trained a 1-16-16-1 tanh network to approximate sin(x), exported it to ExecuTorch, and ran it on a Cortex-M4 with no OS to drive LED brightness through PWM. I trimmed the kernels down to three operators, put the memory pools in CCM RAM, and found a UART baud bug on macOS by reading fault registers over SWD.

  • 0.00045mean error vs. sinf()
  • 4.1 KBmodel
  • 7.5%flash used
  • ExecuTorch
  • CMake
  • PWM
  • SWD debugging

ECEN 3593 · Computer Organization · Spring 2026

Pipelined RISC-V CPU in SystemVerilog

I built a 5-stage RV32I processor over seven phases: an instruction decoder, a pipelined datapath with a register file, ALU and immediate instructions, data forwarding to resolve hazards, branches, and finally loads and stores. I verified each phase with hand-written RISC-V assembly tests in Icarus Verilog and GTKWave.

  • SystemVerilog
  • RISC-V assembly
  • Icarus Verilog
  • GTKWave
  • Hazards & forwarding
Slice app wordmark

Personal project · iOS · 2026

Slice: scan a receipt, split the bill

A SwiftUI app that scans a receipt with the document camera and parses the line items. You assign each item to a friend from your contacts, and the app splits the total. Receipt parsing runs through a Firebase Cloud Functions proxy that reconciles an on-device heuristic parse with an LLM parse. Payments go through Stripe. Built for TestFlight.

  • Swift / SwiftUI
  • VisionKit
  • Firebase Functions
  • Stripe

Coursework

Coursework, labs & writing

Technical courses

  • Circuits I & IIA, A
  • Electronics Design LabA−
  • Embedded Software EngineeringA
  • Linear SystemsA
  • Computer OrganizationA
  • Real-Time Operating SystemsA−
  • Probability TheoryA
  • Data StructuresA
  • Programming Digital SystemsA−
  • Calculus I, II, IIIA, A−, A−

This semester (Fall 2026)

  • ECEN 4610 Senior Capstone
  • ECEN 5003 Embedded AI (grad)
  • ECEN 3730 PCB Design
  • ECEN 4133 Computer Security
  • EMEN 3100 Engineering Management

More reports & documents

Skills

Languages
C, C++, Python, SystemVerilog / Verilog, RISC-V assembly, Swift, Java, LaTeX, HTML / CSS
Tools
Altium Designer, STM32CubeIDE, LTspice, SolidWorks, SEGGER SystemView, OpenCV, MediaPipe, PyTorch / ExecuTorch, Git
Hardware
PCB design, bring-up, SMD & THT soldering, oscilloscopes, function generators, DMMs, 4-wire measurement

A little about me

Beyond the bench

I'm pursuing a B.S. and M.S. in Electrical & Computer Engineering at CU Boulder, expected in May 2027 and May 2028, respectively. I like work where hardware and software meet: deciding what "working" means before power-up, then proving it with a scope and a test plan. My internships at CONMED and Medtronic put that into practice on medical devices, and I'm looking for full-time roles in embedded systems, hardware, and robotics.

Outside of engineering I run and golf. I finished my first marathon, the 2025 Boulderthon, in 3:12:14, and I play to a +1 handicap.

Boulderthon · Sept 28, 2025

3:12:14
Pace
7:20 /mi
Overall
63 / 2,058
Age group
11 / 304

Golf

Handicap

+1

Let's talk.

I'm looking for full-time embedded, hardware and robotics roles starting in 2027.