Ana sayfa→Donanım & Bileşenler
Donanım & Bileşenler

Flipper’ın Busy Bar’ı Artık Kendi JavaScript Uygulamalarınızı Çalıştırıyor ve Bunlar İçin Bilgisayara Gereksinim Kalmadı.

Busy Bar 'ı Temmuz ayında inceledim; Flipper Zero'ın aynı geliştiricilerinden çıkan bu cihaz, o dönemde en büyük eksikliklerden biri, bağımsız…

User Avatar
Ahmet AvcıEditör
3 dk okuma

Busy Bar‘ı Temmuz ayında inceledim; Flipper Zero’ın aynı geliştiricilerinden çıkan bu cihaz, o dönemde en büyük eksikliklerden biri, bağımsız uygulamalar için bir JavaScript çalışma zamanının henüz söz verilen bir özellik olması, yani ilk günden itibaren herkesin kullanabileceği bir şey olmamasıydı. Şimdi, 1.3.1 sürümüyle bu küçük verimlilik aracı, donanımın üzerinde doğrudan çalışan özel uygulamaları destekliyor; şirketin en çok talep edilen özelliği dediğinin tam karşılığı.

Henüz anahtarı açmadığım için, Busy Bar’ın işlevselliğini genişletmek istediğinizde kodu bir yerde çalıştırmanız gerekiyordu. Kendi örneğim, Mac’imde çalışan bir Python betiğiyle beslenen ve metni Bar’ın yerel HTTP arayüzüne gönderen bir Spotify çalınıyor widget’ıydı. Bu JS uygulamaları Bar’ın üzerinde yaşar, yani kurulduktan sonra her iki ekranda da çizim yapabilir, düğme ve kaydırma tekeri girişlerine tepki verebilir ve Wi-Fi üzerinden internetten veri çekebilir.

Hâlâ bazı sınırlamalar var ve resmi uygulama kataloğu birkaç hafta daha gelmeyecek, ancak kesinlikle en büyük eksik parça buydu.

SayarBilgi sitesini Google’da tercih edilen kaynak olarak seç

Uygulamalar Bar’ın kendisinde, aynı yerel arayüzü kullanarak çalışır

Bulut gerekmiyor

Credit: Busy Bar // Flipper Devices

Bar’daki JS uygulamaları, öncelikle mikrodenetleyiciler için tasarlanmış hafif bir JavaScript motoru olan JerryScript ile çalışır. Karşılaştırma için, Flipper Zero değiştirilmiş bir mJS sürümü kullanır. Bir uygulamanın ne olduğu söz konusu olduğunda, bu ya ya çoğuyla Bar’ın kendi HTTP arayüzü için sandbox’lanmış bir istemcidir. Ekranda çizim yapmak veya ses çalmak isterseniz, cihazın web sunucusuna localhost adresinde bir istek gönderilir ve çizim, ses, parlaklık, ses seviyesi, BUSY zamanlayıcısı, cihaz durumu ve kendi ayarları için onaylanmış bir uç nokta listesine ulaşabilirsiniz. Uygulamalar ayrıca uzak istekler için fetch, düğme ve teker için bir dinleme fonksiyonu, zamanlayıcılar ve localStorage alır; bir JSON dosyasında tanımlanan ayarların firmware tarafından kendi ekranları oluşturulur.

Bu değişiklikle birlikte, dahili Saat uygulaması bir JS uygulaması olarak yeniden yazıldı ve tamamen yeni bir Hava Durumu uygulaması da buna eşlik ediyor. Her iki proje de GitHub’da açık kaynak olarak yer alıyor ve Flipper Devices, Hava Durumu uygulamasının, geliştiricilerin kopyalayıp geliştirmeleri için bir temel oluşturması amacıyla cihazın tüm olanaklarını kullanacak şekilde geliştirildiğini belirtiyor. Kendi uygulamalarınızı geliştirmek için, npm tabanlı bir araç seti önce bir TypeScript projesi oluşturabilir, bunu USB üzerinden yükleyip çalıştırabilir.

Flipper, geliştiricilerin yardım için yapay zekâya dayanabilmeleri için elinden geleni yapıyor ve dokümantasyon, boş bir klasörde Claude Code, Codex, Cursor veya GitHub Copilot’u açıp “Read https://go.busy.app/agents ve bunu izle” ile başlayan bir istem yapıştırmanızı, ardından ne istediğinizi açıklamanızı söylüyor. Bu linke tıkladığınızda, firmware deposunda bir uygulamanın oluşturulması, inşa edilmesi ve kurulmasını özetleyen bir AGENTS.md dosyası bulacaksınız.

Bu yaklaşımı sevmiyorum değil; çünkü geliştiriciler için “normal” bir dokümantasyon da mevcut ve Bar, bu tür bir iş akışı için iyi bir uyum sağlıyor. API zaten basit ve ön ekran yalnızca 72*16 piksel, bu yüzden çoğu uygulama bir ya da iki satır metin içeriyor. Flipper Devices’ın kurucu ortağı ve CEO’su Pavel Zhovner, “yapay zekâ ajanları sayesinde bir uygulama oluşturmak tek bir isteme indirgeniyor” dedi.

Hâlâ bazı sınırlamalar var

Ve bir uygulama kataloğu birkaç hafta uzakta

Kaynak: Busy Bar // Flipper Devices

Busy Bar’da aynı anda yalnızca bir uygulama çalışabilir ve bir BUSY ya da CUSTOM odağı ayarlamak, oturum sona erene kadar ekranı ele geçirir. Uygulamalar en fazla 512KB bellek talep edebilir, varsayılan olarak 128KB kullanır ve WebSockets desteklenmiyor. Zaten birkaç tuhaflık da var; firmware’in GitHub’ında bildirilen bir soruna göre fetch, HTTP/1.0 istekleri gönderiyor ve bu da bazı hizmetlerce reddediliyor. Bu sorun, yazım anında Flipper’dan herhangi bir yanıt olmadan hâlâ açıktı.

Başka birinden uygulama kurmak da biraz el emği gerektiren bir süreç. Henüz bir uygulama kataloğu bulunmadığı için tüm uygulamalar, Bar’ın yerel arayüzü üzerinden bir .tgz dosyasıyla kuruluyor. Busy Apps Catalog, kasım ayının sonunda topluluk uygulaması yarışmasıyla birlikte gelmeye hazırlanırken; o zamana kadar uygulamalar çoğunlukla Busy subreddit’inde ve Busy Discord’unda paylaşılıyor.

Bar’ın API’si her zaman bulutta değil, donanımın içinde yaşadı ve artık uygulamalar da aynı şeyi yapabiliyor. Yarın Busy ortadan kalksa bile, Bar’ınızdaki uygulamalar bugün yaptıkları işe devam edecek.

İlginizi Çekebilir: Raspberry Pi 5’in 16GB Versiyonu 385 Dolar’a Yükseltildi: Başlangıç Fiyatının Üçten Fazlası →
Kaynak: XDA Developers ↗Kaynak yazarı: Adam Conway
💻 SayarBilgi Topluluğu

Bu Gelişmeyi Toplulukta Değerlendirin

Haber hakkındaki düşüncelerinizi, donanım deneyimlerinizi ve teknik sorularınızı topluluk üyeleriyle anlık olarak tartışın.

💻 Donanım & Sistem Tavsiyesi Odası →
💬 Topluluk Masası & Tartışma

Bu gelişme hakkında düşüncelerinizi, donanım deneyimlerinizi veya sorularınızı Topluluk Forumumuzda paylaşın.

Foruma Katıl & Yanıtla ➔
Forumda sor / tartış
TOPLULUĞUN SESİ

Söz sizde.

0 yorum

Deneyiminizi, sorularınızı ve katkılarınızı paylaşın. E-posta adresiniz yayımlanmaz.

Sohbete katıl

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Yorumunuz yayımlanmadan önce onay bekleyebilir.

BİR SONRAKİ OKUMA

Merak etmeye devam

Tümünü gör ↗

Neyi merak ediyorsun?

En az 3 karakter yazın.

Keşfet