Flipper Zero - kemajuan September



Flipper Zero adalah alat multi-saku untuk peretas dalam faktor bentuk Tamagotchi yang saya kembangkan bersama teman. Pos Sebelumnya [ 1 ], [ 2 ], [ 3 ], [ 4 ], [ 5 ]



Dalam Rilis Ini: API Sistem, Kit Pengembang, Peningkatan Mekanis dan Elektronik, Pembaruan GPIO, Fitur Baru di NFC, Meja Uji Jarak Jauh ...



Pada bulan September, kami hampir tidak menulis apa-apa tentang proyek tersebut, dan sekarang saatnya menjelaskan alasannya. Kami telah menangguhkan semua aktivitas pemasaran untuk fokus pada pengembangan dan tugas lainnya: kontrak pasokan dan produksi, masalah hukum, perekrutan, dan banyak lagi. Semua ini membutuhkan banyak usaha sehingga kami bahkan tidak punya waktu untuk mempublikasikan pembaruan. Sekarang kami siap berbagi berita dengan Anda.





API Sistem







Selama bulan ini kami telah mengembangkan arsitektur firmware dan API sistem, abstraksi untuk berinteraksi dengan perangkat keras, kontrol utas, dan multitasking. Ini adalah pekerjaan di balik terpal yang tidak kami tunjukkan, tetapi ini adalah bagian penting dari pengembangan.



Tujuan utama kami dalam pengembangan firmware adalah membuatnya semudah mungkin dan mudah dipahami oleh para pengembang sehingga mereka dapat dengan mudah menulis program mereka untuk Flipper Zero. Jadi setelah kampanye berakhir, kami membuang semua kode yang berantakan dan mulai mengembangkan arsitektur dari awal.







Selama waktu ini, kami telah secara aktif mengerjakan internal: menulis bootloader, memfaktorkan ulang kode sistem operasi, menulis driver periferal, merancang API untuk aplikasi khusus. Pemfaktoran ulang juga memengaruhi sistem build dan dependensi, kode antarmuka pengguna didesain ulang. Perubahan yang paling penting terjadi dalam tumpukan pengembangan kami: kami memperbarui CMSIS RTOS yang digunakan ke versi kedua dan membawa kode kami untuk menggunakan satu API. API Aplikasi Khusus baru telah mengambil langkah besar menuju beta dan kami berharap dapat membukanya secara publik dalam waktu dekat.



Perbaikan mekanik dan elektronik





Komponen baru dan desain



casing Kasus telah banyak berubah dari prototipe pertama. Kami telah sepenuhnya mendesain ulang tata letak tombol dan komponen di dalamnya agar Flipper tidak pecah, tahan lama, dan tahan terhadap penggunaan berat.



Kami telah memindahkan modul RFID dan NFC ke papan terpisah di bawah baterai. Terhubung ke motherboard dengan kabel FPC.



Mekanisme tombol tekan baru





Tombol



pegas baru Menambahkan pegas ke joystick untuk respons sentuhan yang lebih baik.





Bagaimana tes mekanik tombol lulus



Baterai yang bisa diganti







Baterai non-removable adalah momok perangkat modern. Kami memutuskan untuk tidak menggunakan baterai bersegel dan menggunakan konektor tiga pin sehingga pengguna dapat menggantinya sendiri. Agar lebih mudah dirawat, kami berencana menjual komponen Flipper individual, termasuk baterai, langsung di lokasi.



InfraRed pindah ke sudut







Setelah beberapa pengujian, kami menemukan bahwa penempatan port inframerah sebelumnya sangat tidak nyaman: terhalang oleh jari telunjuk dan modul eksternal. Pada akhirnya, diputuskan untuk memindahkannya ke sudut.



Lebih banyak GPIO





Mendesain ulang pinout GPIO. Dua lagi kontak GND telah ditambahkan - jumlahnya tidak banyak.



Fitur Baru: Pembaca NFC USB







Tugas intensif sumber daya seperti serangan kriptografi tidak dapat dilakukan secara langsung di Flipper. Untuk beberapa, bahkan Raspberry Pi tidak cukup - Anda membutuhkan prosesor desktop yang kuat dan lengkap. Misalnya:



  • Serangan pada Mifare klasik: mfoc (bersarang), mfcuk (Sisi Gelap)
  • Serangan di Mifare Plus: Sulit Bersarang




Kami memutuskan untuk menambahkan kemampuan untuk menggunakan Flipper sebagai adaptor NFC USB biasa bersama dengan pustaka LibNFC. Hasilnya, semua program yang ada yang bekerja melalui LibNFC akan langsung bekerja tanpa modifikasi. Dalam mode ini, semua perintah dari PC akan diproksikan langsung ke chip NFC ST25R3916 melalui antarmuka USB.



Masalah utama dengan tugas ini adalah bahwa pustaka LibNFC secara kaku dipaku ke chip NXP PN5xx, dan driver baru pada dasarnya harus meniru perilaku chip PN53xxx, tetapi ini tidak terlalu menakutkan.



Flipper Zero Devkit







Untuk developer yang sedang mengerjakan firmware dan hardware, kami telah membuat devkit khusus. Faktanya, ini adalah Flipper biasa dengan papan yang tidak digulung dalam fitting plastik, sehingga semua komponen mudah diakses dari atas dan bawah, dan mudah untuk merangkak dengan probe ke setiap elemen.



Flipper Lab





Di Balik Layar Flipper Lab



Saat kode sedang ditulis, kode perlu terus diuji. Tugas ini diperumit oleh fakta bahwa pengujian harus dilakukan pada perangkat keras nyata dan berinteraksi dengan dunia nyata. Untuk ini, bangku pengujian jarak jauh dibuat, yang terintegrasi dengan skrip CI melalui Alur Kerja GitHub. Dengan setiap komit ke firmware, secara otomatis dikumpulkan dan dituangkan ke dalam perangkat, setelah tes dilakukan, yang hasilnya akan disebarkan ke UART: dengan cara ini Anda dapat memahami tes mana yang berhasil diselesaikan. Sejauh ini ini bekerja dengan tidak benar, tetapi di masa depan, inilah cara kami memeriksa semua fungsi: menerima / mengirim radio, membaca / menulis kartu NFC, mengirim / menerima sinyal IR, dll.



Ini adalah dev kit yang sama untuk developer. Tombol fisik dihubungkan melalui relai, memungkinkannya untuk dikontrol dari jarak jauh. Gambar layar ditangkap oleh kamera dan disiarkan di situs web secara real time. Melalui tampilan web, Anda dapat mengunggah firmware dan tombol poke secara manual, meskipun pengembang tidak memiliki perangkat di tangan.





Mockup antarmuka bangku uji jarak jauh Flipper Zero



Flipper Lab saat ini dalam pengembangan alfa, tetapi kami akan membukanya secara publik nanti sehingga setiap pengembang dapat:



  • Unggah firmware atau plug-in Anda sendiri ke sampel langsung Flipper Zero
  • Lihat log secara real time dan bahkan kirim pesan UART ke Flipper
  • Tekan semua tombol dari jarak jauh
  • Uji periferal dengan, misalnya, kartu RFID fisik dan tag iButton




Pembaruan langsung di Discord







Di server Discord kami, kami telah menambahkan umpan langsung pembaruan dalam proyek. Anda dapat melihat bagaimana perkembangan para pengembang dalam waktu nyata dengan saluran #updates baru, di mana Anda dapat melihat komit masuk ke dalam repositori.



Sekarang ada lebih dari 6 ribu peserta di server!



Bergabunglah dengan server Discord kami untuk:



  • Berkomunikasi dengan teknisi dan pendukung kami
  • Ikuti kemajuan pengembangan secara real time dengan saluran #updates
  • Diskusikan kasus penggunaan untuk Flipper Zero
  • Temui ribuan geek
  • Akses saluran rahasia hanya untuk pendukung (hubungi @Backers Bot di pesan pribadi untuk mendapatkan peran)




- Halo, kami mencari bakat!









Kami sebelumnya meluncurkan Program Pengembang Flipper dan menerima lebih dari seribu tanggapan. Kami mengundang beberapa pengembang ke repositori semi-tertutup dengan firmware.



Sayangnya, kami menyadari bahwa model manajemen horizontal tidak cocok untuk kami, karena sebagian besar pengembang non-penuh waktu mencurahkan waktu untuk proyek hanya jika mereka memiliki inspirasi dan keinginan. Proses ini sulit untuk dikelola dan diperkirakan hasilnya dari waktu ke waktu. Karenanya, sekarang kami hanya mempekerjakan pengembang penuh waktu. Mungkin ketika sebagian besar kode level rendah sudah siap dan kita membuka repositori, akan lebih mudah untuk menerima masukan komunitas.



Kami mempublikasikan semua lowongan terbuka di sini: flipperdevices.com/jobs




All Articles