OT: raspberry pc ultra low cost, per smanettoni

allora, programmare la board trattandola come un PC è facile come un PC, l'unico problema è che non esistono così tante librerie ARM quante con gli 8086, ma questo forse è anche un vantaggio, i pochi che ci lavorano non disperdono le forze.

diventa complicato se vuoi scrivere un driver per usare il GPIO, come d'altronde sarebbe difficile scrivere un driver GPIO per un processore AMD o intel...

pero, stavo giusto leggendo un articolo di un driver GPIO che in pratica mette a disposizione un'interfaccia molto simile all'arduino.. certo niente PWM, timer, ADC, non credo che l'I2C sia già supportato...

Vabbè...quando parlavi di stream video intendevo comunque image processing....
E le OpenCV per Android ci sono( non so però quanto siano performanti)
Ho visto implementato un'algoritmo che fa detection del viso robusto( non riconosce il viso, cerca di trovarne uno) su un LG OptimusOne( non è il massimo dei cellulari, lo so) e si hanno qualcosa come 3-4 frame al secondo
Molti algoritmi sono troppo pesanti comunque per quel processore...

Tr3nT:
Vabbè...quando parlavi di stream video intendevo comunque image processing....
E le OpenCV per Android ci sono( non so però quanto siano performanti)
Ho visto implementato un'algoritmo che fa detection del viso robusto( non riconosce il viso, cerca di trovarne uno) su un LG OptimusOne( non è il massimo dei cellulari, lo so) e si hanno qualcosa come 3-4 frame al secondo
Molti algoritmi sono troppo pesanti comunque per quel processore...

tieni conto che cmq android e piu pesantuccio rispetto a una distro linux di piccole dimensioni quindi credo non ci siano grossi problemi sul raspberry

Tr3nT:
Vabbè...quando parlavi di stream video intendevo comunque image processing....
E le OpenCV per Android ci sono( non so però quanto siano performanti)
Ho visto implementato un'algoritmo che fa detection del viso robusto( non riconosce il viso, cerca di trovarne uno) su un LG OptimusOne( non è il massimo dei cellulari, lo so) e si hanno qualcosa come 3-4 frame al secondo
Molti algoritmi sono troppo pesanti comunque per quel processore...

attulmente ho letto sui 0,3fps però col codice in python. e senza usare la GPU, che sta venendo implementata piano piano. Quando anche le openCL saranno implementate, credo che diverrà rispettabile a tal punto da gesture un flusso video. Alla fine se ci pensi i riconoscitori facciali ci sono anche su moltissime macchine fotografiche economiche, non è un algoritmo complessissimo se ci si accontenta di 1 o 2 fps

eh...capisco che un po' è pesante android...ma sul mio pc la stessa applicazione( per quanto riguarda l'elaborazione dell'immagine) va sui 23-25 fps( su frame di un video a 800x600)...
su winsozz va sui 8-10 frame......-_-

lesto:
attulmente ho letto sui 0,3fps però col codice in python. e senza usare la GPU, che sta venendo implementata piano piano. Quando anche le openCL saranno implementate, credo che diverrà rispettabile a tal punto da gesture un flusso video. Alla fine se ci pensi i riconoscitori facciali ci sono anche su moltissime macchine fotografiche economiche, non è un algoritmo complessissimo se ci si accontenta di 1 o 2 fps

Eh..sarebbe un signor risultato...:smiley:

Tr3nT:
eh...capisco che un po' è pesante android...ma sul mio pc la stessa applicazione( per quanto riguarda l'elaborazione dell'immagine) va sui 23-25 fps( su frame di un video a 800x600)...
su winsozz va sui 8-10 frame......-_-

tieni conto che alcune app android sono fatte con i piedi scopiazzando qui e là e mangiano fin troppa ram e cpu,se ottimizzata per bene si può raggiungere un risultato anche migliore di quello del pyton.

Ordinata oggi, tempo di attesa previsto 11 settimane :frowning:

Ho fatto le prime prove e va benissimo, usare la GPIO è veramente banale, ci si riesce anche con la shell, per quanto riguarda l'I2C ci sono già i primi esempi per usare le librerie di sensors.
Adesso urge realizzare il convertitore di livello da 3v a 5v per l'I2C e poi provo tutto quello che ho in giro, adc, PCF8574 e memorie varie, per la seriale ho già ordinato i max3232 a tre volt.
Anche come media center non è male openelec gira abbastanza bene.

Alberto

Non appena avrò tempo e ci sarà della documentazione in rete sufficiente me la compro e mi ci faccio un bel media center con magari qualche extra... che voi sappiate ci gira android ???

bigjohnson:
Ho fatto le prime prove e va benissimo, usare la GPIO è veramente banale, ci si riesce anche con la shell, per quanto riguarda l'I2C ci sono già i primi esempi per usare le librerie di sensors.
Adesso urge realizzare il convertitore di livello da 3v a 5v per l'I2C e poi provo tutto quello che ho in giro, adc, PCF8574 e memorie varie, per la seriale ho già ordinato i max3232 a tre volt.
Anche come media center non è male openelec gira abbastanza bene.

Alberto

basta disattivare le pull-up interne dell'atmega e usere delle pull-up a 3,3v. caso chiuso

c'e' ben poco di chiuso in questo tuo intervento :slight_smile:

vero, ma proprio oggi leggevo un bell'articolo sull'i2c... e ho trovato un sacco di info importanti. appena raccolgo abbastanza metto su una discussione per fare la libreria!

La libreria e il driver per il kernel sembra che ci siano già
http://www.robot-electronics.co.uk/htm/raspberry_pi_examples.htm
per quanto riguarda il convertitore i2c 3/5 volt si può fare senza, ma consigliano di usarlo
http://nathan.chantrell.net/20120610/raspberry-pi-and-i2c-devices-of-different-voltage/

Alberto

visto che mi è stato chiesto, posto la mia piccola e travagliata esperienza.

prima di tutto ho installato sulla SD una arch linux, perchè è la distribuzione che uso anche sul PC principale, quindi sapevo di andare sul sicuro. appena installata ho avviato ed eseguito la procedura di aggiornamento, che ha un paio di interventi manuali che sono gli stessi identici della versione PC.(guida: full guide to first Arch update - Raspberry Pi Forums)

ho poi proceduto ad installare l'ambiente grafico, anche se in realtà giace inutilizzato. Da notare che con l'ambiente grafico si notano alcuni glitch come per esempio che l'ultimo carattere premuto si ripete all'infinito. All'inizio pensavo fosse un problema della mia keyboard wifi, ma giusto ieri leggevo su questo forum che con la debian questo problema si presenta anche in modalità solo consolle e motlo spesso, rendendo il SO inutilizzabile.

a questo punto ho scoperto che il modulo dei driver wifi realtek non è aggiornato e non supporta la mia super-economica pennina wifi. Quindi, ho scaricato il PKGBUILD del kernel, (per compilare i moduli servono i sorgenti del kernel), e ho provato a copilare il modulo senza successo (devo ancora capire perchè, se è una versione incompatibile o cosa)

nel frattempo che attendo un aiuto /cerco una soluzione per il modulo, ho deciso di provare a compilare il kernel.

ieri il piccolino è rimasto acceso oltre 11 ore a compilare, in una stanza senza raffreddamento, e la sua temperatura è rimasta sui 50°(stima, diciamo che ad appoggiarci il dito il calore da fastidio ma si può toccare traquillamente) sulle porte USB (è il chip network/usb che scalda così tanto, è nelle specifiche ma qualcuno ci ha messo comunque delle alette di raffreddamento). Scalda così tanto anche durante il normale funzionamento, è un pò ridicolo che un chip di interfaccia scaldi più del processore/gpu stesso ma tant'è.

Giusto se ve lo state chiedendo, la compilazione non è completata con successo perchè è terminato lo spazio sulla partizione. quando create l'immagine ci saranno 2 partizioni, una per il SO molto piccola e una per la home più grande, ma che non riempirà tutta la SD a meno che non abbiate una SD da 2 giga: quindi con parted o simili ingrandite la partizione home per coprire tutta la SD. Questo passaggio io l'ho fatto, ma erroneamente compilando da root la mia home non era nella partizione home ma in quella del SO, e ci son rimasto fregato.

Quindi stabilità SO e network ottime, anche scaricare occupa tranquillamente tutta la banda disponibile senza mettere in diffoltà la CPU

Non ho ancora provato java, l'i2c e la webcam, le cose che mi premono di più.

Sicuramente uno strumento NON adatto a chi si aspetta di installarci linux ed avere un server multimediale pronto a pennello. Anzi, le distribuzioni classiche desktop sembrano soffrire di più la mancanza di risorse da sprecare. Si nota che il tutto è ancora in fase di incubazione, quindi preparatevi a sbatterci la testa, sopratutto dal punto di vista driver, ed ad imprarare ad usare ben il terminale (mi sembra di essere tornanto a win 3.1, che lanciavi la scermata grafica solo se necesario)

ah, dimenticavo, installatevi Lynx che è un browser web testuale, da usare da terminale, è molto comodo ed è una scheggia.

lesto:
visto che mi è stato chiesto, posto la mia piccola e travagliata esperienza.

prima di tutto ho installato sulla SD una arch linux, perchè è la distribuzione che uso anche sul PC principale, quindi sapevo di andare sul sicuro. appena installata ho avviato ed eseguito la procedura di aggiornamento, che ha un paio di interventi manuali che sono gli stessi identici della versione PC.(guida: full guide to first Arch update - Raspberry Pi Forums)

ho poi proceduto ad installare l'ambiente grafico, anche se in realtà giace inutilizzato. Da notare che con l'ambiente grafico si notano alcuni glitch come per esempio che l'ultimo carattere premuto si ripete all'infinito. All'inizio pensavo fosse un problema della mia keyboard wifi, ma giusto ieri leggevo su questo forum che con la debian questo problema si presenta anche in modalità solo consolle e motlo spesso, rendendo il SO inutilizzabile.

a questo punto ho scoperto che il modulo dei driver wifi realtek non è aggiornato e non supporta la mia super-economica pennina wifi. Quindi, ho scaricato il PKGBUILD del kernel, (per compilare i moduli servono i sorgenti del kernel), e ho provato a copilare il modulo senza successo (devo ancora capire perchè, se è una versione incompatibile o cosa)

nel frattempo che attendo un aiuto /cerco una soluzione per il modulo, ho deciso di provare a compilare il kernel.

ieri il piccolino è rimasto acceso oltre 11 ore a compilare, in una stanza senza raffreddamento, e la sua temperatura è rimasta sui 50°(stima, diciamo che ad appoggiarci il dito il calore da fastidio ma si può toccare traquillamente) sulle porte USB (è il chip network/usb che scalda così tanto, è nelle specifiche ma qualcuno ci ha messo comunque delle alette di raffreddamento). Scalda così tanto anche durante il normale funzionamento, è un pò ridicolo che un chip di interfaccia scaldi più del processore/gpu stesso ma tant'è.

Giusto se ve lo state chiedendo, la compilazione non è completata con successo perchè è terminato lo spazio sulla partizione. quando create l'immagine ci saranno 2 partizioni, una per il SO molto piccola e una per la home più grande, ma che non riempirà tutta la SD a meno che non abbiate una SD da 2 giga: quindi con parted o simili ingrandite la partizione home per coprire tutta la SD. Questo passaggio io l'ho fatto, ma erroneamente compilando da root la mia home non era nella partizione home ma in quella del SO, e ci son rimasto fregato.

Quindi stabilità SO e network ottime, anche scaricare occupa tranquillamente tutta la banda disponibile senza mettere in diffoltà la CPU

Non ho ancora provato java, l'i2c e la webcam, le cose che mi premono di più.

Sicuramente uno strumento NON adatto a chi si aspetta di installarci linux ed avere un server multimediale pronto a pennello. Anzi, le distribuzioni classiche desktop sembrano soffrire di più la mancanza di risorse da sprecare. Si nota che il tutto è ancora in fase di incubazione, quindi preparatevi a sbatterci la testa, sopratutto dal punto di vista driver, ed ad imprarare ad usare ben il terminale (mi sembra di essere tornanto a win 3.1, che lanciavi la scermata grafica solo se necesario)

ah, dimenticavo, installatevi Lynx che è un browser web testuale, da usare da terminale, è molto comodo ed è una scheggia.

Grazie mille della recensione,io avevo intenzione di farci girare un programma java,attaccarci una webcam e un aarduino credo che questo lo regga :slight_smile:
edit: quindi non me lo consigli come mediacenter?

quindi non me lo consigli come mediacenter?

con openelc / xbmc va abbastanza bene, i video sono fluidi, ogni tanto l'interfaccia va a scatti, ma pare andare, non ho ancora provato a vedere video tramite la rete, condivisione da fileserver samba ecc.
Visto che per compilare openelec bisogna crosscompilare se a qualcuno interessa metto a disposizione i binari.

Alberto

perchè devi crosscompilare? non riesci a compilarlo direttamente sul rasp?

I tutorial dicono di cross compilare, da una qualsiasi distribuzione linux e penso sia meglio così, ci ha messo un tre orette su una macchina virtuale che gira su un Mac a 2,5 GHz.
Magari ci si riesce anche dal raspy ma penso ci metta parecchio tempo.

Alberto

sì, sul mio pc fisso tricore compilare il kernel con mille moduli che non servono ad una bega impiega 10/15 minuti, e come dicevo oltre 11 ore sul rasp(che ha mooolti meno moduli)... quindi quelle 3 ore sono interminabili. ma se mi dici che sei andato di macchina visrtuale, allora quelle 3 ore su un rasp sono DI MENO: il tuo pc ha dovuto lavorare per simulare un ARM, e probabilmente anche per simulare il suo clock e le sue limitazioni ram etc...

ps. non credo che la compilazione attraverso una macchina virstuale possa definirsi cross-compilazione, perchè a tutti gli effetti stai lavorando su QUEL sistema (compresi gli svantaggi). la cross-compilazione avviene dando il parametro ARCH al make(previa preparazione della build chain) e sfrutti completamente le potenzialità della macchina HOST, ma son nabbo di queste terminologie/metodologie.