← Zákazky

Embedded Firmware Developer — Sports Wearable

Rozpočet: $35.0 - $60.0 HOURLY / NOT_SURE ⭐ 0.00 (0) South Africa

embedded-c, firmware

Embedded Firmware Developer — Sports Wearable Johannesburg Based in Gauteng or willing to travel for pool testing sessions Swimfast Technologies is a South African (Johannesburg) -based startup building a wearable training device for swimmers. We need a firmware developer to rework the detection algorithm on a working hardware prototype. The device is palm-mounted, uses a 6-axis IMU on an 8-bit AVR microcontroller, and provides real-time haptic feedback during swimming. The hardware works. The sensor reads data correctly. The motor can be felt underwater. What needs rebuilding is the logic that decides when to fire the motor — the current approach compares total acceleration magnitude to a synthetic reference curve and does not correlate reliably with the swimmer's actual technique. We have a detailed developer brief backed by published biomechanics research, a clear algorithm design, and defined acceptance criteria. This is a scoped rewrite. What you'd be doing: Modifying existing firmware to log raw 6-axis sensor data for a pool capture session Running a short bench test to confirm IMU axis mapping (which axis corresponds to palm orientation on the board) Analysing captured data in Python to identify signal patterns that distinguish good technique from bad Rewriting stroke phase detection and the core EVF detection logic (~200–300 lines of C) to use per-axis orientation monitoring instead of the current magnitude-only approach Removing dependency on the synthetic reference curve; Ensuring technique feedback works even when stroke cadence varies (not gated on steady cadence) Adjusting feedback timing so vibration fires during the catch/pull phase of the stroke, not at the next stroke boundary Iterative pool testing with the product owner as test swimmer, tuning thresholds against real feedback Note: MVP is accelerometer-led. Gyro-based enhancement is optional if time allows within the contract. What you're working with AVR64DD28 microcontroller (8-bit, 64KB flash, 8KB RAM, 8MHz) Bosch BMI323 6-axis IMU (accelerometer + gyroscope) over SPI at 100Hz Arduino IDE / Arduino CLI with DxCore board package Existing firmware with working SPI driver, non-blocking vibrator state machine, deep sleep with interrupt wake, LED control Serial debug output at 115200 baud Programming via UPDI GitHub repo with firmware history and Python reference tooling (Swim1.py) What we're looking for Must have: Experience writing embedded C on AVR, PIC, STM32, or similar 8-bit/32-bit microcontrollers (comfort on resource-constrained 8-bit targets is important) Proven experience turning real-world IMU data (accelerometer and/or gyroscope) into reliable on-device detection or feedback logic Python skills for data analysis and plotting (matplotlib, numpy) Experience with SPI or I2C sensor communication (our SPI driver exists; you will extend and debug as needed) Comfortable reading datasheets when debugging sensor or timing issues Based in Gauteng or willing to travel for pool testing sessions Available for 4–6 weeks starting as soon as handover hardware is received Nice to have: Experience with Bosch IMU sensors (BMI160, BMI270, BMI323) Background in signal processing or biomechanics Experience with DxCore or the AVR DD-series Previous work on wearable or sports technology products Familiarity with motor learning or haptic feedback research Not required: Swimming knowledge (we'll handle the domain expertise) Mobile app development PCB design or hardware engineering Cloud, Bluetooth, or wireless experience How we work This is a hands-on, iterative project. You'll modify firmware, we'll test it in a pool, you'll review the data, adjust, and repeat. The product owner is an experienced open water swimmer and coach who can reliably produce good and bad technique on demand. You won't be guessing whether it works — you'll have a live human test system giving immediate feedback. We have a developer brief with full hardware specs, pin mappings, the algorithm design, relevant research papers, and pass/fail acceptance criteria ready to hand over on day one. Timeline and budget 4–6 weeks, paid contract. We're a self-funded startup with a seed round in progress. We'll discuss rates once we've had a conversation about scope. This is paid contract work — not a spec-only or equity-for-labour arrangement. Your CV (PDF preferred) A short note (half a page is fine) covering: Your embedded firmware experience One example of a project where you worked with sensor data on a microcontroller — including how you calibrated or validated detection in real conditions Your availability (start date) and hourly or fixed project rate If your background fits, we'll set up a call and share the full developer brief before you commit
Otvoriť na Upwork