14 dicembre 2016

Android Things per Raspberry Pi 3

Google ha reso disponibile la prima developer preview di AndroidThings per le board Intel Edison, NXP Pico e Raspberry Pi 3.

Sostanzialmente si tratta del progetto Brillo annunciato a maggio del 2015 e che ora sembra finalmente arrivato alla soglia del rilascio ufficiale.
Ho avuto modo di installare questa preview sul mio Raspberry Pi 3 ed ecco qualche dato tecnico più o meno interessante che ho ricavato.

Ho iniziato con il verificare su quale versione Android fosse basata questa preview e dal file build.prop sono emerse le seguenti caratteristiche:
  • Android Nougat 7.0 (build NIF73)
  • Patch di sicurezza: 5 dicembre 2016
  • Versione API: 24

Per quanto riguarda il Kernel invece, la versione attualmente a bordo è la 4.4.19:

Linux version 4.4.19-v7+ (android-build@vpeb11.mtv.corp.google.com) (gcc version 4.9 20150123 (prerelease) (GCC) ) #1 SMP PREEMPT Mon Dec 12 21:14:20 UTC 2016

 Come bootloader viene utilizzato U-Boot versione 2016.09-g51dd2f5.

Per i più curiosi, ho utilizzato la porta seriale per salvare l'intero output della sequenza di avvio, il log è disponibile a questo indirizzo: pastebin.com/raw/KGEBXd4t

Interessante notare come al momento non vengano sfruttate a pieno le potenzialità offerte dalla CPU 64 bit visto che il sistema è compilato a 32 bit, magari nelle versioni future...

Per il resto al momento non c'è altro di interessante da dire, la ROM è veramente minimale ed oltre al Launcher c'è poco altro a disposizione, se volete collegare il Raspberry alla vostra rete WiFi potete farlo tramite il terminale dalla porta seriale con:

am startservice \
    -n com.google.wifisetup/.WifiSetupService \
    -a WifiSetupService.Connect \
    -e ssid <Network_SSID> \
    -e passphrase <Network_Passcode>

 dove al posto di <Network_SSID> va inserito, appunto, il SSID della vostra rete e al posto di <Network_Passcode> va inserita la password.

Se volete avviare le impostazioni:

am start -n com.android.settings/.Settings

Lascio un paio di link utili per chi intendesse approfondire l'argomento:

3 commenti:

  1. Ciao! Ho provato la rom AOSPMod e, che dire, finalmente una rom android che funziona decentemente sul raspberry.

    Dunque, ho scaricato android things e come hai detto tu apparte un "launcher" che consiste in una semplice schermata che mostra l'IP non c'è molto.

    Però, ecco che le cose si fanno interessanti: ho iniziato a caricare via ADB alcune app, tra cui il launcher originale della nougat che, guarda guarda, funziona perfettamente. Ho ottenuto insomma una rom che funziona perfettamente, risolto il problema dello sfondo e del puntatore distorto, e in più dovrebbero essere incluse le API per usare le porte GPIO (questo lo devo ancora testare).

    Se ti interessa ti passo l'immagine così si può pensare di migliorarla. Noterai che le applicazioni di sistema installate sono quelle della 4.4.2 perché al momento avevo quelle.

    Ora sto cercando (purtroppo senza molto successo) di far funzionare lo schermo touch screen che funziona ovunque meno che su android, perché usare un mouse per questo scopo è imbarazzante.

    Intanto grazie ancora per il lavoro e per avermi dato qualcosa su cui pastrugnare in questo giorno di vacanza.

    RispondiElimina
    Risposte
    1. Il problema di Android Things è che finché non sarà disponibile nella versione definitiva non abbiamo i sorgenti a disposizione, non ha senso mettersi a lavorare su un'immagine già compilata, una preview tra l'altro.
      Al momento c'è poco da fare, tocca aspettare, quando Google pubblicherà i sorgenti potremmo finalmente fixare tutti i problemi, accelerazione hardware 3D su tutti.

      Elimina
    2. Attendiamo fiduciosi... Magari poi la versione definitiva avrà già tutto quello che ho messo. Certo, costruire la ROM da zero ha sicuramente i suoi vantaggi ma ora come ora non saprei nemmeno da dove iniziare, quindi ho sfruttato una buona base.

      Intanto ti scrivo che per sistemare lo sfondo mi è bastato installare VisualizationWallpapers.apk e WallpaperCropper.apk (presi da una ROM 4.4) poi immagino che per mettere un'immagine personale serva la galleria. Spero che ti sia di aiuto.

      Saluti

      Elimina