Face-related macros and functions:
Bit and number macros:
Time comparisons handling wraparound (these are actually usable for any u32 counter values, not just millis() or micros()):
u16 comparisons handling wraparound:
Read and write the onboard EEPROM:
Access and update data from the SFB bootblock:
Miscellaneous low-level and hardware-related:
- facePrintTimestamp(u8 face)
- disableInterrupts()
- enableInterrupts()
- suspendInterrupts(u32var)
- restoreInterrupts(u32var)
- reenterBootloader() Drop back to the secondary bootloader if possible
- reenterBrainstem() Drop back to the tertiary bootloader if possible
- attachInterrupt(u32 sfbPin, IRQHandler *handlerFunction, u32 mode)
- detachInterrupt(u32 sfbPin)
- canAttachInterrupt(u32 sfbPin)
- hasAttachedInterrupt(u32 sfbPin)
Interfacing with the watchdog timer:
- watchdogActive()
- watchdogSetInterval(u32 feedIntervalMs)
- watchdogGetInterval()
- watchdogStart(u32 feedIntervalMs)
- watchdogFeed()
- watchdogGetTimeoutFlag()
- watchdogClearTimeoutFlag()
- watchdogSuicide()
- watchdogItWasSuicide()
Power measurement and control (all boards):
Power measurement and control ('weapons grade' boards only):