# Hardware Reference

## Flight Computer Core

- MCU: Teensy 4.1
- Sensors:
  - BMP085 barometer
  - MPU6050 IMU
- Actuation:
  - 4 pyro channels with continuity pins
  - reaction wheel motor drive
  - rogallo stepper interface
  - can-sat release servos

## Pin Map Summary

Reference source: include/Pins.h

- Stepper: STEP=0, DIR=1
- Pyro outputs: PYRO1=2, PYRO2=3, PYRO3=4, PYRO4=5
- LED: LED_B=6, LED_G=9, LED_R=24
- Buzzer: BUZZER=10
- Battery monitor: BATT=21
- Reaction wheel: MOT_1=22, MOT_2=23
- Pyro continuity: PYRO_CTY1=25, PYRO_CTY2=26, PYRO_CTY3=27, PYRO_CTY4=28
- CanSat servos: BRK_14=14, BRK_15=15

## Calibration Constants

Reference source: include/Config.h

- Gyro offsets: GyroXOffset, GyroYOffset, GyroZOffset
- Accel offsets: AccelXOffset, AccelYOffset, AccelZOffset

## Bring-Up Procedure

1. Power on with outputs disconnected from energetic devices.
2. Confirm sensor initialization over serial logs.
3. Run continuity check and verify expected polarity.
4. Verify reaction wheel direction and clamp behavior.
5. Verify servo open/close range.

## Electrical Safety Recommendations

- Use independent arm/safe hardware interlock on pyro lines.
- Add pull-down strategy on gate lines to prevent boot glitches.
- Validate battery sag under expected load profile.
- Protect sensing lines from motor/pyro noise with proper grounding and filtering.

## Hardware TODOs

- Add explicit pin function diagram to docs/images.
- Add measured current budget table for each subsystem.
- Add connector/polarity checklist for launch-day ops.
