Saya memiliki beberapa ponsel yang tergeletak, salah satunya adalah yang ini:
http://www.gsmarena.com/sony_ericsson_elm-3057.php
Dimungkinkan untuk menghapus memori flash dan menggantinya dengan bootloader dan kemudian mengunggah sketsa arduino atau sketsa pic32 (C # / C ++).
Saya mendapat ide ini karena ini adalah platform yang sangat murah untuk mengembangkan proyek perangkat keras. (Anda mendapatkan layar, tombol, audio I / O, internet, dll, Anda mendapatkan segalanya dengan harga yang sangat murah dibandingkan dengan apa yang Anda dapatkan dengan membeli setiap bagian secara terpisah.)
Apakah mungkin untuk menghapus memori flash dan menginstal boot-loader ke telepon untuk menggunakannya sebagai komputer tertanam?
microcontroller
telephone
bootloader
cellphone
Harry Svensson
sumber
sumber
Jawaban:
Biaya tidak pernah menjadi masalah. Banyak penggemar akan bersedia membayar harga moderat untuk perangkat kelas atas yang mudah diretas. Masalahnya adalah bahwa ARM adalah platform tertutup. Biasanya ada bagian bernama ROM pribadi pada silikon SoC (system on chip). Itu memblokir penggunaan kembali.
Bagian ROM ini bertanggung jawab untuk memilih bootloader dalam beberapa urutan: Z-Modem pada serial, Nand eksternal, ROM serial, SDCard, USB eksternal. Untuk setiap perangkat, urutannya individual dan tidak terdokumentasi dengan baik, Anda biasanya harus menahan beberapa tombol saat menyalakan untuk bercabang ke loader alternatif. Gambar bootloader jika sebagian besar waktu memeriksa tanda tangan digital dari pemilik platform. Jadi tidak berhasil.
Untuk satu proyek, tidak apa-apa untuk memilih perangkat acak. Tetapi Anda mungkin akan lebih tertarik pada perangkat yang terkenal, dengan skema yang dipublikasikan dan kode sumber yang tersedia untuk Linux, Android dll.
Jadi saran saya adalah untuk melihat perangkat yang dikelilingi oleh komunitas pengguna aktif : Raspberry Pi, BeagleBone, BeagleBoard, beberapa platform evaluasi Samsung (PandaBoard?)
Pengalaman pribadi saya dengan TI AM35XX berakhir dengan kekecewaan dengan kompleksitas segalanya. Linux terkecil di dunia bernama Angstrom memiliki gambar distribusi 3GB. Dokumen untuk chip adalah 4000-5000 halaman. Itu tidak terasa seperti hobi dan tidak menyenangkan.
Situasi dapat berubah setelah Intel Atom SoC akan menjadi populer. Saya mengharapkan minat pengguna yang besar dan akan mengikuti kerumunan orang ke arah Atom sekecil mungkin. Semoga seseorang akan menyelesaikan bagian yang dapat dipasang di panel dengan ukuran kartu kredit dan GPIO. Akan menyenangkan.
sumber
Beberapa waktu yang lalu, ada proyek untuk melakukan sesuatu yang serupa (merekayasa balik keluarga telepon yang murah dan sangat populer).
http://nokix.pasjagsm.pl/help/blacksphere/sub_050main.htm
Dan ya, opsi Android mungkin yang paling mudah .. atau Windows Mobile, cukup terbuka juga.
sumber
Saya tidak punya pengalaman dalam hal ini, tapi saya pikir itu tidak mudah (jika mungkin). Saya pikir Anda bisa melupakan pemrograman dalam C ++ atau C #, dan lebih tepatnya di ASM + C. Ini tidak akan kompatibel dengan sketsa arduino atau kode PIC32 atau apa pun, yang tidak dibuat untuk CPU tertentu. Banyak ponsel baru memiliki sesuatu seperti inti ARM.
Saya tidak benar-benar tahu bagaimana Anda akan memprogram perangkat, tetapi saya menganggap itu mungkin, karena mereka biasanya dapat memperbarui firmware jika Anda mengirimnya kepada mereka untuk diperbaiki.
Anda juga harus kode driver Anda sendiri untuk semua perangkat keras (layar, WLAN, sensor, dll ...), yang akan sangat sulit tanpa informasi lebih lanjut tentang perangkat keras, yang produsen telepon kemungkinan tidak akan merilis kepada Anda .
Saya pikir cara termudah akan menjadi sesuatu seperti ponsel Android lama, karena Anda bisa mendapatkan kode sumber dengan driver dan semua hal tingkat rendah secara gratis. Anda bisa merobek atau menggunakan UI dan komponen lain yang terlihat oleh pengguna. Tapi ini mungkin bukan yang Anda inginkan, kecuali jika Anda memiliki beberapa ponsel Android lama.
Juga, jika ponsel telah "diretas" untuk menjalankan OS lain, terutama yang open-source seperti android, Anda mungkin bisa mendapatkan sumber untuk port untuk bermain.
sumber
Melakukan semuanya sendiri akan sulit di terbaik. Anda akan memiliki waktu yang jauh lebih mudah dengan salah satu perangkat yang didukung oleh proyek Rockbox , yang merupakan firmware open source untuk pemutar mp3. Beberapa perangkat ini tidak mahal dan menawarkan banyak keuntungan yang Anda sebutkan, dan mereka dirancang untuk meningkatkan firmware melalui USB. Anda akan mendapatkan bantuan dari komunitas aktif yang telah menemukan masalah dasar mengenai kompiler, bootloader, dll. Serta beberapa kode sumber untuk memulai.
Fitur bagus dari Rockbox adalah mengatur perangkat ke dual boot, sehingga mereka masih dapat digunakan untuk tujuan semula ketika Anda tidak menggunakan firmware baru.
sumber
Tidak.
Dokumentasi publik untuk ponsel ini (seperti pada halaman yang Anda tautkan) bahkan tidak mencantumkan jenis prosesor. Bahkan jika itu terjadi, Anda akan memerlukan skema (termasuk nomor bagian dari semua IC) untuk dapat menulis kode untuk itu. Itu akan menjadi milik Sony / Ericsson, jadi Anda tidak akan mendapatkannya). Sama untuk ponsel lainnya.
Jika Anda tidak memiliki semua dokumentasi untuk prosesor, memori flash, dll., Anda dapat menulis bootloader yang kompatibel dengan Arduino setelah menghabiskan beberapa minggu waktu Anda. Tentu saja ini akan mengharuskan Anda mendapatkan lingkungan pengembangan untuk telepon, yang kemungkinan akan menelan biaya ratusan jika tidak ribuan dolar.
Sekalipun Anda bisa menulis bootloader yang kompatibel dengan Arduino, mustahil untuk mengulang dan mengunggah sketsa Arduino karena mustahil 1) kompiler untuk Arduino akan memancarkan kode untuk mikrokontroler yang kompatibel dengan Arduino (Atmega, PIC32 dll.) , dan telepon pasti tidak akan menggunakan yang hilang - kemungkinan besar akan ada beberapa varian ARM); dan 2) port I / O tidak akan berlokasi di lokasi yang sama (port) pada ponsel seperti pada Arduino.
Catatan ada beberapa ponsel open-source , tetapi Anda tidak akan dapat menjalankan perangkat lunak Arduino untuk yang sama seperti yang saya sebutkan di atas (ketidakcocokan prosesor dan perangkat keras). Beberapa jawaban lain telah menyarankan Android, tetapi perhatikan bahwa itu tidak ada dalam daftar ponsel sumber terbuka karena driver berpemilik. Dan sekali lagi pertanyaannya adalah Anda dapat menjalankan kode Arduino pada mereka, dan jawabannya jelas tidak.
Jadi jauh lebih murah untuk hanya menggigit peluru dan mendapatkan papan dan perangkat Arduino.
sumber
Apa yang diperlukan untuk mengubah berbagai perangkat keras "sehari-hari" menjadi platform mikrokontroler? Mod Sprite adalah sumber inspirasi yang sangat baik. Ini memberikan penjelasan yang baik tentang proses yang diperlukan untuk "membuka" perangkat dan mendapatkan kontrol atas mereka. TL; DR: Anda dapat menjalankan Linux pada kartu SD, dan pada hard drive. Tidak, tidak menggunakan hard drive. Pada hard drive - pada CPU yang cukup kuat yang merupakan pengendali drive.
sumber