Difference between revisions of "Unit Reference"

From Ultibo.org
Jump to: navigation, search
 
(68 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.
 
Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.
  
Each unit is listed below with a link to the individual documentation outlining it's function and usage.
+
Each unit is listed below with a link to the individual documentation outlining its function and usage.
  
 
=== Mandatory units ===
 
=== Mandatory units ===
Line 20: Line 20:
 
----
 
----
  
 +
* [[Unit_ASN.1|ASN.1]] - Ultibo ASN.1 interface unit
 
* [[Unit_Authentication|Authentication]] - Authentication base classes
 
* [[Unit_Authentication|Authentication]] - Authentication base classes
* [[Unit_Crypto|Crypto]] - Cryptography support module (Not yet implemented)
+
* [[Unit_Big Integer|Big Integer]] - Ultibo Big Integer interface unit
 +
* [[Unit_Crypto|Crypto]] - Cryptography support module
 
* [[Unit_Font|Font]] - Font manager
 
* [[Unit_Font|Font]] - Font manager
 
* [[Unit_Keymap|Keymap]] - Keymap manager
 
* [[Unit_Keymap|Keymap]] - Keymap manager
Line 28: Line 30:
 
* [[Unit_Shell|Shell]] - Shell manager
 
* [[Unit_Shell|Shell]] - Shell manager
 
* [[Unit_SSL|SSL]] - SSL/TLS support module (Not yet implemented)
 
* [[Unit_SSL|SSL]] - SSL/TLS support module (Not yet implemented)
 +
* [[Unit_Syscalls|Syscalls]] - C library support module
 
* [[Unit_Timezone|Timezone]] - Timezone manager
 
* [[Unit_Timezone|Timezone]] - Timezone manager
 
* [[Unit_Ultibo|Ultibo]] - Ultibo API / Windows compatibility
 
* [[Unit_Ultibo|Ultibo]] - Ultibo API / Windows compatibility
Line 34: Line 37:
 
* [[Unit_VPN|VPN]] - VPN support module (Not yet implemented)
 
* [[Unit_VPN|VPN]] - VPN support module (Not yet implemented)
 
* [[Unit_Wiring|Wiring]] - WiringPi API implementation
 
* [[Unit_Wiring|Wiring]] - WiringPi API implementation
 +
* [[Unit_X.509|X.509]] - Ultibo X.509 interface unit
  
 
=== Device units ===
 
=== Device units ===
Line 42: Line 46:
 
* [[Unit_Audio|Audio]] - Audio device interface / USB audio driver (Not yet implemented)
 
* [[Unit_Audio|Audio]] - Audio device interface / USB audio driver (Not yet implemented)
 
* [[Unit_Bluetooth|Bluetooth]] - Bluetooth device interface (Not yet implemented)
 
* [[Unit_Bluetooth|Bluetooth]] - Bluetooth device interface (Not yet implemented)
 +
* [[Unit_Codec|Codec]] - Codec device interface
 
* [[Unit_Console|Console]] - Console device interface
 
* [[Unit_Console|Console]] - Console device interface
 
* [[Unit_DAB|DAB]] - Digital Audio Broadcast (DAB) device interface (Not yet implemented)
 
* [[Unit_DAB|DAB]] - Digital Audio Broadcast (DAB) device interface (Not yet implemented)
 +
* [[Unit_DeviceTree|DeviceTree]] - Ultibo Flattened Device Tree (DTB) interface
 
* [[Unit_DFU|DFU]] - Device Firmware Update (USB) support module (Not yet implemented)
 
* [[Unit_DFU|DFU]] - Device Firmware Update (USB) support module (Not yet implemented)
 
* [[Unit_DMA|DMA]] - DMA device interface
 
* [[Unit_DMA|DMA]] - DMA device interface
Line 50: Line 56:
 
* [[Unit_GraphicsConsole|GraphicsConsole]] - Graphics Console interface
 
* [[Unit_GraphicsConsole|GraphicsConsole]] - Graphics Console interface
 
* [[Unit_GPIO|GPIO]] - GPIO device interface
 
* [[Unit_GPIO|GPIO]] - GPIO device interface
 +
* [[Unit_HID|HID]] - HID device interface
 
* [[Unit_I2C|I2C]] - I2C device interface
 
* [[Unit_I2C|I2C]] - I2C device interface
 
* [[Unit_I2S|I2S]] - I2S device interface (Not yet implemented)
 
* [[Unit_I2S|I2S]] - I2S device interface (Not yet implemented)
 
* [[Unit_iSCSI|iSCSI]] - iSCSI device interface (Not yet implemented)
 
* [[Unit_iSCSI|iSCSI]] - iSCSI device interface (Not yet implemented)
 +
* [[Unit_Joystick|Joystick]] - Joystick and Gamepad interface
 
* [[Unit_Keyboard|Keyboard]] - Keyboard device interface / USB keyboard driver
 
* [[Unit_Keyboard|Keyboard]] - Keyboard device interface / USB keyboard driver
 
* [[Unit_Logging|Logging]] - Logging device interface
 
* [[Unit_Logging|Logging]] - Logging device interface
* [[Unit_MMC|MMC]] - MMC/SD device/host interface
+
* [[Unit_MMC|MMC]] - MMC/SD/SDIO device/host interface
 
* [[Unit_MMCSPI|MMCSPI]] - MMC SPI interface module (Not yet implemented)
 
* [[Unit_MMCSPI|MMCSPI]] - MMC SPI interface module (Not yet implemented)
 
* [[Unit_Mouse|Mouse]] - Mouse device interface / USB mouse driver
 
* [[Unit_Mouse|Mouse]] - Mouse device interface / USB mouse driver
 +
* [[Unit_PCI|PCI]] - PCI/PCIe device interface
 +
* [[Unit_PS2|PS2]] - PS2 Keyboard/Mouse Controller Support
 
* [[Unit_PWM|PWM]] - PWM device interface
 
* [[Unit_PWM|PWM]] - PWM device interface
 
* [[Unit_RTC|RTC]] - Real Time Clock device interface
 
* [[Unit_RTC|RTC]] - Real Time Clock device interface
Line 63: Line 73:
 
* [[Unit_Serial|Serial]] - Serial device interface
 
* [[Unit_Serial|Serial]] - Serial device interface
 
* [[Unit_SPI|SPI]] - SPI device interface
 
* [[Unit_SPI|SPI]] - SPI device interface
* [[Unit_Storage|Storage]] - Storage device interface / USB storage driver
+
* [[Unit_Storage|Storage]] - Storage device interface
 +
* [[Unit_TFT Framebuffer|TFT Framebuffer]] - TFT Framebuffer device interface
 +
* [[Unit_Touch|Touch]] - Touch device interface
 
* [[Unit_UART|UART]] - UART device interface
 
* [[Unit_UART|UART]] - UART device interface
 
* [[Unit_USB|USB]] - USB device/driver/host interface
 
* [[Unit_USB|USB]] - USB device/driver/host interface
 +
* [[Unit_USBCDC|USBCDC]] - USB CDC device interface
 +
* [[Unit_USBHID|USBHID]] - USB HID device interface
 
* [[Unit_Video|Video]] - Video device interface / USB video driver (Not yet implemented)
 
* [[Unit_Video|Video]] - Video device interface / USB video driver (Not yet implemented)
 
* [[Unit_W1|W1]] - 1-Wire device interface (Not yet implemented)
 
* [[Unit_W1|W1]] - 1-Wire device interface (Not yet implemented)
Line 73: Line 87:
  
 
* [[Unit_AHCI|AHCI]] - Advanced Host Controller Interface (AHCI) (Not yet implemented)
 
* [[Unit_AHCI|AHCI]] - Advanced Host Controller Interface (AHCI) (Not yet implemented)
* [[Unit_AllwinnerA20|AllwinnerA20]] - Allwinner A20 SoC support module (Not yet implemented)
+
* [[Unit_ARMGIC|ARMGIC]] - ARM Generic Interrupt Controller driver module
* [[Unit_AllwinnerH3|AllwinnerH3]] - Allwinner A20 SoC support module (Not yet implemented)
+
 
* [[Unit_BCM2708|BCM2708]] - Broadcom BCM2835 SoC driver module
 
* [[Unit_BCM2708|BCM2708]] - Broadcom BCM2835 SoC driver module
 
* [[Unit_BCM2709|BCM2709]] - Broadcom BCM2836 SoC driver module
 
* [[Unit_BCM2709|BCM2709]] - Broadcom BCM2836 SoC driver module
 
* [[Unit_BCM2710|BCM2710]] - Broadcom BCM2837 SoC driver module
 
* [[Unit_BCM2710|BCM2710]] - Broadcom BCM2837 SoC driver module
 +
* [[Unit_BCM2711|BCM2711]] - Broadcom BCM2838 SoC driver module
 
* [[Unit_BCM2835|BCM2835]] - Broadcom BCM2835 SoC support module
 
* [[Unit_BCM2835|BCM2835]] - Broadcom BCM2835 SoC support module
 
* [[Unit_BCM2836|BCM2836]] - Broadcom BCM2836 SoC support module
 
* [[Unit_BCM2836|BCM2836]] - Broadcom BCM2836 SoC support module
 
* [[Unit_BCM2837|BCM2837]] - Broadcom BCM2837 SoC support module
 
* [[Unit_BCM2837|BCM2837]] - Broadcom BCM2837 SoC support module
 +
* [[Unit_BCM2838|BCM2838]] - Broadcom BCM2838 SoC support module
 
* [[Unit_DWCOTG|DWCOTG]] - Synopsis Designware USB host controller module
 
* [[Unit_DWCOTG|DWCOTG]] - Synopsis Designware USB host controller module
 
* [[Unit_EHCI|EHCI]] - USB EHCI host controller module (Not yet implemented)
 
* [[Unit_EHCI|EHCI]] - USB EHCI host controller module (Not yet implemented)
* [[Unit_FreescaleiMX6|FreescaleiMX6]] - Freescale iMX6 SoC support module (Not yet implemented)
+
* [[Unit_VC4|VC4]] - VideoCore IV GPU interface module
* [[Unit_GC880|GC880]] - GC880 GPU driver module (Not yet implemented)
+
* [[Unit_VC4V3D|VC4V3D]] - VideoCore IV V3D interface unit
* [[Unit_GC2000|GC2000]] - GC2000 GPU driver module (Not yet implemented)
+
* [[Unit_VC4VCHIQ|VC4VCHIQ]] - VideoCore IV VCHIQ driver
* [[Unit_Mali400|Mali400]] - ARM Mali400 GPU driver module (Not yet implemented)
+
* [[Unit_VersatilePB|VersatilePB]] - Ultibo Definitions specific to the ARM Versatile Platform Baseboard
* [[Unit_Mali450|Mali450]] - ARM Mali450 GPU driver module (Not yet implemented)
+
* [[Unit_SMSC95XX|SMSC95XX]] - SMSC95XX USB network driver
+
* [[Unit_VC4|VC4]] - VideoCore4 GPU driver module (Not yet implemented)
+
 
* [[Unit_XHCI|XHCI]] - USB XHCI host controller module (Not yet implemented)
 
* [[Unit_XHCI|XHCI]] - USB XHCI host controller module (Not yet implemented)
  
Line 102: Line 114:
 
* [[Unit_HTTP|HTTP]] - HTTP client and server classes
 
* [[Unit_HTTP|HTTP]] - HTTP client and server classes
 
* [[Unit_ICMP|ICMP]] - ICMP protocol module
 
* [[Unit_ICMP|ICMP]] - ICMP protocol module
* [[Unit_ICMPv6|ICMPv6]] - ICMPv6 protocol module
+
* [[Unit_ICMPv6|ICMPv6]] - ICMPv6 protocol module (Not yet implemented)
* [[Unit_IGMP|IGMP]] - IGMP protocol module
+
* [[Unit_IGMP|IGMP]] - IGMP protocol module (Not yet implemented)
 
* [[Unit_IMAP4|IMAP4]] - IMAP4 client and server classes
 
* [[Unit_IMAP4|IMAP4]] - IMAP4 client and server classes
 
* [[Unit_IP|IP]] - IPv4 transport module
 
* [[Unit_IP|IP]] - IPv4 transport module
 
* [[Unit_IPHlpAPI|IPHlpAPI]] - IP Helper API
 
* [[Unit_IPHlpAPI|IPHlpAPI]] - IP Helper API
* [[Unit_IPv6|IPv6]] - IPv6 transport module
+
* [[Unit_IPv6|IPv6]] - IPv6 transport module (Not yet implemented)
 +
* [[Unit_LDAP|LDAP]] - LDAP protocol module (Not yet implemented)
 
* [[Unit_Loopback|Loopback]] - Loopback adapter module
 
* [[Unit_Loopback|Loopback]] - Loopback adapter module
 
* [[Unit_Network|Network]] - Network device interface / Adapter manager
 
* [[Unit_Network|Network]] - Network device interface / Adapter manager
Line 144: Line 157:
 
----
 
----
  
* [[Unit_AF16x2LCD|AF16x2LCD]] - Console device driver for Adafruit RGB 16x2 LCD  
+
* [[Unit_AF16x2LCD|AF16x2LCD]] - Console device driver for Adafruit RGB 16x2 LCD
* [[Unit_DS1307|DS1307]] - Real time clock (RTC) device device for Maxim DS1307 and similar  
+
* [[Unit_BCMSDHOST|BCMSDHOST]] - Broadcom BCM27XX SDHOST driver
 +
* [[Unit_DS1307|DS1307]] - Real time clock (RTC) device for Maxim DS1307 and similar
 +
* [[Unit_FT5x06Touch|FT5x06Touch]] - EDT FocalTech FT5x06 I2C touchscreen driver
 
* [[Unit_FTDISerial|FTDISerial]] - FTDI USB to Serial converter driver
 
* [[Unit_FTDISerial|FTDISerial]] - FTDI USB to Serial converter driver
* [[Unit_HD44780|HD44780]] - Console device driver for Hitachi HD44780 LCD controller
+
* [[Unit_GENET|GENET]] - Broadcom GENET gigabit ethernet driver
 +
* [[Unit_GoodixTouch|GoodixTouch]] - Goodix I2C touchscreen driver
 +
* [[Unit_HD44780|HD44780]] - LCD controller driver for Hitachi HD44780
 +
* [[Unit_HIDKEYBOARD|HIDKEYBOARD]] - Generic HID keyboard consumer
 +
* [[Unit_HIDMOUSE|HIDMOUSE]] - Generic HID mouse consumer
 +
* [[Unit_HIDTOUCH|HIDTOUCH]] - Generic HID touch consumer
 +
* [[Unit_HIDJOYSTICK|HIDJOYSTICK]] - Generic HID joystick consumer
 +
* [[Unit_HX8357D|HX8357D]] - Framebuffer device driver for Himax HX8357D TFT LCD controller
 +
* [[Unit_HyperPixel|HyperPixel]] - Pimoroni HyperPixel TFT display driver
 +
* [[Unit_I2CGPIO|I2CGPIO]] - GPIO based software I2C driver
 +
* [[Unit_I2CLCD|I2CLCD]] - Generic I2C LCD driver
 +
* [[Unit_ILI9340|ILI9340]] - Framebuffer device driver for ILITEK ILI9340 TFT LCD controller
 +
* [[Unit_IPSTFT19|IPSTFT19]] - Framebuffer device driver for Adafruit IPSTFT19 1.9" TFT LCD
 +
* [[Unit_LAN78XX|LAN78XX]] - USB Ethernet driver for Microchip LAN78XX
 
* [[Unit_MCP230XX|MCP230XX]] - GPIO device driver for Microchip MCP230XX I/O expander
 
* [[Unit_MCP230XX|MCP230XX]] - GPIO device driver for Microchip MCP230XX I/O expander
* [[Unit_PL2303|PL2303]] - Prolific Pl2303 USB to Serial converter driver
+
* [[Unit_PCF857X|PCF857X]] - NXP PCF857X I/O expander driver
 +
* [[Unit_PiTFT28|PiTFT28]] - Framebuffer device driver for Adafruit PiTFT 2.8" LCD
 +
* [[Unit_PiTFT35|PiTFT35]] - Framebuffer device driver for Adafruit PiTFT 3.5" LCD
 +
* [[Unit_PL011|PL011]] - ARM PrimeCell PL011 UART driver
 +
* [[Unit_PL031|PL031]] - ARM PrimeCell PL031 Real Time Clock driver
 +
* [[Unit_PL050|PL050]] - ARM PrimeCell PL050 PS2 Keyboard/Mouse Interface driver
 +
* [[Unit_PL110|PL110]] - ARM PrimeCell PL110 Color LCD Controller driver
 +
* [[Unit_PL18X|PL18X]] - ARM PrimeCell PL180/181 Multimedia Card Interface driver
 +
* [[Unit_PL2303|PL2303]] - Prolific PL2303 USB to Serial converter driver
 +
* [[Unit_RPIFT5406|RPIFT5406]] - Touch device driver for Raspberry Pi FT5406
 +
* [[Unit_RPIGPIOEXPANDER|RPIGPIOEXPANDER]] - Raspberry Pi firmware GPIO Expander driver
 +
* [[Unit_RPISENSEHAT|RPISENSEHAT]] - Raspberry Pi Sense HAT driver
 
* [[Unit_RT2X00LIB|RT2X00LIB]] - Ralink RT2x00 Wireless support library (Not yet completed)
 
* [[Unit_RT2X00LIB|RT2X00LIB]] - Ralink RT2x00 Wireless support library (Not yet completed)
 
* [[Unit_RT2X00USB|RT2X00USB]] - Ralink RT2x00 USB Wireless support library (Not yet completed)
 
* [[Unit_RT2X00USB|RT2X00USB]] - Ralink RT2x00 USB Wireless support library (Not yet completed)
Line 157: Line 196:
 
* [[Unit_RTL8192CU|RTL8192CU]] - Realtek 8192CU USB Wireless driver (Not yet completed)
 
* [[Unit_RTL8192CU|RTL8192CU]] - Realtek 8192CU USB Wireless driver (Not yet completed)
 
* [[Unit_RTLWIFI|RTLWIFI]] - Realtek 8xxx Wireless support library (Not yet completed)
 
* [[Unit_RTLWIFI|RTLWIFI]] - Realtek 8xxx Wireless support library (Not yet completed)
 +
* [[Unit_SMC91X|SMC91X]] - SMSC 91C9x/91C1xx Ethernet driver
 +
* [[Unit_SMSC95XX|SMSC95XX]] - SMSC95XX USB network driver
 +
* [[Unit_ST77XX|ST77XX]] - Framebuffer device driver for Sitronix ST77XX TFT LCD controller
 +
* [[Unit_STMPE|STMPE]] - GPIO and touch device driver for ST Microelectronics STMPE
 
* [[Unit_USBCDCACM|USBCDCACM]] - USB CDC (Communications Device Class) ACM driver
 
* [[Unit_USBCDCACM|USBCDCACM]] - USB CDC (Communications Device Class) ACM driver
 +
* [[Unit_USBCDCETHERNET|USBCDCETHERNET]] - USB CDC (Communications Device Class) Ethernet driver
 +
* [[Unit_USBKEYBOARD|USBKEYBOARD]] - Legacy USB Keyboard driver
 +
* [[Unit_USBMOUSE|USBMOUSE]] - Legacy USB Mouse driver
 +
* [[Unit_USBSTORAGE|USBSTORAGE]] - USB Mass Storage driver
  
 
=== Code page units ===
 
=== Code page units ===
Line 183: Line 230:
 
----
 
----
  
 +
* [[Unit_Default8x9|Default8x9]] - Default 8x9 Console font
 +
* [[Unit_Default8x16|Default8x16]] - Default 8x16 Console font
 
* [[Unit_Latin1_8x8|Latin1_8x8]] - Latin-1 (8x8) Console font
 
* [[Unit_Latin1_8x8|Latin1_8x8]] - Latin-1 (8x8) Console font
 
* [[Unit_Latin1_8x10|Latin1_8x10]] - Latin-1 (8x10) Console font
 
* [[Unit_Latin1_8x10|Latin1_8x10]] - Latin-1 (8x10) Console font
Line 203: Line 252:
  
 
* [[Unit_ConsoleShell|ConsoleShell]] - Console shell classes
 
* [[Unit_ConsoleShell|ConsoleShell]] - Console shell classes
 +
* [[Unit_QEMUVersatilePB|QEMUVersatilePB]] - QEMU VersatilePB include module
 
* [[Unit_RaspberryPi|RaspberryPi]] - Raspberry Pi (A, B, A+, B+, Zero) include module
 
* [[Unit_RaspberryPi|RaspberryPi]] - Raspberry Pi (A, B, A+, B+, Zero) include module
 
* [[Unit_RaspberryPi2|RaspberryPi2]] - Raspberry Pi 2B include module
 
* [[Unit_RaspberryPi2|RaspberryPi2]] - Raspberry Pi 2B include module
 
* [[Unit_RaspberryPi3|RaspberryPi3]] - Raspberry Pi 3B include module
 
* [[Unit_RaspberryPi3|RaspberryPi3]] - Raspberry Pi 3B include module
 +
* [[Unit_RaspberryPi4|RaspberryPi4]] - Raspberry Pi 4 include module
 
* [[Unit_RemoteShell|RemoteShell]] - Remote shell (Telnet/SSH) classes
 
* [[Unit_RemoteShell|RemoteShell]] - Remote shell (Telnet/SSH) classes
 
* [[Unit_ShellFilesystem|ShellFilesystem]] - Filesystem shell commands
 
* [[Unit_ShellFilesystem|ShellFilesystem]] - Filesystem shell commands
 +
* [[Unit_ShellNetwork|ShellNetwork]] - Network shell commands
 
* [[Unit_ShellUpdate|ShellUpdate]] - HTTP update shell commands
 
* [[Unit_ShellUpdate|ShellUpdate]] - HTTP update shell commands
 +
* [[Unit_ShellUSB|ShellUSB]] - USB shell extension unit
 
* [[Unit_WebStatus|WebStatus]] - HTTP status/information classes
 
* [[Unit_WebStatus|WebStatus]] - HTTP status/information classes
 
* [[Unit_WiringI2C|WiringI2C]] - WiringPiI2C API implementation
 
* [[Unit_WiringI2C|WiringI2C]] - WiringPiI2C API implementation
Line 220: Line 273:
 
* [[Unit_BootRPi2|BootRPi2]] - Raspberry Pi 2B boot module  
 
* [[Unit_BootRPi2|BootRPi2]] - Raspberry Pi 2B boot module  
 
* [[Unit_BootRPi3|BootRPi3]] - Raspberry Pi 3B boot module  
 
* [[Unit_BootRPi3|BootRPi3]] - Raspberry Pi 3B boot module  
* [[Unit_BootBBB|BootBBB]] - BeagleBone Black boot module (Not yet implemented)
+
* [[Unit_BootRPi4|BootRPi4]] - Raspberry Pi 4 boot module
* [[Unit_BootBPi|BootBPi]] - Banana Pi boot module (Not yet implemented)
+
* [[Unit_BootBPro|BootBPro]] - Banana Pro boot module (Not yet implemented)
+
* [[Unit_BootCI20|BootCI20]] - MIPS Creator CI20 boot module (Not yet implemented)
+
* [[Unit_BootCuboxi|BootCuboxi]] - Cubox i2/i4 boot module (Not yet implemented)
+
* [[Unit_BootOdroidC1|BootOdroidC1]] - Odroid C1 boot module (Not yet implemented)
+
* [[Unit_BootOdroidU3|BootOdroidU3]] - Odroid U3 boot module (Not yet implemented)
+
* [[Unit_BootOdroidXU3|BootOdroidXU3]] - Odroid XU3 boot module (Not yet implemented)
+
* [[Unit_BootpcDuino|BootpcDuino]] - pcDuino boot module (Not yet implemented)
+
 
* [[Unit_BootPCx86|BootPCx86]] - PC x86 boot module (Not yet implemented)
 
* [[Unit_BootPCx86|BootPCx86]] - PC x86 boot module (Not yet implemented)
 
* [[Unit_BootPCx86_64|BootPCx86_64]] - PC x86_64 boot module (Not yet implemented)
 
* [[Unit_BootPCx86_64|BootPCx86_64]] - PC x86_64 boot module (Not yet implemented)
 +
* [[Unit_BootQEMUVPB|BootQEMUVPB]] - QEMU VersatilePB boot module
  
 
=== Platform units ===
 
=== Platform units ===
Line 237: Line 283:
 
* [[Unit_PlatformRPi|PlatformRPi]] - Raspberry Pi (A, B, A+, B+, Zero) platform module
 
* [[Unit_PlatformRPi|PlatformRPi]] - Raspberry Pi (A, B, A+, B+, Zero) platform module
 
* [[Unit_PlatformRPi2|PlatformRPi2]] - Raspberry Pi 2B platform module  
 
* [[Unit_PlatformRPi2|PlatformRPi2]] - Raspberry Pi 2B platform module  
* [[Unit_PlatformRPi3|PlatformRPi3]] - Raspberry Pi 3B platform module  
+
* [[Unit_PlatformRPi3|PlatformRPi3]] - Raspberry Pi 3B platform module
* [[Unit_PlatformBBB|PlatformBBB]] - BeagleBone Black platform module (Not yet implemented)
+
* [[Unit_PlatformRPi4|PlatformRPi4]] - Raspberry Pi 4 platform module
* [[Unit_PlatformBPi|PlatformBPi]] - Banana Pi platform module (Not yet implemented)
+
* [[Unit_PlatformBPro|PlatformBPro]] - Banana Pro platform module (Not yet implemented)
+
* [[Unit_PlatformCI20|PlatformCI20]] - MIPS Creator CI20 platform module (Not yet implemented)
+
* [[Unit_PlatformCuboxi|PlatformCuboxi]] - Cubox i2/i4 platform module (Not yet implemented)
+
* [[Unit_PlatformOdroidC1|PlatformOdroidC1]] - Odroid C1 platform module (Not yet implemented)
+
* [[Unit_PlatformOdroidU3|PlatformOdroidU3]] - Odroid U3 platform module (Not yet implemented)
+
* [[Unit_PlatformOdroidXU3|PlatformOdroidXU3]] - Odroid XU3 platform module (Not yet implemented)
+
* [[Unit_PlatformpcDuino|PlatformpcDuino]] - pcDuino platform module (Not yet implemented)
+
 
* [[Unit_PlatformPC|PlatformPC]] - PC platform module (Not yet implemented)
 
* [[Unit_PlatformPC|PlatformPC]] - PC platform module (Not yet implemented)
 +
* [[Unit_PlatformQEMUVPB|PlatformQEMUVPB]] - QEMU VersatilePB platform module
  
 
=== Architecture units ===
 
=== Architecture units ===
 
----
 
----
  
 +
* [[Unit_PlatformAARCH64|PlatformAARCH64]] - AARCH64 (ARM64) processor module
 
* [[Unit_PlatformARM|PlatformARM]] - ARM processor module
 
* [[Unit_PlatformARM|PlatformARM]] - ARM processor module
 
* [[Unit_PlatformARMv6|PlatformARMv6]] - ARMv6 processor module
 
* [[Unit_PlatformARMv6|PlatformARMv6]] - ARMv6 processor module
 
* [[Unit_PlatformARMv7|PlatformARMv7]] - ARMv7 processor module
 
* [[Unit_PlatformARMv7|PlatformARMv7]] - ARMv7 processor module
 +
* [[Unit_PlatformARMv7L|PlatformARMv7L]] - ARMv7 LPAE processor module
 
* [[Unit_PlatformARMv8|PlatformARMv8]] - ARMv8 processor module
 
* [[Unit_PlatformARMv8|PlatformARMv8]] - ARMv8 processor module
 
* [[Unit_Platformx86|Platformx86]] - Intel x86 processor module (Not yet implemented)
 
* [[Unit_Platformx86|Platformx86]] - Intel x86 processor module (Not yet implemented)
Line 260: Line 301:
 
* [[Unit_PlatformMIPS|PlatformMIPS]] - MIPS processor module (Not yet implemented)
 
* [[Unit_PlatformMIPS|PlatformMIPS]] - MIPS processor module (Not yet implemented)
 
* [[Unit_PlatformMIPS32|PlatformMIPS32]] - MIPS32 processor module (Not yet implemented)
 
* [[Unit_PlatformMIPS32|PlatformMIPS32]] - MIPS32 processor module (Not yet implemented)
 +
 +
=== Ultibounits package ===
 +
----
 +
 +
* [[Unit_DispmanX|DispmanX]] - Ultibo DispmanX interface unit
 +
* [[Unit_EGL|EGL]] - Ultibo EGL interface unit
 +
* [[Unit_OpenVG|OpenVG]] - Ultibo OpenVG interface unit
 +
* [[Unit_uBitmap|uBitmap]] - Ultibo Bitmap utility unit
 +
* [[Unit_uScreenshot|uScreenshot]] - Ultibo Screenshot utility unit
 +
* [[Unit_VGShapes|VGShapes]] - Ultibo VGShapes library unit

Latest revision as of 03:28, 29 March 2024

Ultibo core includes a range of units which make up the complete API, some of these are internal to the core and are not intended to be called by applications, others provide an API which can be used to access features and functionality from within your application.

Each unit is listed below with a link to the individual documentation outlining its function and usage.

Mandatory units


Generic units


  • ASN.1 - Ultibo ASN.1 interface unit
  • Authentication - Authentication base classes
  • Big Integer - Ultibo Big Integer interface unit
  • Crypto - Cryptography support module
  • Font - Font manager
  • Keymap - Keymap manager
  • MPEG - MPEG encoding/decoding support module (Not yet implemented)
  • Security - Security descriptor support module
  • Shell - Shell manager
  • SSL - SSL/TLS support module (Not yet implemented)
  • Syscalls - C library support module
  • Timezone - Timezone manager
  • Ultibo - Ultibo API / Windows compatibility
  • UltiboClasses - Ultibo API classes
  • UltiboUtils - Ultibo API utilities
  • VPN - VPN support module (Not yet implemented)
  • Wiring - WiringPi API implementation
  • X.509 - Ultibo X.509 interface unit

Device units


  • ATAOE - ATA over Ethernet (Not yet implemented)
  • ATAPI - ATA/ATAPI (Not yet implemented)
  • Audio - Audio device interface / USB audio driver (Not yet implemented)
  • Bluetooth - Bluetooth device interface (Not yet implemented)
  • Codec - Codec device interface
  • Console - Console device interface
  • DAB - Digital Audio Broadcast (DAB) device interface (Not yet implemented)
  • DeviceTree - Ultibo Flattened Device Tree (DTB) interface
  • DFU - Device Firmware Update (USB) support module (Not yet implemented)
  • DMA - DMA device interface
  • DVB - Digital Video Broadcast (DVB) device interface (Not yet implemented)
  • Framebuffer - Framebuffer device interface
  • GraphicsConsole - Graphics Console interface
  • GPIO - GPIO device interface
  • HID - HID device interface
  • I2C - I2C device interface
  • I2S - I2S device interface (Not yet implemented)
  • iSCSI - iSCSI device interface (Not yet implemented)
  • Joystick - Joystick and Gamepad interface
  • Keyboard - Keyboard device interface / USB keyboard driver
  • Logging - Logging device interface
  • MMC - MMC/SD/SDIO device/host interface
  • MMCSPI - MMC SPI interface module (Not yet implemented)
  • Mouse - Mouse device interface / USB mouse driver
  • PCI - PCI/PCIe device interface
  • PS2 - PS2 Keyboard/Mouse Controller Support
  • PWM - PWM device interface
  • RTC - Real Time Clock device interface
  • SCSI - SCSI device interface
  • Serial - Serial device interface
  • SPI - SPI device interface
  • Storage - Storage device interface
  • TFT Framebuffer - TFT Framebuffer device interface
  • Touch - Touch device interface
  • UART - UART device interface
  • USB - USB device/driver/host interface
  • USBCDC - USB CDC device interface
  • USBHID - USB HID device interface
  • Video - Video device interface / USB video driver (Not yet implemented)
  • W1 - 1-Wire device interface (Not yet implemented)

Hardware units


  • AHCI - Advanced Host Controller Interface (AHCI) (Not yet implemented)
  • ARMGIC - ARM Generic Interrupt Controller driver module
  • BCM2708 - Broadcom BCM2835 SoC driver module
  • BCM2709 - Broadcom BCM2836 SoC driver module
  • BCM2710 - Broadcom BCM2837 SoC driver module
  • BCM2711 - Broadcom BCM2838 SoC driver module
  • BCM2835 - Broadcom BCM2835 SoC support module
  • BCM2836 - Broadcom BCM2836 SoC support module
  • BCM2837 - Broadcom BCM2837 SoC support module
  • BCM2838 - Broadcom BCM2838 SoC support module
  • DWCOTG - Synopsis Designware USB host controller module
  • EHCI - USB EHCI host controller module (Not yet implemented)
  • VC4 - VideoCore IV GPU interface module
  • VC4V3D - VideoCore IV V3D interface unit
  • VC4VCHIQ - VideoCore IV VCHIQ driver
  • VersatilePB - Ultibo Definitions specific to the ARM Versatile Platform Baseboard
  • XHCI - USB XHCI host controller module (Not yet implemented)

Network units


  • ARP - ARP transport module
  • DHCP - DHCP configuration module
  • DNS - DNS client module
  • FTP - FTP client and server classes (Not yet implemented)
  • GlobalSock - Global socket constants and type definitions
  • HTTP - HTTP client and server classes
  • ICMP - ICMP protocol module
  • ICMPv6 - ICMPv6 protocol module (Not yet implemented)
  • IGMP - IGMP protocol module (Not yet implemented)
  • IMAP4 - IMAP4 client and server classes
  • IP - IPv4 transport module
  • IPHlpAPI - IP Helper API
  • IPv6 - IPv6 transport module (Not yet implemented)
  • LDAP - LDAP protocol module (Not yet implemented)
  • Loopback - Loopback adapter module
  • Network - Network device interface / Adapter manager
  • POP3 - POP3 client and server classes
  • Protocol - Protocol manager
  • RAW - RAW protocol module
  • Services - Network services (NTP/SysLog/Telnet) classes
  • SIP - SIP client and server classes (Not yet implemented)
  • SMTP - SMTP client and server classes
  • Sockets - Sockets interface
  • TCP - TCP protocol module
  • Transport - Transport manager
  • UDP - UDP protocol module
  • WiFi - WiFi (WPA) transport module (Not yet implemented)
  • Winsock - Winsock 1.1 interface
  • Winsock2 - Winsock 2.0 interface
  • XMPP - XMPP client and server classes (Not yet implemented)

Filesystem units


  • CDFS - CD (ISO9660/Joliet) filesystem module
  • CIFS - Common Internet File System (CIFS) filesystem module (Not yet implemented)
  • EXTFS - EXT2/3/4 filesystem module (Not yet implemented)
  • FATFS - FAT12/16/32 filesystem module
  • Filesystem - Filesystem manager
  • NFS - Network File System (NFS) filesystem module (Not yet implemented)
  • NTFS - NTFS filesystem module
  • NTFSClass - NTFS classes
  • NTFSConst - NTFS constants
  • NTFSTypes - NTFS type definitions
  • NTFSUtils - NTFS utility functions
  • VirtualDisk - Virtual disk filesystem module

Driver units


  • AF16x2LCD - Console device driver for Adafruit RGB 16x2 LCD
  • BCMSDHOST - Broadcom BCM27XX SDHOST driver
  • DS1307 - Real time clock (RTC) device for Maxim DS1307 and similar
  • FT5x06Touch - EDT FocalTech FT5x06 I2C touchscreen driver
  • FTDISerial - FTDI USB to Serial converter driver
  • GENET - Broadcom GENET gigabit ethernet driver
  • GoodixTouch - Goodix I2C touchscreen driver
  • HD44780 - LCD controller driver for Hitachi HD44780
  • HIDKEYBOARD - Generic HID keyboard consumer
  • HIDMOUSE - Generic HID mouse consumer
  • HIDTOUCH - Generic HID touch consumer
  • HIDJOYSTICK - Generic HID joystick consumer
  • HX8357D - Framebuffer device driver for Himax HX8357D TFT LCD controller
  • HyperPixel - Pimoroni HyperPixel TFT display driver
  • I2CGPIO - GPIO based software I2C driver
  • I2CLCD - Generic I2C LCD driver
  • ILI9340 - Framebuffer device driver for ILITEK ILI9340 TFT LCD controller
  • IPSTFT19 - Framebuffer device driver for Adafruit IPSTFT19 1.9" TFT LCD
  • LAN78XX - USB Ethernet driver for Microchip LAN78XX
  • MCP230XX - GPIO device driver for Microchip MCP230XX I/O expander
  • PCF857X - NXP PCF857X I/O expander driver
  • PiTFT28 - Framebuffer device driver for Adafruit PiTFT 2.8" LCD
  • PiTFT35 - Framebuffer device driver for Adafruit PiTFT 3.5" LCD
  • PL011 - ARM PrimeCell PL011 UART driver
  • PL031 - ARM PrimeCell PL031 Real Time Clock driver
  • PL050 - ARM PrimeCell PL050 PS2 Keyboard/Mouse Interface driver
  • PL110 - ARM PrimeCell PL110 Color LCD Controller driver
  • PL18X - ARM PrimeCell PL180/181 Multimedia Card Interface driver
  • PL2303 - Prolific PL2303 USB to Serial converter driver
  • RPIFT5406 - Touch device driver for Raspberry Pi FT5406
  • RPIGPIOEXPANDER - Raspberry Pi firmware GPIO Expander driver
  • RPISENSEHAT - Raspberry Pi Sense HAT driver
  • RT2X00LIB - Ralink RT2x00 Wireless support library (Not yet completed)
  • RT2X00USB - Ralink RT2x00 USB Wireless support library (Not yet completed)
  • RT2800LIB - Ralink RT2800 Wireless support library (Not yet completed)
  • RT2800USB - Ralink RT2800 USB Wireless driver (Not yet completed)
  • RTL8188EU - Realtek 8188EU USB Wireless driver (Not yet completed)
  • RTL8192CU - Realtek 8192CU USB Wireless driver (Not yet completed)
  • RTLWIFI - Realtek 8xxx Wireless support library (Not yet completed)
  • SMC91X - SMSC 91C9x/91C1xx Ethernet driver
  • SMSC95XX - SMSC95XX USB network driver
  • ST77XX - Framebuffer device driver for Sitronix ST77XX TFT LCD controller
  • STMPE - GPIO and touch device driver for ST Microelectronics STMPE
  • USBCDCACM - USB CDC (Communications Device Class) ACM driver
  • USBCDCETHERNET - USB CDC (Communications Device Class) Ethernet driver
  • USBKEYBOARD - Legacy USB Keyboard driver
  • USBMOUSE - Legacy USB Mouse driver
  • USBSTORAGE - USB Mass Storage driver

Code page units


Font units


Keymap units


Extra units


Boot units


  • BootRPi - Raspberry Pi (A, B, A+, B+, Zero) boot module
  • BootRPi2 - Raspberry Pi 2B boot module
  • BootRPi3 - Raspberry Pi 3B boot module
  • BootRPi4 - Raspberry Pi 4 boot module
  • BootPCx86 - PC x86 boot module (Not yet implemented)
  • BootPCx86_64 - PC x86_64 boot module (Not yet implemented)
  • BootQEMUVPB - QEMU VersatilePB boot module

Platform units


Architecture units


Ultibounits package


  • DispmanX - Ultibo DispmanX interface unit
  • EGL - Ultibo EGL interface unit
  • OpenVG - Ultibo OpenVG interface unit
  • uBitmap - Ultibo Bitmap utility unit
  • uScreenshot - Ultibo Screenshot utility unit
  • VGShapes - Ultibo VGShapes library unit