Waterloo Rocketry Documentation Logo

General

  • Standards
  • Best Practices

Onboarding & Tutorials

  • Git Tutorial
  • Electrical Onboarding
  • Software Onboarding
  • Firmware How-To
  • Software How-To

Avionics

  • Avionics Integration
  • RocketCAN
  • Camera Board
  • Logger Board
  • GPS Board
  • Live Telemetry
  • Remote Arming
  • SRAD GNSS Receiver
  • Injector Sensor Hub
  • Rocket Power Board
  • SRAD Altimeter

Electrical GSE and Mission Control

  • Remote Launch Control System (RLCS) V3
  • Remote Launch Control System (RLCS) V4
  • Data Acquisition System (DAQ)
  • Ground Side Power Distribution (GSPD)
  • Automated Antenna Tower
  • OpsTop
  • SRAD APRS Receiver

Electrical Tools

  • USB Debug
  • Hardware-in-the-loop Tester (HILT)

Firmware Libraries

  • canlib
  • Standard Embedded Firmware (rocketlib)
    • PIC18 Specific Initialization (Not Implemented)
    • I2C Master Driver (Not Working)
    • GPIO Driver (Not Implemented)
    • SPI Driver (Not Implemented)
    • PIC18 PWM Driver
    • ADC Driver (Not Implemented)
    • Low Pass Filter
    • Timer Module (millis)
    • Appendix A: Reference Main Function

Controls

  • Processor Board
  • Processor Board Firmware
  • Motor Control Board

Software

  • Minerva
  • Omnibus
  • Parsley

Payload

  • Payload Motor Board
  • Payload Sensor Board

Recovery

  • BigRedBee GPS Tracker
  • ST PATS

Infrastructure

  • Equipments

Templates

  • TEMPLATE board
Waterloo Rocketry Documentation
  • Standard Embedded Firmware (rocketlib)
  • Edit on GitHub

Standard Embedded Firmware (rocketlib)

The standard embedded firmware library is a common library for Waterloo Rocketry’s CAN bus connected board firmware.

Contents

  • PIC18 Specific Initialization (Not Implemented)
    • Function Prototype
    • Steps
  • I2C Master Driver (Not Working)
    • Assumptions in this revision
    • I2C Controller Functions
  • GPIO Driver (Not Implemented)
    • Macros
    • Why Macros
  • SPI Driver (Not Implemented)
    • Features
    • SPI Controller Functions
  • PIC18 PWM Driver
    • Integration
    • PWM Controller Functions
    • PWM Operation
    • Helper Functions
    • Error Handling
    • Practical Considerations
  • ADC Driver (Not Implemented)
    • ADC Function
    • Current Sensing Function
    • Reference Implementation
  • Low Pass Filter
    • Inline Functions
    • Functions
    • Usage Example
    • Notes
    • References
  • Timer Module (millis)
    • Overview
    • timer0_init
    • timer0_handle_interrupt
    • millis
    • Definitions and Notes
  • Appendix A: Reference Main Function
    • Implementation
    • Main loop
    • Justifications
Previous Next