Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Al .NEXT 2026 di Chicago, Nutanix ha mostrato quanto sia cambiata: una piattaforma software che gestisce VM, container e carichi di lavoro IA ovunque, dall’on-premise al cloud pubblico. Con un’esecuzione rapidissima sulle partnership e sulla migrazione da VMware
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Xiaomi Pad 8 Pro adotta il potente Snapdragon 8 Elite all'interno di un corpo con spessore di soli 5,75 mm e pannello LCD a 144Hz flicker-free, per un tablet che può essere utilizzato con accessori dedicati di altissima qualità. Fra le caratteristiche esclusive, soprattutto per chi intende usarlo con la tastiera ufficiale, c'è la modalità Workstation di HyperOS 3, che trasforma Android in un sistema operativo con interfaccia a finestre
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-04-2011, 11:53   #1
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
[C/C]Programmare cornici digitali

Salve, vorrei sapere se c'è qualche SDK o tool per poter scrivere programmi che siano eseguibili sull'HW limitatissimo delle cornici digitali e se c'è qualche modo per poterlo caricare sulla memoria della cornice stessa.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 25-08-2011, 11:47   #2
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
up
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 26-08-2011, 01:51   #3
LMCH
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 6576
Prima dovresti come minimo specificare l'hardware, fa una differenza enorme.

Di solito il fornitore dell'hardware propone come minimo un suo SDK di basso livello con le librerie di base, nel caso delle cornici digitali non è insolito che sotto ci sia Windows CE oppure Linux.

Ma per eseguire programmi "esterni" su un prodotto finito di quel tipo o la cosa è prevista direttamente da chi ha sviluppato il prodotto oppure bisogna usare trucchi tipo stack overflow o heap smashing con immagini confezionate ad arte.

Troppa fatica, se proprio vuoi una "cornice programmabile" prendi un tablet cinese con Android al di sotto dei 100 euro e lo potrai usare anche come cornice oltre che per molto altro.

Io recentemente ne ho preso uno in offerta a 99 euro (display 800x480 con touchscreen resistivo, cpu ARMv5TE ad 800Mhz accelerazione hardware della grafica 2D, 256MB di ram, Android 2.2, Wi-Fi, webcam frontale) che oltre alla scheda microSD aveva pure un "connettore di espansione" con DUE porte USB host ed il caro vecchio connettore ethernet RJ45.

Non si tratta di un prodotto che consiglierei a chi vuole un tablet, ma come aggeggio per hobbysti e smanettoni di hardware e software è un affarone visto che usando l'ethernet e le due USB host lo si può interfacciare con un sacco di roba.
L'unica cosa che gli manca sono I/O digitali, ingressi analogici e DAC optoisolati ma per quello gli si può (ad esempio) collegare sull'ethernet un Arduino con interfaccia ethernet.
LMCH è offline   Rispondi citando il messaggio o parte di esso
Old 26-08-2011, 02:22   #4
LMCH
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 6576
Quote:
Originariamente inviato da LMCH Guarda i messaggi
se proprio vuoi una "cornice programmabile" prendi un tablet cinese con Android al di sotto dei 100 euro e lo potrai usare anche come cornice oltre che per molto altro.
Mi ero scordato di aggiungere alcune cose se vuoi usare un tablet Android economico:
1) prendine uno per cui esistono firmware aggiornati (ora come ora da Android 2.2 in su), meglio se parte già con Android 2.2 "di serie".
2) informati se sia già sbloccato (se può caricare .apk "non sicuri") o se sia facile sbloccarlo;
3) minimo 256MB (più ram c'è e meglio è, ma guarda la ram fisicamente presente non quella "libera" ed occhio che in molti prodotti d'importazione a basos costo le specifiche sono confuse, una ricerca fatta con google toglie parecchi dubbi);
4) prima dell'acquisto fai un giro sul sito del produttore e guarda cosa è incluso (nel mio caso a convincermi all'acquisto è stato il connettore di espansione), poi guarda nei vari forum per vedere che altro c'è di interessante, cose da sapere riguardo le applicazioni utilizzabili su di essi, ecc. ecc.
5.1) nel caso di Android dal sito di google dedicato ad esso puoi scaricare l'SDK (per scrivere applicazioni con sorgenti in java anche se il runtime è la VM Dalvik), l'NDK (per scrivere programmi o parti di programmi in C/C++/assembly) e poi ti serve Eclipse come IDE. Insomma, non è una passeggiata ma attualmente è la soluzione più a basso costo.
5.2) oppure in alternativa potresti prendere in considerazione AppAccelerator
(sviluppi app usando html5/css/javascript/python/ruby che possono girare su Android,iOS,Windows,Mac,Linux) la Community Edition è gratuita.
LMCH è offline   Rispondi citando il messaggio o parte di esso
Old 26-08-2011, 16:33   #5
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da LMCH Guarda i messaggi
...

Ma per eseguire programmi "esterni" su un prodotto finito di quel tipo o la cosa è prevista direttamente da chi ha sviluppato il prodotto oppure bisogna usare trucchi tipo stack overflow o heap smashing con immagini confezionate ad arte.

...
Ti ringrazio per i tuoi consigli, in particolare quelli che ho quotato di cui gradirei qualche delucidazione e/o qualche link.
Comunque la mia "idea" (o meglio scimmia o curiosità) è quello di usare l'hw di una cornice per fare un simil tablet o quanto meno poterci caricare un paio di app mie.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 27-08-2011, 00:17   #6
LMCH
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 6576
Quote:
Originariamente inviato da nucarote Guarda i messaggi
Ti ringrazio per i tuoi consigli, in particolare quelli che ho quotato di cui gradirei qualche delucidazione e/o qualche link.
Comunque la mia "idea" (o meglio scimmia o curiosità) è quello di usare l'hw di una cornice per fare un simil tablet o quanto meno poterci caricare un paio di app mie.
Quello a cui mi riferivo era una code injection in ram per inserire proprio codice eseguibile e mandarlo in esecuzione (ma funziona solo se riescia ad individuare qualche punto debole nel firmware e se i programmi eseguibili sono in ram invece che essere eseguiti da una NOR-flash).
Se il codice eseguibile sta in ram, si cerca qualcosa in esso che non fa controlli sulla dimensione dei dati da elaborare (in questo caso delle bitmap) e gli si spara dentro una finta bitmap "troppo grande" che scrive al di fuori dell'area di memoria allocata per essa su stack o su heap fino a quando non va a sovrascrivere il codice o un indirizzo di ritorno nello stack (sostituendolo con l'indirizzo del codice che si vuole eseguire).
E' una tecnica usata dai malware e dai programmi che "sbloccano" cellulari e tablet.
Ma ripeto, se consideri quanto tempo ci perderesti, fai prima e spendi meno a prendere un tablet economico al di sotto dei 100 euro.
LMCH è offline   Rispondi citando il messaggio o parte di esso
Old 27-08-2011, 08:46   #7
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da LMCH Guarda i messaggi
Quello a cui mi riferivo era una code injection in ram per inserire proprio codice eseguibile e mandarlo in esecuzione (ma funziona solo se riescia ad individuare qualche punto debole nel firmware e se i programmi eseguibili sono in ram invece che essere eseguiti da una NOR-flash).
Se il codice eseguibile sta in ram, si cerca qualcosa in esso che non fa controlli sulla dimensione dei dati da elaborare (in questo caso delle bitmap) e gli si spara dentro una finta bitmap "troppo grande" che scrive al di fuori dell'area di memoria allocata per essa su stack o su heap fino a quando non va a sovrascrivere il codice o un indirizzo di ritorno nello stack (sostituendolo con l'indirizzo del codice che si vuole eseguire).
E' una tecnica usata dai malware e dai programmi che "sbloccano" cellulari e tablet.
Ma ripeto, se consideri quanto tempo ci perderesti, fai prima e spendi meno a prendere un tablet economico al di sotto dei 100 euro.
Che non sia una cosa facile lo avevo intuito, comunque per l'accesso alla Ram come si procede?

Ultima modifica di nucarote : 27-08-2011 alle 09:15.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 27-08-2011, 23:56   #8
LMCH
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 6576
Quote:
Originariamente inviato da nucarote Guarda i messaggi
Che non sia una cosa facile lo avevo intuito, comunque per l'accesso alla Ram come si procede?
Prepari una "immagine finta" (di solito una in formato .bmp se è supportato, visto che è un formato relativamente semplice) con un header sbagliato ad hoc in modo da provocare un buffer overflow, nell' "immagine finta" avrai infilato il codice binario che vuoi eseguire e lo avrai posizionato dentro i dati dell' "immagine finta" in modo tale che l'esecuzione del codice di decodifica "funzioni male" a causa del buffer overflow (che va a sovrascrivere dati e codice in ram) e continui l'esecuzione nel codice binario inserito nell'immagine.
Concettualmente semplice ma in pratica complicato, specialmente perchè devi capire se c'è qualche bug nel firmware da usare per provocare il buffer overflow.

Ma di solito se hai già modo di analizzare il firmware ed è su flash eprom, fai prima a riscriverlo/modificarlo in modo da supportare l'esecuzione di codice esterno senza dover fare quanto scritto sopra.

Capisci ora perchè era meglio l'altra alternativa ?
LMCH è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2011, 08:46   #9
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da LMCH Guarda i messaggi
Prepari una "immagine finta" (di solito una in formato .bmp se è supportato, visto che è un formato relativamente semplice) con un header sbagliato ad hoc in modo da provocare un buffer overflow, nell' "immagine finta" avrai infilato il codice binario che vuoi eseguire e lo avrai posizionato dentro i dati dell' "immagine finta" in modo tale che l'esecuzione del codice di decodifica "funzioni male" a causa del buffer overflow (che va a sovrascrivere dati e codice in ram) e continui l'esecuzione nel codice binario inserito nell'immagine.
Concettualmente semplice ma in pratica complicato, specialmente perchè devi capire se c'è qualche bug nel firmware da usare per provocare il buffer overflow.

Ma di solito se hai già modo di analizzare il firmware ed è su flash eprom, fai prima a riscriverlo/modificarlo in modo da supportare l'esecuzione di codice esterno senza dover fare quanto scritto sopra.


Capisci ora perchè era meglio l'altra alternativa ?
Quello che volevo chiedere è da quali porte è possibile accedere alla RAM e possibilmente alla ROM.
Piccola parentesi sui tablet a basso costo, quali secondo te sono i più affidabili.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2011, 10:57   #10
LMCH
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 6576
Quote:
Originariamente inviato da nucarote Guarda i messaggi
Quello che volevo chiedere è da quali porte è possibile accedere alla RAM e possibilmente alla ROM.
Dipende dall'hardware del dispositivo.

Quote:
Originariamente inviato da nucarote Guarda i messaggi
Piccola parentesi sui tablet a basso costo, quali secondo te sono i più affidabili.
Non ce ne sono. Nel senso che di solito molti di essi condividono un "progetto di riferimento" ma poi i vari produttori OEM fanno una modifica qui e la per risparmiare su qualcosa oppure per "aggiornarli" con più ram, un display migliore, una batteria differente ecc. in base a quel che chiede il cliente che ne ordina un certo quantitativo per poi rivenderli con il suo marchio.
Il sistema migliore è selezionare 2..3 modelli che sembrano interessanti e poi cercare via google sui forum dedicati se ci sono problemi particolari, cosa ci si può far girare, fino a quale versione di Android si può aggiornarli, ecc. ecc.
LMCH è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2011, 18:58   #11
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da LMCH Guarda i messaggi
...
Non ce ne sono. Nel senso che di solito molti di essi condividono un "progetto di riferimento" ma poi i vari produttori OEM fanno una modifica qui e la per risparmiare su qualcosa oppure per "aggiornarli" con più ram, un display migliore, una batteria differente ecc. in base a quel che chiede il cliente che ne ordina un certo quantitativo per poi rivenderli con il suo marchio.
Il sistema migliore è selezionare 2..3 modelli che sembrano interessanti e poi cercare via google sui forum dedicati se ci sono problemi particolari, cosa ci si può far girare, fino a quale versione di Android si può aggiornarli, ecc. ecc.
Lo immaginavo grazie.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 30-08-2011, 15:17   #12
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da nucarote Guarda i messaggi
Quello che volevo chiedere è da quali porte è possibile accedere alla RAM e possibilmente alla ROM.
Piccola parentesi sui tablet a basso costo, quali secondo te sono i più affidabili.
Dovresti dissaldare il chip della ROM e riprogrammarlo con un tuo firmware, ma scrivere un firmware per un dispositivo avendo poche conoscenze sulle specifiche dello stesso (e non credo la casa produttrice ne rilasci molte di specifiche) sicuramente non è una cosa facile, a meno che la cornice non usi una piattaforma HW conosciuta e diffusa (come fanno certi router per esempio e per questa ragione ci sono progetti in giro che trasformano routers in mini computer attraverso una mini distribuzione linux) .

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-08-2011, 15:26   #13
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
Dovresti dissaldare il chip della ROM e riprogrammarlo con un tuo firmware, ma scrivere un firmware per un dispositivo avendo poche conoscenze sulle specifiche dello stesso (e non credo la casa produttrice ne rilasci molte di specifiche) sicuramente non è una cosa facile, a meno che la cornice non usi una piattaforma HW conosciuta e diffusa (come fanno certi router per esempio e per questa ragione ci sono progetti in giro che trasformano routers in mini computer attraverso una mini distribuzione linux) .

Ciao
Per quanto riguarda i cellulari è "possibile" in qualche modo accedere alla ROM tramite JTAG, e mi chiedevo se si potesse fare qualcosa di analogo per le cornici digitali.

Ultima modifica di nucarote : 30-08-2011 alle 15:35.
nucarote è offline   Rispondi citando il messaggio o parte di esso
Old 30-08-2011, 15:29   #14
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da nucarote Guarda i messaggi
Per quanto riguarda i cellulari era possibile in qualche modo accedere alla ROM tramite JTAG, e mi chiedevo se si potesse fare qualcosa di analogo per le cornici.
Beh, se c'è una possibilità del genere in genere non è documentata ed è dipendente dal dispositivo che hai. In genere staccare la ROM e riprogrammarla è l'unico modo "universale" per essere sicuro che la cosa funzioni
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-08-2011, 16:09   #15
nucarote
Senior Member
 
Iscritto dal: Mar 2004
Messaggi: 2992
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
Beh, se c'è una possibilità del genere in genere non è documentata ed è dipendente dal dispositivo che hai. In genere staccare la ROM e riprogrammarla è l'unico modo "universale" per essere sicuro che la cosa funzioni
Dopo il JTAG staccare la ROM è davvero l'ultima spiaggia.
nucarote è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
L'IA ha fatto incetta anche di processor...
Affidabilità delle GPU NVIDIA cro...
Maxi incendio in un parcheggio BYD: fiam...
Apple potrebbe diventare il terzo produt...
L'IA aiuta i computer quantistici con i ...
Nutanix Database Platform è ora i...
iliad lancia il 5G Standalone in Italia:...
Alexa+ da oggi disponibile anche in Ital...
SpaceX Starship: Ship 39 ha eseguito il ...
Auto usate: Peugeot 3008 tra le peggiori...
YMTC, il produttore di memorie 100% cine...
I gamer rinunciano alla RAM ma non agli ...
Oltre 100 estensioni Chrome malevole rub...
Multi Frame Generation 5x e 6x anche su ...
Kraken sotto ricatto dopo due accessi in...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:36.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v