Bu bölümde Gemstone ile yapılması planlanan yeni projeler ve tamamlanma aşamaları bulunmaktadır.
İlgili projelerde görev alarak katkıda bulunmak için Github sayfalarını veya topluluk forumlarını
ziyaret edininiz.
Pixhawk
Uçuş Kontrolcü (Flight Controller)
donanımı, çoğunlukla Cortex-M mimarili STM32 içermektedir. PX4 isimli otopilot ise Apache Nuttx isimli gerçek
zamanlı işletim sisteminde çalışmakta olup Texas AM67a için desteği bulunmamaktadır.
Bu projede, Apache Nuttx ve PX4’ün; T3-GEM-O1 geliştirme kartlarında bulunan Cortex-R5 çekirdeklerinde çalıştırılması
hedeflenmektedir. Aşağıdaki tabloda güncel durum ve yapılacaklar bulunmaktadır.
R5 çekirdeklerde NuttX çalıştırma
Tamamlandı
GPIO sürücü desteği
Tamamlandı
Seri port sürücü desteği
Tamamlandı
NuttShell (nsh) konsoluna erişilmesi
Tamamlandı
NuttX’in remoteproc mekanizması ile U-Boot ya da Linux tarafından R5 çekirdeğine yüklenmesi
Tamamlandı
R5 çekirdeğinde çalışan NuttX ile A53 çekirdeğinde çalışan Linux arası Texas IPC mekanizması ile haberleşme
Gönüllü Geliştirici Bekleniyor
PWM sürücü desteği
Gönüllü Geliştirici Bekleniyor
SPI sürücü desteği
Gönüllü Geliştirici Bekleniyor
I2C sürücü desteği
Gönüllü Geliştirici Bekleniyor
40-pin HAT’te yer alan tüm pinler için pinmux ayarlamaları
Gönüllü Geliştirici Bekleniyor
Gemstone üzerindeki Nuttx işletim sisteminde Ardupilot ve PX4 otopilotlarının app olarak çalıştırılması
Ardupilot otopilotu, T3 Gemstone O1 geliştirme kartında halihazırda Linux üzerinde, yani Cortex-A53
çekirdeklerde çalışmaktadır. Ancak gerçek zamanlı (real-time) ve düşük gecikmeli (low-latency) bir uçuş
kontrolü için otopilotun, işletim sistemi yükü olmadan ayrılmış çekirdeklerde çalışması tercih edilir.
Ardupilot’un birincil olarak desteklediği gerçek zamanlı işletim sistemi olan
ChibiOS, uçuş kontrolcü kartlarında yaygın olarak kullanılmaktadır.Bu projede; ChibiOS işletim sisteminin AM67a SoC üzerindeki Cortex-R5 çekirdeklerine taşınması (port
edilmesi) ve Ardupilot’un bu çekirdeklerde, ChibiOS üzerinde otopilot olarak çalıştırılması hedeflenmektedir.
Böylece Cortex-A53 çekirdeklerde çalışan Linux genel amaçlı işlerle ilgilenirken, gerçek zamanlı uçuş kontrol
döngüsü Cortex-R5 çekirdeklerinde kesintisiz olarak yürütülebilecektir.
Aşağıdaki tabloda yapılması planlanan çalışmalar bulunmaktadır.
ChibiOS HAL’ının AM67a Cortex-R5 çekirdekleri için port edilmesi
Gönüllü Geliştirici Bekleniyor
ChibiOS’un remoteproc mekanizması ile U-Boot ya da Linux tarafından R5 çekirdeğine yüklenmesi
Gönüllü Geliştirici Bekleniyor
Seri port (UART) sürücü desteği ve konsol erişimi
Gönüllü Geliştirici Bekleniyor
GPIO sürücü desteği
Gönüllü Geliştirici Bekleniyor
Ardupilot’un AP_HAL_ChibiOS katmanı kullanılarak R5 çekirdekleri için derlenmesi
Gönüllü Geliştirici Bekleniyor
Ardupilot’un ChibiOS üzerinde otopilot olarak çalıştırılması
Gönüllü Geliştirici Bekleniyor
SPI ve I2C sürücü desteği (IMU, barometre vb. sensörler için)
Gönüllü Geliştirici Bekleniyor
PWM sürücü desteği (motor ve servo çıkışları için)
Gönüllü Geliştirici Bekleniyor
CAN Bus (DroneCAN) sürücü desteği
Gönüllü Geliştirici Bekleniyor
R5 çekirdeğinde çalışan ChibiOS ile A53 çekirdeğinde çalışan Linux arası Texas IPC ile haberleşme
Gönüllü Geliştirici Bekleniyor
MAVLink telemetri ve yer kontrol istasyonu (GCS) bağlantısının sağlanması
Yocto Project’e kıyasla, biraz daha hafif yapısı olan Linux derleme sistemi Buildroot’a; Gemstone desteği
getirilecektir. Burada amaç buildroot’u indiren bir kişinin board olarak T3-GEM-O1’ü resmi buildroot
sisteminde görebilmesi, Minimal ve Kiosk isimli iki imaj türünü derleyerek geliştirme kartına
yükleyebilmesidir.
Buildroot içerisinde T3-GEM-O1 konfigürasyonu eklenerek adresine pull request oluşturulması
Gönüllü Geliştirici Bekleniyor
Minimal ve Kiosk isminde iki imaj türü oluşturularak aynı şekilde merge request oluşturulması
AM67A SoC ile gelen GPU’nun (IMG BXS4-64) TI tarafından verilen sürücüsü, X11 masaüstü ortamlarını hızlandıramamaktadır.
Halihazırda pencereler donanım hızlandırması olmaksızın CPU (llvmpipe) ile render edilmektedir. Bu durum masaüstü ortamının donarak
çalışmasına sebep olmaktadır. Aynı sürücüde Wayland için hızlandırma desteği bulunmaktadır. Stabil,
kaynak kullanımı düşük, özellik bakımından zengin ve kullanıcıların çoğunluğuna hitap eden Wayland
destekli bir masaüstü ortamına geçilmesi hedeflenmektedir.
Mesa kütüphanesinin Ubuntu 22.04 derleyici araçlarıyla derlenip DEB paketi haline getirilmesi
Tamamlandı
Uygun bir Wayland masaüstü ortamı ya da pencere yöneticisi seçilmesi
Gönüllü Geliştirici Bekleniyor
Ayarlar, dosya yöneticisi, ağ yöneticisi gibi programların bulunması (seçilen ortam ile birlikte gelmiyorsa)
Gönüllü Geliştirici Bekleniyor
Arayüz bütünlüğü için pencere kenarları, durum çubuğu gibi kısımlar için ortak bir tema oluşturulması
Kullanılmakta olan 6.12 sürümü yerine, Linux kernel 7’nin T3-GEM-O1 geliştirme kartında çalıştırılması hedeflenmektedir.
Bu sayede yeni donanım sürücülerinden, geliştirmelerden ve hata düzeltmelerinden faydalanılması mümkün olacaktır.