Bu bölümde Gemstone geliştirme kartının ilk kurulumu ve kullanıma hazır hale getirilmesi için gerekli başlangıç adımları açıklanarak, Gemstone’a bilgisayarınızdan nasıl bağlanabileceğiniz gösterilecektir. Dokümantasyonun ilerleyen bölümlerinde yazılım/donanım geliştirme süreçleri, çeşitli proje örnekleri irdelenecektir.

Bölüm bitiminde aşağıdaki konularda deneyim kazanacaksınız.

  • Gemstone Imager isimli yazılım yükleme uygulamasını indirmek ve kullanmak.
  • Yeni bir Gemstone geliştirme kartını, gerekli yazılımları kurarak hazır hale getirmek.
  • Gemstone’a bağlanarak sistemi keşfetmek.

Kutu İçeriği

Todo: Kutu ve içindekiler görseli

Kurulum için ihtiyaç duyulan donanımlar aşağıda belirtilmiştir.

İlk kurulum sonrası ethernet kablosu yardımıyla Gemstone kartınıza bağlanabileceğiniz gibi aşağıdaki donanımlarla kartı doğrudan bir bilgisayar olarak kullanmanız da mümkündür.

Todo: Bütün donanım ve gereksinimleri içeren görsel

1. Kurulum

Aşağıda dört ana başlık halinde sıralanan işlemler yapılarak kartınız hazır hale getirilecektir.

İmaj ifadesi genellikle .img uzantılı, içerisinde linux işletim sistemine ait dosyaların, sürücülerin bulunduğu kısacası kartın çalışması için gerekli her şeyi barındıran dosyayı ifade etmektedir. https://packages.t3gemstone.org/images/ubuntu/jammy/t3-gem-o1 adresinden minimal ismindeki dosyayı indirerek inceleyebilirsiniz.
1

İmaj yazma uygulamasını indir

İşletim sistemini karta yüklemek ve özelleştirmek için kullanılan masaüstü uygulamasını indirme işlemidir.

2

Geliştirme kartına imaj yaz

Gemstone Imager uygulamasını kullanarak karta yazılım yükleme ve hazır hale getirme işlemidir.

3

Bootmode switch değiştirerek geliştirme kartının sdcard ile açılmasını sağla

Geliştirme kartı opsiyonel olarak sdcard veya eMMC ile kullanılabilmektedir. Bu seçimin nasıl yapıldığı gösterilir.

4

Bilgisayar ve geliştirme kartı arasında bağlantı kur

Geliştirme kartı ile bağlantı kurmak ve içerisindeki sisteme erişmek için yapılacak işlemlerdir.

1.1. İmaj yazma uygulaması

Gemstone üzerinde İşletim Sistemi, Bootloader, Firmware vb. bütün çekirdek yazılımlar Gemstone Image Writer (GemImager veya Gemstone Imager) uygulaması ile yüklenmektedir. http://www.t3gemstone.org/software adresinden bilgisayarınıza uygun (Linux, Windows veya macOS) olan uygulamayı indiriniz.

Doküman boyunca imaj/işletim sistemi yazma uygulaması için Gemstone Imager ve Gemstone Image Writer ifadeleri kullanılacaktır.

1.2. İmaj yazma işlemi

1.2.1. Sdcard ve okuyucuyu bilgisayara bağla

Kutu içerisinden sdcard çıkmamaktadır. En az 32 GB kapasiteli herhangi bir marka ve model sdcard’ı uygun bir kart okuyucu aracılığıyla bilgisayarınıza bağladıktan sonra Gemstone Imager uygulamasını başlatınız.

Todo: Sdcard ve okuyucunun bilgisayara bağlanması

1.2.2. Gemstone Imager uygulamasını başlat

Windows işletim sistemi kullanıyorsanız indirdiğiniz .exe uzantılı dosyaya çift tıklayarak kurulum yaparak Masaüstünden uygulamayı başlatınız.

Uygulamayı indirdiğiniz dosya yolundan başlattığınızda aşağıdaki ekranı göreceksiniz.

Gemstone Imager giriş ekranı (Not: versiyon numarası değişkenlik gösterebilir)

1.2.3. Geliştirme kartı seç

Sahip olduğunuz geliştirme kartını “Gemstone board / Choose Device” butonuna tıklayarak seçiniz.

Bu örnek T3-GEM-O1 modeli için verilmiştir.

1.2.4. Karta yüklenecek işletim sistemini seç

Geliştirme kartı seçimi yapıldıktan sonra (Gemstone board / Choose Device) bir sonraki aşama için Operating System / Choose OS butonuna tıklayınız.

İşletim sistemi imaj tipi

Gemstone’da Ubuntu/Debian tabanlı işletim sistemi kullanılmaktadır ve projelerin ihtiyaçlarına göre farklı varyasyonları mevcuttur. Dokümanın ilerleyen bölümlerinde hangi sürümün hangi çalışmalarda kullanılacağı açıklanmış olmakla birlikte özet olarak aşağıda listelenmiştir;

  • Desktop: Tarayıcı (Firefox), Metin Editörü, Kod Geliştirme Ortamı (Vscode), Video Oynatıcı (VLC) gibi yazılımları barındıran, bilgisayar olarak kullanılabilen imajdır. Aşağıdaki iki imaj türüne göre daha yüksek boyutludur. Çoğunlukla prototip, test vb. geliştirme faaliyetlerinde kullanılmaktadır. (Robotik çalışmalar için Minimal isimli imaj daha uygundur.)

  • Kiosk: İçerisinde Metin Editörü veya Desktop imajında bulunan uygulamaların, masaüstü ortamının olmadığı çoğunlukla dokunmatik panel gibi amaçlarla kullanılan grafik arayüzünü destekleyen imajdır. (Örneğin Tesla otomobillerinde Medya kontrolü için kullanılan dokunmatik panel veya Teknofest yarışmalarında binek araçların içerisinde bulunan kontrol ekranı gibi.)

  • Minimal: Bu imaj ise gerçek zamanlı linux çekirdeği barındıran ve IoT, Robotik, Otopilot uygulamaları için özelleştirilmiş çok düşük boyutlu optimize edilmiş imajdır. Gömülü Yazılım Sistem geliştirme projelerinde tercih edilebilecek güçlü ve deterministik bir yapıya sahiptir.

1.2.5. Depolama aygıtı (Sdcard/eMMC) seç

Sdcard ve okuyucunuzu bilgisayarınıza bağladıktan sonra Gemstone Imager uygulaması aşağıdaki ekran görüntüsündeki gibi ilgili aygıtı listeleyecektir.

Sdcard veya eMMC seçimi

Üç seçeneği de tamamladıktan sonra aşağıdaki gibi Next butonuna tıklayınız.

1.2.6. Sistem Özelleştir

Yukarıdaki seçimler tamamlandıktan sonra Next butonuna tıkladığınızda otomatik olarak Sistem Özelleştirme ekranı açılacaktır. Bu ekran kurulumu yapılacak kartın giriş şifresi ve bir takım servislerin otomatik başlatılabilmesi için kullanılmaktadır.

Özelleştirme işlemi sonrası Save butonuna tıklayarak bir sonraki adıma geçiniz.

1.2.7. Yazma işlemini başlat

Yukarıdaki bütün işlemler tamamlandıktan sonra imaj yazma işlemine başlamanız için aşağıdaki gibi onay vermeniz istenecektir ve kopyalama işlemleri başlatılacaktır.

1.2.8. Sdcardı yerleştir

Yazma işlemi başarı ile tamamlandıktan sonra Sdcardı okuyucudan çıkararak Gemstone’a takınız ve bir sonraki bölümde anlatılacak olan Bootmode pinlerini “Sdcard” olarak ayarlayınız.

Todo: Sdcardı tak

1.3. Bootmode Switch

, karta ilk güç verildiğinde sistemin nasıl ve nereden (işletim sisteminin hangi diskten) başlatılacağını belirlemek veya yazılım geliştirme sürecinde gibi amaçlar için kullanılmaktadır.

Aşağıdaki tablo ve ekran görüntüsünde Gemstone O1 geliştirme kartında bulunan bütün Boot modları listelenmiştir. Bu bölümde yükleme işlemleri sdcard için anlatılacak olup ilerleyen bölümlerde eMMC (Kart üzerinde bulunan gömülü disk) kullanımına değinilecektir.

Sdcard çoğu zaman hızlı test ve geliştirme faaliyetleri için kolaylık sağladığı için tercih edilmektedir fakat üzerinde titreşim oluşabilecek hareketli sistemlerde zaman zaman veri kaybı yaşanabilmektedir. Şayet hareketli bir platform üzerinde kartınızı kullanacaksanız eMMC tercih edilmesi daha uygun olacaktır.

Todo: Bootmode switch görseli

Boot moduGörselAçıklama
Sdcard
eMMC
Network
NULL

1.4. Kartı bilgisayara bağla

Aşağıdaki fotoğrafta gösterildiği şekilde kutu içerisinden çıkan Usb Type-C ve ethernet kablosunu bilgisayarınıza ve Geliştirme kartınına bağladıktan sonra kartı keşfetmek için hazırsınız!

Todo: Sdcard ve okuyucunun bilgisayara bağlanması

2. Gemstone’u Keşfet

Aşağıdaki adımlar Gemstone geliştirme kartınızı kendi bilgisayarınız aracılığıyla kullanabilmeniz içindir. (Örneğin tarayıcıdan Gemstone kartınızın masaüstüne bağlanmak veya Seriport/Terminal aracılığıyla komut satırından işlem yapabilmek için). Şayet Monitör, Klavye ve Fare bağlama imkanınız varsa kartı bu yöntemle de keşfedebilirsiniz!

Kurulum sonrası bağlamış olduğunuz Ethernet ve Usb Type-C aracılığıyla veya Sistem Özelleştir bölümünde anlatıldığı üzere Wifi ayarları yapıldığında, kartın ağ bağlantısının olup olmadığı anlaşılabilmektedir.

Todo: Sdcard ve okuyucunun bilgisayara bağlanması

1

Seriport

USB TTL Seri dönüştürücü ile karta bağlan.

2

VNC

Tarayıcı (Firefox/Chrome) ile karta bağlan.

3

SSH

Terminal/Konsol uygulaması ile karta bağlan.

2.1. Seriport

USB TTL dönüştürücü kablosu çoğu zaman ethernet bağlantısının olmadığı durumlarda seri port aracılığıyla karta bağlanmak içindir. Normal şartlarda Gemstone kartınızı Usb Type-C kablosu ile bilgisayarınıza bağladığınızda Sistem Özelleştir bölümünde bulunan Servisler alanındaki “Gadget”lar işaretlenmiş ise TTL kablosuna gerek kalmadan seri port bağlantı imkanı olmaktadır. Fakat geliştirme sırasında beklenmedik bir durum söz konusu olduğunda bu özellikler çalışmazsa USB TTL kablosu ile de karta bağlanmak mümkündür.

Bu yöntem ile bağlantı sağlamanın bir avantajı Gemstone kartlarında bulunan U-Boot ismi verilen ön yükleyicinin (Bootloader), konsol çıktılarını da görüntülemenizin mümkün olmasıdır. Ethernet üzerinden bağlantı sağladığınızda Ağ ilklendirme yapılana kadar konsolda çıktılar gözükmezken, TTL ile başlangıç aşamasından itibaren gözükür.

2.1.1. Terminal/Konsol Uygulaması

Terminal/Konsol işlemleri için Windows işletim sisteminde Putty, Linux’ta Gnome Terminal macOS’ta ise Terminal kullanmanız mümkündür. Bu dokümanda her üç işletim sisteminde de çalışan Tabby.sh isimli uygulama kullanılacaktır.

2.1.2. Uygulamayı indir

Tabby.sh Web sitesine giderek Download butonuna tıklayarak kullandığınız işletim sistemine uygun yazılımı indiriniz.

https://github.com/Eugeny/tabby/releases

Kurulumu tamamladıktan sonra çalıştırınız ve aşağıdaki ekran görüntüsündeki gibi Seri port seçimi yapınız.

Todo: Tabby terminal ve seriport

2.2. VNC ile tarayıcıdan uzak masaüstü bağlantısı

Browser

2.3. SSH ile network üzerinden bağlantı

Ethernet

2.4. Gemstone işletim sistemini güncelle

Gemstone geliştirme kartları özelleştirilmiş gerçek zamanlı linux çekirdeği barındıran Debian/Ubuntu tabanlı işletim sistemi içermektedir. GemImager uygulaması ile yüklemiş olduğunuz sürüm güncel olmakla birlikte aşağıdaki yöntemle -şayet varsa- kurulu olan Ubuntu/Debian paketlerini güncelleyebilirsiniz.

Not: Aşağıdaki işlemler karta tarayıcıdan uzak masaüstü ile bağlandığınızda üst menüde bulunan Terminal simgesine tıklayarak komut satırından veya SSH/Konsol aracılığıyla kendi bilgisayarınızdan açtığınız Terminal ile kart üzerinde yapılmalıdır. Daha önce Linux kullanımını tecrübe etmediyseniz Eğitim Kılavuzlarında bulunan Başlangıç bölümü okuyarak deneyim kazanabilirsiniz.

sudo apt update && sudo apt upgrade

3. Sonuç

Bu dokümanda zengin proje örnekleri ile birlikte Gemstone Geliştirme kartlarının bütün yazılım ve donanım ekosistemine dair anlatımlar yapılacak olup işletim sistemi, donanım mimarisi gibi konularda nasıl uzmanlaşacağınız açıklanacaktır. Örneğin Gemstone için kullanılan Gerçek Zamanlı Ubuntu/Debian tabanlı Linux dağıtımı ilginizi çekiyor ve bu sistemlerin nasıl bir araya getirildiğini veya C++ ile robotik projelerin nasıl emniyetli bir biçimde yapıldığını merak ediyorsanız, doküman boyunca belirtilen bütün kaynakları tamamlayarak kendinizi geliştirmenizi ve topluluğa dahil olarak katkılarınızı bekliyoruz!