2 poin oleh GN⁺ 2024-10-25 | 1 komentar | Bagikan ke WhatsApp
  • Karena tinggal di San Francisco, saya jadi sering menggunakan transportasi umum, tetapi banyak aplikasi hanya menyediakan notifikasi kedatangan untuk seluruh rute.
  • Saya membuat agar hanya notifikasi kedatangan yang dekat dengan lokasi saat ini yang ditampilkan di Kindle, sehingga bisa dicek sebelum berangkat.
  • Kindle di-jailbreak untuk mengaktifkan USBNet dan dikonfigurasi agar bisa diakses melalui SSH.
  • Dengan begitu, pekerjaan cron dapat disetel untuk memperbarui layar.
  • Sebagai langkah awal untuk menampilkan gambar di Kindle, tangkapan layar dari halaman keberangkatan real-time BART diambil lalu dikirim ke Kindle.
  • Pada percobaan awal, gambar ditampilkan dengan distorsi yang parah.
  • Masalah tersebut diselesaikan dengan menyesuaikan ukuran gambar dan kedalaman warna.

Menyediakan gambar yang berguna

  • Server Node.js dibangun dan menggunakan Puppeteer untuk mengambil tangkapan layar halaman BART, lalu menyesuaikannya ke ukuran dan warna yang cocok untuk Kindle sebelum mengembalikannya melalui endpoint HTTP.
  • Server dipasang di Raspberry Pi, lalu cron disetel agar mengambil gambar setiap menit.

Memulai lagi dari awal - arsitektur

  • Server HTTP baru dibangun menggunakan Rust dan Axum.
  • API 511.org digunakan untuk mengambil waktu kedatangan semua halte di Bay Area.
  • Library grafis Skia digunakan untuk merender gambar PNG secara langsung.

Mengambil data

  • API 511.org digunakan untuk mengambil waktu kedatangan SF MUNI.
  • Respons JSON diparse lalu difilter agar hanya waktu kedatangan untuk halte yang dibutuhkan yang diambil.
  • Waktu kedatangan diurutkan lalu ditampilkan untuk masing-masing arah.

Ringkasan GN⁺

  • Proyek ini membahas proses membangun sistem yang memanfaatkan Kindle lama untuk menampilkan informasi transportasi umum secara real-time.
  • Dengan menggunakan Rust dan Skia, sistem yang efisien dan andal dapat dibangun.
  • Dengan menyediakan informasi transportasi umum secara real-time, sistem ini dapat memberikan informasi yang berguna kepada pengguna.
  • Sebagai proyek dengan fungsi serupa, proyek smart display berbasis Raspberry Pi direkomendasikan.

1 komentar

 
GN⁺ 2024-10-25
Komentar Hacker News
  • OneBusAway adalah proyek open source yang digunakan banyak orang setiap hari untuk memeriksa lokasi dan waktu kedatangan bus, kereta, trem, dan kereta gantung

    • Di kota yang memiliki server OneBusAway, aplikasi kustom dapat dikembangkan menggunakan SDK baru
    • Di kota yang belum memiliki server, feed GTFS dan GTFS-RT dapat dikonversi menjadi REST API melalui image Docker dan konfigurasi OpenTofu
    • Semua otoritas transportasi di Amerika Serikat wajib mempublikasikan setidaknya data jadwal statis dalam format GTFS sesuai aturan federal yang baru
    • Pengembang yang tertarik pada pengembangan perangkat lunak selalu dibutuhkan, dan pengembang dari semua tingkat kemampuan serta bahasa pemrograman disambut
    • Pengembang iOS sangat dibutuhkan untuk menghadirkan peningkatan yang diperlukan bagi 250.000 pengguna harian
  • Pengguna lain menyebut aplikasi bernama Öffi yang menawarkan fungsi serupa dengan OneBusAway

  • BART dan MUNI mendukung General Transit Feed Specification, sehingga data bisa diperoleh dengan cara standar

  • Seorang pengguna yang pernah tinggal di Boston tanpa mobil mengatakan ia menemukan cara mencapai tujuan melalui berbagai rute, dan tampilan "keberangkatan berikutnya" sangat berguna

  • Di Inggris, orang dapat membeli papan keberangkatan yang meniru papan keberangkatan di stasiun

  • Di Washington, DC, layanan ini berfungsi untuk bus tetapi tidak untuk kereta, dan bantuan dibutuhkan agar kompatibel dengan kereta

  • Tanpa perlu menjailbreak Kindle, orang dapat dengan mudah membuat layar cuaca, transportasi, dan berita menggunakan browser web

  • Seorang pengguna yang tinggal di SF mengembangkan aplikasi iOS "A Better Ride" untuk menampilkan waktu keberangkatan halte terdekat, sehingga transportasi menjadi lebih dapat diprediksi dan mudah dijelajahi

  • Pengguna menginginkan alternatif seperti Google Maps, dan ingin mendapatkan rute alternatif ketika kereta rusak atau jalur terblokir

    • Sebagai contoh, dijelaskan berbagai rute dari Shibuya ke Azabujuban di Tokyo beserta kelebihan dan kekurangan masing-masing
  • Sebuah sistem dibangun menggunakan tablet Lenovo ThinkSmart View untuk menyediakan berbagai fungsi melalui integrasi dengan otoritas transportasi setempat