Tag Archives: dfu-utils

Dfu-util tip and trick

Da quando ho comprato il nuovo notebook, dfu-util non più riconosce automaticamente la porta usb a cui è collegato l’OpenMoko.

Per ovviare, è necessario passare come parametro il codice identificativo del device. Per ottenere una lista dei device collegati eseguire in un terminale:

$: sudo dfu-util --list

Il device corrispondente all’OpenMoko è quello identificato da una stringa simile a questa:

Found Runtime: [0x1d50:0x5119] devnum=12, cfg=0, intf=2, alt=0, name="USB Device Firmware Upgrade"

Possiamo creare due alias in .bashrc in modo da non dover digitare ogni volta il codice del device:

alias mk='sudo dfu-util --device 0x1d50:0x5119 -a kernel -R -D $1'

alias mf=’sudo dfu-util –device 0x1d50:0×5119 -a rootfs -R -D $1′

A questo punto, per flashare l’OpenMoko, sara sufficiente digitare:

$: mk nome_file_kernel

$: mf nome_file_filesystem

[How-to]:Arch Linux e NeoFreerunner (OpenMoko)

In questo how-to vedremo come collegare il NeoFreerunner ad un computer con distro Arch Linux e come installare il software per il flashing (dfu-util).

Dfu-util

Il pacchetto dfu-util non è contento nei repository ufficiali di Arch Linux (core, extra e community), ma può essere facilmente installato da AUR.

AUR è l’acronimo di ArchLinux User-Community Repository e non è altro che un repository gestito dalla comunità in cui non ci sono pacchetti già pronti ad essere installati, ma soltanto i file PKGBUILD necessari alla compilazione del software. PKGBUILD non è altro che un file di testo in cui ci sono tutte le informazioni, sotto forma di stringhe interpretabili direttamente dalla shell, necessarie per compilare il codice e creare un pacchetto automaticamente; in questo modo all’utente non resta che installare il pacchetto appena creato.

YAOURT (acronimo di Yet AnOther User Repository Tool) è un tool per la gestione avanzata dei pacchetti, la sua peculiarità è quella di interfacciarsi con AUR e di scaricare automaticamente il PKGBUILD del software che si desidera installare, compilarlo e successivamente installarlo. YAOURT gestisce anche automaticamente gli aggiornamenti del software compilato ed installato da AUR.

YAOURT è molto comodo da usare e soprattutto rende il processo di compilazione, installazione e aggiornamento completamente automatico; per questo lo useremo per compilare dfu-utils.

Prima di procedere installiamo alcuni pacchetti necessari:

$: sudo pacman -Sy base-devel

Compileremo YAOURT prelevando il PKGBUILD dal repository AUR, preleviamo il file e scompattiamolo:

$: wget http://aur.archlinux.org/packages/yaourt/yaourt.tar.gz

$:tar zxvf yaourt.tar.gz

Entriamo nella directory appena estratta e avviamo la compilazione (prima però aprite i file PKGBUILD e yaourt.install e assicuratevi non contengano stranezze)

$: makepkg

Dopo qualche minuto avremo un file del tipo  yaourt-X.X.X-X-arch.pkg.tar.gz (le x indicano i numeri di versione e arch l’architettura, nel mio caso il nome del file è  yaourt-0.9.1-1-i686.pkg.tar.gz) e non ci rimane che installarlo.

$: sudo pacman -U  yaourt-0.9.1-1-i686.pkg.tar.gz

Adesso yaourt è installato e funzionante!

A questo punti installiamo dfu-util digitando semplicemente in un terminale:

$: yaourt -S dfu-util-svn

Alla domanda  Edit the PKGBUILD (recommended) ? [Y/n](“A” to abort) rispondiamo premendo Invio e poi, alla domanda successiva, digitiamo il programma di editing che vogliamo usare (ad esempio vim) oppure semplicemente Invio per usare quello di default. Controlliamo il codice e usciamo dall’editor (se si usa vi basta :q!).

Alla domanda Continue the building of dfu-util-svn ? [Y/n] ovviamente premiamo invio e aspettiamo che la compilazione termini, infine installiamo il pacchetto appena creato digitando Invio alla domanda Continue installing dfu-util-svn? [Y/n]

Il pacchetto dfu-util è installato!

Collegare il Neo al computer

Furester ha pubblicato sul suo blog un paio di script per autoconfigurare l’interfaccia usb quando il cavo viene collegato al pc ed ha pubblicato su AUR un PKGBUILD per installare i due script automaticamente.

Per installarli basta digitare:

$: yaourt -S openmoko-usb-networking

e lasciare che yaourt si occupi della procedura di installazione.

Adesso possiamo collegarci via ssh al nostro FreeRunner.