Skip to main content
This section contains new projects planned with Gemstone and their completion stages. To contribute by taking part in the relevant projects, visit their Github pages or community forums.

Apache Nuttx

In Progress 45%

Wayland Transition

In Progress 30%

Buildroot

In Progress 10%

ChibiOS + Ardupilot

Not Started Yet 0%

PX4 Autopilot

Not Started Yet 0%

Phoenix RTOS

Not Started Yet 0%

Linux Kernel Version 7

Not Started Yet 0%

Apache Nuttx

Pixhawk Flight Controller hardware mostly contains STM32 with Cortex-M architecture. The autopilot named PX4 runs on the real-time operating system named Apache Nuttx and does not have support for Texas AM67a.
This project aims to run Apache Nuttx and PX4 on the Cortex-R5 cores found on T3-GEM-O1 development boards. The current status and pending tasks are in the table below.
Running NuttX on R5 coresCompleted
GPIO driver supportCompleted
Serial port driver supportCompleted
Access to NuttShell (nsh) consoleCompleted
Loading NuttX onto the R5 core via the remoteproc mechanism by U-Boot or LinuxCompleted
Communication between NuttX running on the R5 core and Linux running on the A53 core via Texas IPC mechanismVolunteer Developer Needed
PWM driver supportVolunteer Developer Needed
SPI driver supportVolunteer Developer Needed
I2C driver supportVolunteer Developer Needed
Pinmux settings for all pins on the 40-pin HATVolunteer Developer Needed
Running Ardupilot and PX4 autopilots as apps on the Nuttx OS on GemstoneVolunteer Developer Needed
CAN Bus driver supportVolunteer Developer Needed
USB driver supportVolunteer Developer Needed
SD card and eMMC driver supportVolunteer Developer Needed

ChibiOS + Ardupilot

The Ardupilot autopilot currently runs on Linux on the T3 Gemstone O1 development board, that is, on the Cortex-A53 cores. However, for real-time and low-latency flight control, it is preferable to run the autopilot on dedicated cores without the overhead of a general-purpose operating system. ChibiOS, the primary real-time operating system supported by Ardupilot, is widely used on flight controller boards. This project aims to port the ChibiOS operating system to the Cortex-R5 cores on the AM67a SoC and to run Ardupilot as an autopilot on top of ChibiOS on these cores. This way, while the Linux running on the Cortex-A53 cores handles general-purpose tasks, the real-time flight control loop can run uninterrupted on the Cortex-R5 cores.
The planned tasks are listed in the table below.
Porting the ChibiOS HAL for the AM67a Cortex-R5 coresVolunteer Developer Needed
Loading ChibiOS onto the R5 core via the remoteproc mechanism by U-Boot or LinuxVolunteer Developer Needed
Serial port (UART) driver support and console accessVolunteer Developer Needed
GPIO driver supportVolunteer Developer Needed
Building Ardupilot for the R5 cores using the AP_HAL_ChibiOS layerVolunteer Developer Needed
Running Ardupilot as an autopilot on top of ChibiOSVolunteer Developer Needed
SPI and I2C driver support (for sensors such as IMU, barometer, etc.)Volunteer Developer Needed
PWM driver support (for motor and servo outputs)Volunteer Developer Needed
CAN Bus (DroneCAN) driver supportVolunteer Developer Needed
Communication between ChibiOS running on the R5 core and Linux running on the A53 core via Texas IPCVolunteer Developer Needed
Providing MAVLink telemetry and ground control station (GCS) connectivityVolunteer Developer Needed

PX4 Autopilot

The goal is to run the PX4 autopilot on Gemstone Linux (without NuttX).

Buildroot

Support for Gemstone will be added to Buildroot, a Linux build system with a somewhat lighter structure compared to the Yocto Project. The goal is for a person downloading buildroot to see T3-GEM-O1 as a board in the official buildroot system, and to be able to compile and load two image types named Minimal and Kiosk onto the development board.
Adding T3-GEM-O1 configuration to Buildroot and creating a pull request to its addressVolunteer Developer Needed
Creating two image types named Minimal and Kiosk and similarly creating a merge requestVolunteer Developer Needed

Phoenix RTOS

The goal is to run the open-source real-time operating system Phoenix, which has a microkernel architecture on Gemstone.

Wayland Transition

The GPU (IMG BXS4-64) driver provided by TI for the AM67A SoC cannot accelerate X11 desktop environments. Windows are currently rendered without hardware acceleration using the CPU (llvmpipe). This causes the desktop environment to run sluggishly. The same driver includes acceleration support for Wayland. The goal is to transition to a Wayland-supported desktop environment that is stable, low on resource usage, feature-rich, and suitable for the majority of users.
Compiling the Mesa library with Ubuntu 22.04 build tools and packaging it as a DEB packageCompleted
Selecting a suitable Wayland desktop environment or window managerVolunteer Developer Needed
Finding programs such as settings, file manager, and network manager (if not bundled with the selected environment)Volunteer Developer Needed
Creating a common theme for window borders, status bar, and similar elements for interface consistencyVolunteer Developer Needed

Linux Kernel Version 7

The goal is to run Linux kernel version 7 on the T3-GEM-O1 development board, instead of the currently used 6.12 version. This will allow taking advantage of new hardware drivers, improvements, and bug fixes.