Ultibo core
From Lazarus wiki
Jump to navigationJump to search
│
English (en) │
suomi (fi) │
This article applies to Raspberry Pi only.
See also: Multiplatform Programming Guide
Ultibo core is an embedded run-time platform and development environment written specifically for creating applications with small single board computers. It is built around the Free Pascal compiler and the Lazarus integrated development environment. Ultibo core is an RTL written entirely in Free Pascal and designed to make embedded or bare metal development accessible to all.
A Windows installer is available as well as an install script for Linux, full source plus a large collection of examples is included.
Supported Devices
- Raspberry Pi A, B, A+, B+
- Raspberry Pi Zero and ZeroW
- Raspberry Pi 2 model B
- Raspberry Pi 3 model B
- Raspberry Pi 3 model A+, B+
- QEMU emulator
Features
Features include:
- Support for all models of Raspberry Pi (A/B/A+/B+/2B/Zero)
- Pre-emptive threading
- Full range of locking and synchronization primitives
- Multicore support on Raspberry Pi 2B with all cores sharing workload
- Thread priority, affinity and migration support
- Complete IPv4 stack including TCP, UCP, ICMP and raw sockets as well as DNS and DHCP protocols
- USB support with drivers for Hub, Keyboard, Mouse, Storage and Network
- MMC/SD device support
- Full support for FAT12/16/32, NTFS and CDFS filesystems
- Interrupt handling
- Hardware exception handling (catch an exception in code not a crash)
- Complete RTL with strings, code pages, Unicode, classes, objects and exceptions
- Clock and Timezone support
- Console and framebuffer support including Fonts
- Basic Shell (Console or Telnet) with file system commands and many others
- HTTP/SMTP/POP3/NTP/Syslog client and server modules included
- Support for Raspberry Pi devices like Timer, Watchdog and Random
- Full Winsock 1.1 and Winsock 2 implementation
- Packaged with a full compiler and IDE for quick start to development
- Includes example projects plus a full demo image
- HTTP image update module included (No SD card dance!)
Videos
Discovering Ultibo
- Episode 1 Getting Started
- Episode 2 Exploring USB
- Episode 3 Building the RTL
- Episode 4 GPIO Events
- Episode 5 LCD 16x2
- Episode 6 Remote LED