22#include "flex_diag_conf.h"
23#include "flex_errors.h"
303 uint8_t *
const RxData, uint16_t RxLength);
495int FLEX_GNSSFix(int32_t *
const Lat, int32_t *
const Lon, time_t *
const Time);
505 time_t *
const LastFixTime);
void FLEX_DelayMs(const uint32_t mSec)
void FLEX_Sleep(const uint32_t Sec)
void FLEX_DelayUs(const uint32_t uSec)
int FLEX_MessageReceiveHandlerModify(const FLEX_MessageReceiveHandler Handler, const FLEX_HandlerModifyAction Action)
void(* FLEX_MessageReceiveHandler)(uint8_t *const message, const int size)
Definition flex.h:545
FLEX_ExtDigitalIOWakeupModifyAction
External Digital I/O Wakeup Modify Actions.
Definition flex.h:235
int FLEX_ExtDigitalIOGet(const FLEX_DigitalIOPin PinNum)
FLEX_DigitalIOLevel
Digital I/O level Options.
Definition flex.h:214
FLEX_DigitalIOPin
Available Digital I/O Pins.
Definition flex.h:208
int FLEX_ExtDigitalIOWakeupModify(const FLEX_DigitalIOPin PinNum, const FLEX_ExtDigitalIOWakeupModifyAction Action)
void(* FLEX_IOWakeupHandler)(void)
Wakeup Handler Function Pointer Declaration.
Definition flex.h:250
int FLEX_ExtDigitalIOSet(const FLEX_DigitalIOPin PinNum, const FLEX_DigitalIOLevel Level)
int FLEX_ExtDigitalIOWakeupHandlerModify(const FLEX_IOWakeupHandler Handler, const FLEX_HandlerModifyAction Action)
@ FLEX_EXT_DIGITAL_IO_WAKEUP_DISABLE
Action to disable wakeup for an External Digital I/O pin.
Definition flex.h:237
@ FLEX_EXT_DIGITAL_IO_WAKEUP_ENABLE
Action to enable wakeup for an External Digital I/O pin.
Definition flex.h:236
@ FLEX_EXT_DIGITAL_IO_LOW
Digital I/O level Low.
Definition flex.h:215
@ FLEX_EXT_DIGITAL_IO_HIGH
Digital I/O level High.
Definition flex.h:216
@ FLEX_EXT_DIGITAL_IO_1
Digital I/O Pin 1.
Definition flex.h:209
@ FLEX_EXT_DIGITAL_IO_2
Digital I/O Pin 2.
Definition flex.h:210
int FLEX_ExtI2CRead(int Address, const uint8_t *const TxData, uint16_t TxLength, uint8_t *const RxData, uint16_t RxLength)
int FLEX_ExtI2CWrite(int Address, const uint8_t *const TxData, uint16_t TxLength)
FLEX_HandlerModifyAction
Handler Modify Actions.
Definition flex.h:196
@ FLEX_HANDLER_MODIFY_REMOVE
action to remove a handler
Definition flex.h:198
@ FLEX_HANDLER_MODIFY_ADD
action to add a handler
Definition flex.h:197
int FLEX_LEDBlueStateSet(const FLEX_LEDState LEDState)
FLEX_LEDState
LED States.
Definition flex.h:164
int FLEX_LEDGreenStateSet(const FLEX_LEDState LEDState)
@ FLEX_LED_ON
turn LED On
Definition flex.h:165
@ FLEX_LED_OFF
turn LED Off
Definition flex.h:166
const char * FLEX_ModuleIDGet(void)
const char * FLEX_RegistrationCodeGet(void)
int FLEX_IsOnExternalPower(bool *const IsOnExternalPower)
void FLEX_OnExternalPowerHandlerSet(const FLEX_OnExternalPowerHandler Handler)
void(* FLEX_OnExternalPowerHandler)(const bool *const IsOnExternalPower)
Definition flex.h:681
int FLEX_GetBatteryVoltage(int32_t *const VoltageMilliVolts)
int FLEX_PowerOutInit(const FLEX_PowerOut Voltage)
int FLEX_PowerOutDeinit(void)
FLEX_PowerOut
Power Output Voltage Options.
Definition flex.h:127
@ FLEX_POWER_OUT_12V
set output voltage to 12V
Definition flex.h:129
@ FLEX_POWER_OUT_5V
set output voltage to 5V
Definition flex.h:130
@ FLEX_POWER_OUT_24V
set output voltage to 24V
Definition flex.h:128
void(* FLEX_PCNTWakeupHandler)(void)
Wakeup Handler Function Pointer Declaration.
Definition flex.h:435
FLEX_PulseCounterOption
Pulse Counter Options, bit-wise, can be ORed.
Definition flex.h:408
uint64_t FLEX_PulseCounterGet(void)
void FLEX_PulseCounterDeinit(void)
De-initialise the pulse counter.
int FLEX_PulseCounterHandlerModify(const FLEX_PCNTWakeupHandler Handler, const FLEX_HandlerModifyAction Action)
int FLEX_PulseCounterInit(const uint32_t Limit, const uint32_t Options)
@ FLEX_PCNT_DEFAULT_OPTIONS
default option, counts on rising edge
Definition flex.h:409
@ FLEX_PCNT_EDGE_FALLING
count on falling edge, default rising edge
Definition flex.h:410
@ __attribute__
Definition flex.h:414
@ FLEX_PCNT_DEBOUNCE_DISABLE
disable hardware debouncing, default enabled for about 160us
Definition flex.h:411
FLEX_SerialParity
Serial Interface - Parity Options.
Definition flex.h:325
int FLEX_SerialRead(uint8_t *Rx, size_t Length)
int FLEX_SerialInit(FLEX_SerialProtocol Protocol, uint32_t BaudRate)
int FLEX_SerialInitEx(const FLEX_SerialExOptions Options)
FLEX_SerialDatabits
Serial Interface - Databits Options.
Definition flex.h:332
FLEX_SerialProtocol
Serial Interface - Protocol Options.
Definition flex.h:319
int FLEX_SerialWrite(const uint8_t *Tx, size_t Length)
int FLEX_SerialDeinit(void)
FLEX_SerialStopbits
Serial Interface - Stopbits Options.
Definition flex.h:338
@ FLEX_SERIAL_PARITY_NONE
No parity for serial device.
Definition flex.h:326
@ FLEX_SERIAL_PARITY_EVEN
Even parity for serial device.
Definition flex.h:327
@ FLEX_SERIAL_PARITY_ODD
Odd parity for serial device.
Definition flex.h:328
@ FLEX_SERIAL_DATABITS_NINE
Nine databits for serial device.
Definition flex.h:334
@ FLEX_SERIAL_DATABITS_EIGHT
Eight databits for serial device.
Definition flex.h:333
@ FLEX_SERIAL_PROTOCOL_RS485
use RS-485 as the Serial Protocol
Definition flex.h:320
@ FLEX_SERIAL_PROTOCOL_RS232
use RS-232 as the Serial Protocol
Definition flex.h:321
@ FLEX_SERIAL_STOPBITS_TWO
2 stopbits for serial device
Definition flex.h:342
@ FLEX_SERIAL_STOPBITS_HALF
0.5 stopbits for serial device
Definition flex.h:340
@ FLEX_SERIAL_STOPBITS_ONEANDHALF
1.5 stopbits for serial device
Definition flex.h:341
@ FLEX_SERIAL_STOPBITS_ONE
1 stopbits for serial device
Definition flex.h:339
uint32_t FLEX_TickGet(void)
int FLEX_TemperatureGet(float *const Temperature)
time_t FLEX_MinutesFromNow(const unsigned Mins)
time_t(* FLEX_ScheduledJob)(void)
Definition flex.h:564
time_t FLEX_SecondsFromNow(const unsigned Secs)
time_t FLEX_HoursFromNow(const unsigned Hours)
int FLEX_JobSchedule(const FLEX_ScheduledJob Job, const time_t Time)
time_t FLEX_DaysFromNow(const unsigned Days)
bool FLEX_GNSSHasValidFix(void)
Returns true if the system has obtained a valid time and location fix.
void FLEX_LastLocationAndLastFixTime(int32_t *const LastLatitude, int32_t *const LastLongitude, time_t *const LastFixTime)
time_t FLEX_TimeGet(void)
Get the current epoch time.
int FLEX_GNSSFix(int32_t *const Lat, int32_t *const Lon, time_t *const Time)
size_t FLEX_MessageBytesFree(void)
int FLEX_MessageSchedule(const uint8_t *const Message, const size_t MessageSize)
int FLEX_MessageSlotsFree(void)
void FLEX_MessageQueueClear(void)
Clear all messages in the message queue.
void FLEX_MessageSave(void)
uint16_t FLEX_VersionPatch(void)
const char * FLEX_VersionString(void)
uint16_t FLEX_VersionMinor(void)
uint16_t FLEX_VersionMajor(void)
const char * FLEX_AppVersionString(void)
Serial Interface - Serial Extended Configuration Options.
Definition flex.h:346
FLEX_SerialProtocol protocol
Protocol for serial communication.
Definition flex.h:347
FLEX_SerialParity parity
Parity for serial communication.
Definition flex.h:349
uint32_t baud_rate
Baud rate for serial communication.
Definition flex.h:348
FLEX_SerialStopbits stopbits
Stopbits for serial communication.
Definition flex.h:351
FLEX_SerialDatabits databits
Databits for serial communication.
Definition flex.h:350