Gecko OS Native C API Features
The following is a summary of API features from the developer perspective.
For a complete list of API modules and libraries available, from the module perspective, see Native API .
-
Server/Client APIs
- HTTP(s) Client , HTTP(s) Server
- TCP
- TLS
- UDP
- Websocket
-
Event handlers:
- Client connect/disconnect
- RX packet - client , server
- Up to 8 simultaneous sockets
- HTTP upload / download files from/to file system
-
HTTP Stream API
- REST/Websocket API for device/webpage communication
- Stream driven with callbacks
-
SMTP client
- Send secure emails
-
Network Discovery APIs
-
mDNS
- customizable packets
-
UDP/HTTP Broadcast
- customizable packets
-
mDNS
- Network Utilities :
-
SoftAP API
- Concurrent: runs at same time as WLAN
- Event handlers:
-
WLAN API
- Event handlers:
- Web Setup API
-
Custom external command API
- extend Gecko OS external command set
-
custom command accessible via:
- serial console
- HTTP Server REST API
- Remote Terminal
- S2C 'local' connection
- Command argument parsing helper API
-
NVM API
- Dedicated 256 bytes
- Save/load to/from file
-
Gecko OS settings API
- Save/load to/from file
-
Peripherals API
-
GPIO
- with external interrupt
-
I2C
- With register read/write
- SPI Master
-
UART
- with RX character interrupt
-
GPIO
-
Event API
- Periodic
- Timed
- Single shot
-
Gecko OS RTOS
-
Mutex
resource locking -
Semaphore
inter-task signaling - Queue
- Timer
- Event
-
Mutex
-
File System
- Create/read/delete file
- List files
- Appendable log files
- Battery-backed register API
-
System Monitor API
- Monitors specified system resources
- Trigger watchdog if monitor fails
- S2C API
- Button API
- Utilities