Hızlı Başlangıç
Kart Kurulumu ve Keşfi
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 yazma uygulamasını indir
İşletim sistemini karta yüklemek ve özelleştirmek için kullanılan masaüstü uygulamasını indirme işlemidir.
Geliştirme kartına imaj yaz
Gemstone Imager uygulamasını kullanarak karta yazılım yükleme ve hazır hale getirme işlemidir.
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.
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.
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.
Linux işletim sistemi için .AppImage uzantılı dosyayı indirdikten sonra sağ tıklayarak Properties/Özellikler ekranını açarak “Permissions” kısmından “Allow executing file as program” seçeneğini işaretleyiniz.
macOS işletim sistemi için .dmg uzantılı dosyayı indirdikten sonra çift tıklayarak kurulum yapınız.
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 modu | Görsel | Açı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ı
Seriport
USB TTL Seri dönüştürücü ile karta bağlan.
VNC
Tarayıcı (Firefox/Chrome) ile karta bağlan.
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.
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!