Crate capsules_extra

source ·

Modules§

  • Provides userspace with access to air quality sensors.
  • Shared userland driver for light sensors.
  • Provides userspace access to the analog comparators on a board.
  • Capsule for analog sensors.
  • Proximity SyscallDriver for the Adafruit APDS9960 gesture/ambient light/proximity sensor.
  • This allows multiple apps to write their own flash region.
  • Driver for the AT24C32/64 EEPROM memory. Built on top of the I2C interface. Provides interface for the NonvolatileToPages driver.
  • Capsule for interfacing with the ATECC508A CryptoAuthentication Device using the I2C bus.
  • Bluetooth Low Energy Advertising Driver
  • SyscallDriver for the Bosch BME280 Combined humidity and pressure sensor using the I2C bus.
  • SyscallDriver for the Bosch BMM150 geomagnetic sensor.
  • hil driver for Bmp280 Temperature and Pressure Sensor
  • Abstraction Interface for several busses. Useful for devices that support multiple protocols
  • This provides virtualized userspace access to a buzzer.
  • Service capsule for a buzzer that uses a PWM pin.
  • Syscall driver capsule for CAN communication.
  • SyscallDriver for the AMS CCS811 an ultra-low power digital gas sensor solution which integrates a metal oxide (MOX) gas sensor to detect a wide range of Volatile Organic Compounds (VOCs) for indoor air quality monitoring using the I2C bus.
  • Chirp I2C Soil moisture sensor using the I2C bus.
  • Provides userspace access to a Crc unit.
  • Provides a cycle counter interface for userspace.
  • Provides a DAC interface for userspace.
  • Real Time Clock driver
  • Debug capsule to cause a button press to make all apps fault.
  • Provides userspace with access to distance sensor.
  • Provides an EUI-64 (Extended Unique Identifier) interface for userspace.
  • SyscallDriver for the FM25CL FRAM chip.
  • SyscallDriver for the FT6x06 Touch Panel.
  • SyscallDriver for the FXOS8700CQ accelerometer.
  • Provides userspace applications with a driver interface to asynchronous GPIO pins.
  • HC-SR04 Ultrasonic Distance Sensor Product Link: HC-SR04 Product Page Datasheet: HC-SR04 Datasheet
  • SyscallDriver for the HD44780 LCD screen.
  • HMAC (Hash-based Message Authentication Code).
  • Software implementation of HMAC-SHA256.
  • Sensor Driver for the Renesas HS3003 Temperature/Humidity sensor using the I2C bus.
  • SyscallDriver for the STMicro HTS221 relative humidity and temperature sensor using the I2C bus.
  • Provides userspace with access to humidity sensors.
  • Support for IEEE 802.15.4.
  • SyscallDriver for the ISL29035 digital light sensor.
  • KV Store Userspace Driver.
  • Tock Key-Value store capsule with permissions.
  • SyscallDriver for the MEMS L3gd20Spi motion sensor, 3 axys digital output gyroscope and temperature sensor.
  • Service capsule for access to LEDs on a LED matrix.
  • Implements a log storage abstraction for storing persistent data in flash.
  • Frame buffer driver for the Japan Display LPM013M126 display
  • Sensor Driver for the LPS22HB MEMS nano pressure sensor using the I2C bus.
  • SyscallDriver for the ST LPS25HB pressure sensor.
  • LSM6DSOXTR Sensor
  • SyscallDriver for the LSM303AGR 3D accelerometer and 3D magnetometer sensor.
  • SyscallDriver for the LSM303DLHC 3D accelerometer and 3D magnetometer sensor.
  • LSM303xx Sensors
  • SyscallDriver for the LTC294X line of coulomb counters.
  • SyscallDriver for the Maxim MAX17205 fuel gauge.
  • SyscallDriver for the Microchip MCP230xx I2C GPIO extenders.
  • SyscallDriver for the MLX90614 Infrared Thermometer.
  • Provides userspace with access to moisture sensors.
  • SyscallDriver for the MX25R6435F flash chip.
  • Modules for IPv6 over 6LoWPAN stack
  • Provides userspace with virtualized access to 9DOF sensors.
  • This provides kernel and userspace access to nonvolatile memory.
  • Map arbitrary nonvolatile reads and writes to page operations.
  • Provides userspace with the UART API that the nRF51822 serialization library requires.
  • Debug capsule to cause a button press to trigger a kernel panic.
  • SyscallDriver for the PCA9544A I2C Selector.
  • Provides userspace with access to barometer sensors.
  • Provides userspace with access to proximity sensors.
  • Provides capsules for asymmetric encryption
  • Read Only State
  • SyscallDriver for sending 802.15.4 packets with an Atmel RF233.
  • Support for the RF233 capsule
  • Provides userspace with access to the screen.
  • Shares a screen among multiple userspace processes.
  • Provides driver for accessing an SD Card and a userspace Driver.
  • This provides virtualized userspace access to a servomotor.
  • Provides userspace access to 7 segment digit displays.
  • SH1106 OLED Screen Driver
  • SHA
  • Software implementation of SHA-256.
  • SyscallDriver for SHT3x Temperature and Humidity Sensor
  • Driver for SHT4x Temperature and Humidity Sensor
  • SyscallDriver for the Silicon Labs SI7021 temperature/humidity sensor.
  • Tock SipHash capsule.
  • Provides userspace with access to sound_pressure sensors.
  • SSD1306/SSD1315 OLED Screen
  • ST77xx Screen
  • Provides userspace with access to temperature sensors.
  • SyscallDriver for RP2040 ADC MCU temperature sensor
  • SyscallDriver for STM ADC MCU temperature sensor
  • Provides userspace with access to the text screen.
  • Tock TicKV capsule.
  • TicKV to Tock key-value store capsule.
  • Provides userspace with access to the touch panel.
  • SyscallDriver for the Taos TSL2561 light sensor.
  • Provides userspace with access to USB HID devices with a simple syscall interface.
  • Tock Key-Value virtualizer.

Macros§

  • The decoding equivalent of enc_consume
  • The decoding equivalent of enc_try. The only difference is that only an immutable borrow of the buffer is required each time.
  • This is the aforementioned version of the unwrapping macro that only returns the offset. With this, it can be simpler to programmatically chain multiple headers together when the outputs do not have to be collated.
  • Extracts the result of encoding/decoding (the new offset and the output) only if no errors were encountered in encoding. This macro makes it possible to handle offsets easily for the following use cases:
  • Returns an error if a condition is unmet
  • Returns the result of encoding/decoding
  • Returns an error
  • Gets the result of an Option<T>, throwing a stream error if it is None
  • Returns a buffer length error if there are not enough bytes