Eddy-CPU
Un bel sistemino Linux poco più grande di una carta di credito (un pelo più corto sul lato lungo, un pelo più largo sul lato corto... considerando la scheda di interfaccia... altrimenti la sola scheda "base" su una carta di credito ci sta 3 volte ed avanza del posto!).
Io sto usando un S2M/PIN con CPU v2.0, che mi mette a disposizione una seriale RS232, una porta USB host, una Ethernet, uno slot per SD (non HC, purtroppo) full-size ed una CPU ARM a 180MHz.
Intanto i punti più negativi che ho rilevato:
- il sito della comunità è impostato piuttosto male (in particolare la codifica dei caratteri: FireFox la riconosce come codifica coreana e sballa tutto, se si forza ad UTF-8 funziona "bene")
- i sorgenti del kernel sono disponibili solo parzialmente (per esempio manca completamente lo scheduler RT!)
- la documentazione non coincide con quanto ci si trova davanti
- si ha sempre l'impressione di avere a che fare con qualcosa di molto dilettantesco
- l'interfaccia web inclusa nel firmware funziona solo con Explorer
Dopo aver lasciato "marcire" la scheda per un anno abbondante (per seguire altri progetti), finalmente mi ci sono messo dietro.
Purtroppo, inizialmente, mi sono scontrato con il fatto di essermi dimenticato le impostazioni che gli avevo dato durante le prime prove (IP e password). Ho quindi tentato la procedura di reset "standard" prevista con U-Boot: premere (senza rilasciarlo) il tasto di reset, dopo 10 secondi staccare l'alimentazione, attendere altri 10 secondi, riattaccare l'alimentazione, attendere ancora 10 secondi e finalmente rilasciare il reset. Questo ripristina completamente alle impostazioni di fabbrica: ora è raggiungibile via telnet (non c'è il demone SSH!) sia al 192.168.0.223 che al 10.10.1.1, con user eddy e password 99999999.
Il firmware viene fornito suddiviso in vari file, nella forma eddy_XX_VVV.bin, con VVV che identifica la versione e XX che può essere:
- bl: Boot loader (mtd0 ?)
- bs: Bootstrap (mtd1 ?)
- os: Kernel image (mtd2)
- fs: File System (mtd3)
- cf: Config (mtd4)
Per flasharli, si possono inviare tramite l'interfaccia web o trasferire via FTP e quindi usare il comando fcp -v file /dev/mtdX
. Questo dice la documentazione. Facile, no? Peccato che l'interfaccia web funzioni solo con IE e che il comando fcp non ci sia. Ops...
Spulciando i sorgenti dei CGI che dovrebbero gestire le pagine web, ho trovato che c'è il comando upgrade file.img
. Quindi bisogna inviare il .img via ftp, quindi da telnet eseguire l'upgrade.
Per creare il .img, basta usare tar
per inserire nell'img i file fs, os, bl e bs:
$ tar cvf eddy-22a.img eddy-fs-22a.bin eddy-os-22a.bin eddy-bl-21c.bin eddy-bs-21c.bin
Il prossimo passo sarà la realizzazione di un filesystem più versatile (per es. che monti la card SD e la usi come overlay sulla flash).