CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: carotix con ben 4 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: JuJu75 con ben 19 Thanks ricevuti negli ultimi sette giorni
Utente del mese: carotix con ben 63 Thanks ricevuti nell'ultimo mese

NEWS DAL BLOG:
Pagina 2 di 14 primaprima 123412 ... ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 11 a 20 su 136
Discussione:

[VOWNEY V5] Problemi alla bussola

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #11
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    Quote Originariamente inviato da exenzy Visualizza il messaggio
    Interessante.. E' possibile portare il modulo memsicd3416x sulla CM10? Eventualmente come fare?
    ci ho provato, ma non ha funzionato e non so il perché.
    semplice copia e incolla con root Explorer, poi modifica dei permessi e del proprietario.

    Quote Originariamente inviato da slade9220 Visualizza il messaggio
    Non e' una vera Cm10.1 ma solo una stock modificata..
    belle comunque le funzioni aggiunte per personalizzare notifiche e altri componenti del SO.

  2.  
  3. #12
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    Quote Originariamente inviato da exenzy Visualizza il messaggio
    Scusa ma non sono esperto, esattamente cosa dovrei copiare?
    allora siamo in 2 non esperti
    io ho solo copiato il file "memsicd3416x" che si trova nella directory /system/bin dalla ROM MIUI sul PC, al cell.
    ma se fai come me, ottieni il mio stesso risultato, ossia non funziona lo stesso.
    la stessa operazione sulla rom stock invece funziona.

  4. #13
    Senior Droid L'avatar di slade9220


    Registrato dal
    Jun 2012
    Messaggi
    995

    Ringraziamenti
    277
    Ringraziato 296 volte in 188 Posts
    Predefinito

    Quote Originariamente inviato da becar Visualizza il messaggio
    allora siamo in 2 non esperti
    io ho solo copiato il file "memsicd3416x" che si trova nella directory /system/bin dalla ROM MIUI sul PC, al cell.
    ma se fai come me, ottieni il mio stesso risultato, ossia non funziona lo stesso.
    la stessa operazione sulla rom stock invece funziona.
    Hai provato a cancellare l'altro file (quello che dicevi che non corrispondeva al cip reale)?!

  5. #14
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    Quote Originariamente inviato da slade9220 Visualizza il messaggio
    Hai provato a cancellare l'altro file (quello che dicevi che non corrispondeva al cip reale)?!
    si l'ho fatto, ho rinominato bmm050d e la bussola funziona sempre, per questo che dico che non e' utilizzato.
    ho anche provato a chiamarlo memsicd3426x, ma cosi' facendo la bussola non funziona piu'.

    faccio notare a chi vuole sperimentare, che dopo aver rinominato/sostituito il file e' necessario un riavvio per rendere operative le modifiche.

  6. #15
    Androidiano


    Registrato dal
    Mar 2013
    Messaggi
    135

    Ringraziamenti
    15
    Ringraziato 4 volte in 4 Posts
    Predefinito

    [QUOTE=becar;4557946]si l'ho fatto, ho rinominato bmm050d e la bussola funziona sempre, per questo che dico che non e' utilizzato.
    ho anche provato a chiamarlo memsicd3426x, ma cosi' facendo la bussola non funziona piu'.

    faccio notare a chi vuole sperimentare, che dopo aver rinominato/sostituito il file e' necessario un riavvio per rendere operative le modifiche.[/]

    Saresti così gentile da spiegarmi come rinominare bmm050d? Io non riesco in alcun modo a modificare il file chipinfo. Grazie.
    Ultima modifica di exenzy; 24-09-13 alle 04:06

  7. #16
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    non chipinfo ma il file bmm050d che si trova in /system/bin


    Inviato dal mio VOW V5 usando Androidiani App

  8. #17
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    in modo completamente manuale, sono riuscito a scompattare il BOOT.IMG
    da una rapida occhiata con un editor binario noto che al suo interno c'e' il codice del MEMSICD3416X e non quello del BMM050.
    ci sono le stesse stringhe che vedo nei sorgenti che avevo scaricato (mmc3416.c).
    ora pero' mi chiedo, perché tutti i programmi di test e diagnostica riportano come sensore il Bosh BMM050 ?
    se il codice sorgente del memsicd3416 e' nel kernel, come mai esistono gli altri moduli in /system/bin ?

    per esempio chi genera i file "chipinfo" "layout" "posturedata" "sensordata" etc, che si trovano in /sys/bus/Platform/drivers/msensor, e' il codice nel kernel, infatti quei file continuano a esistere anche se elimino i moduli memsic*.* in /system/bin, e la cosa piu' bella e' che in "sensordata" ci sono comunque i valori corretti di orientamento, pero' senza /system/bin/memsicd3426x la bussola non funziona!

    sono sempre piu' disorientato

    [Edit]
    gli esperimenti proseguono con una scoperta semi utile
    l file presenti nella cartella /sys/bus/Platform/drivers/msensor non sono file reali, ma virtuali, quando li apriamo per visualizzare il contenuto (per esempio "layout") viene chiamata una subroutine nel kernel che scrive in Runtime il contenuto.
    sono tutti di sola lettura, tranne:
    - layout
    - trace
    che sono di lettura e scrittura
    e poi:
    - bind
    - unbind
    - uevent
    che sono solo di scrittura.

    layout in scrittura accetta solo un carattere numerico, nel range da 0 a 7, che indica il layout che vogliamo usare.
    i possibili layout sono:
    struct hwmsen_convert map[] =
    {
    { { 1, 1, 1}, {0, 1, 2} },
    { {-1, 1, 1}, {1, 0, 2} },
    { {-1,-1, 1}, {0, 1, 2} },
    { { 1,-1, 1}, {1, 0, 2} },
    { {-1, 1,-1}, {0, 1, 2} },
    { { 1, 1,-1}, {1, 0, 2} },
    { { 1,-1,-1}, {0, 1, 2} },
    { {-1,-1,-1}, {1, 0, 2} },
    };
    il primo gruppo e' il segno +1 o -1
    il secondo gruppo e' l'asse di destinazione 0=X 1=Y 2=Z
    per esempio la seconda linea (layout=1, perché si parte da 0) dice che la lettura dell'asse X del sensore viene invertita (-1) e restituita al programma come asse Y (1), la lettura dell'asse y del sensore non viene invertita (1) e restituita al programma come asse X (0), la lettura dell'asse z del sensore non viene invertita (1) e restituita al programma come asse Z (2).

    quindi modificando come testo il file layout (si puo' fare con RootExplorer) possiamo cambiare la mappatura del sensore magnetico e ruotare la visualizzazione della bussola. La modifica da fare e' quella di cancellare il contenuto e lasciare scritto un solo numero nel range 0-7. quando riapriamo il file in lettura vedremo i valori corretti del layout scelto.

    i 7 valori ammessi dovrebbero coprire tutti le possibili posizioni in cui il costruttore puo' montare il chip del sensore, peccato che con il modulo memsicd3416x della MIUI (l'unico che mi fa funzionare la bussola in modo pseudocorretto) nessuna delle 7 possibilta' mi dia l'orientamento corretto.
    Ultima modifica di becar; 27-09-13 alle 19:18

  9. #18
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    Mi piacerebbe conoscere l'opinione e le idee di qualcuno piu' esperto di me, ma nel frattempo continuo a parlare da solo.

    Ho scaricato questo datasheet: http://ae-bst.resource.bosch.com/med...0-DS001-01.pdf
    che non riguarda il sensore presente nel V5, ma a pagina 47 e' indicato il verso dei 3 assi magnetici secondo Android e la definizione di Azimuth, Pitch e Roll.
    ho usato queste definizioni per confrontare i 2 moduli memsicd3416x (MIUI-Robotnik e STOK-0626) che mi fanno funzionare la bussola, con i seguenti risultati ottenuti con la app PhoneTester :

    MIUI STOK
    Azimuth +180° e ruota al contrario OK
    Pitch OK OK
    Roll INV INV
    X INV OK
    Y INV OK
    Z INV OK
    risultati dai quali si deduce che e' meglio il modulo STOK.

    la app CPU-Z invece mi fornisce risultati diversi:
    MIUI STOK
    Azimuth +180° e ruota al contrario OK
    Pitch OK OK
    Roll OK INV
    questa differenza mi fa capire che le app possono accedere ai dati della bussola in modo diverso.
    il modulo MIUI fornisce in modo corretto i dati di A-P-R, e mi fa vedere la bussola in Marine Compass o la livella in Livella nel modo corretto, mentre con il modulo STOK che riporta il Roll invertito (ossia la rotazione sull'asse X), le 2 app citate sbagliano l'indicazione, capovolgendo il disegno sull'asse X.
    per contro il modulo STOK fornisce la posizione angolare della bussolo in modo corretto.
    ho provato tutti gli 8 layout possibili per vedere se anche il modulo MIUI riusciva a tirar fuori la posizione corretta della bussola, ma niente da fare hanno pastrocchiato nel codice le inversioni degli assi, e non ci sono layout che rispecchiano la minchiata fatta nel codice.

    la conclusione e' che il memsicd3416x presente nella rom stock e' meglio di quello presente nella rom MIUI, c'e' solo il Roll da mettere a posto e poi e' perfetto, sto provando quindi a capire dove avviene il calcolo del Roll usando un debugger/disassembler (IDApro per la precisione), in fin dei conti si tratta di cambiare un segno, solo che e' quasi impossibile

  10. Il seguente Utente ha ringraziato becar per il post:

    exenzy (29-09-13)

  11. #19
    Androidiano


    Registrato dal
    Mar 2013
    Messaggi
    135

    Ringraziamenti
    15
    Ringraziato 4 volte in 4 Posts
    Predefinito

    Ciao becar, purtroppo non sono in grado di aiutarti ma hai tutto il mio sostegno morale!
    Io posso solo confermare di aver notato che sulla MIUI robo la bussola compresa nella rom si muove, mentre quella che ho scaricato non si muove e non vede il sensore.
    Inoltre aggiungo una cosa che forse è collegata alla bussola: uso spesso il gps con copilot e va molto bene, tiene il segnale anche in casa, ma se provo con google maps non solo non funziona, spesso perde anche il segnale a cielo aperto, e questo con tutte le rom che ho provato; mi viene il dubbio che google maps per funzionare richieda una bussola funzionante. Ora uso la CM10.1 v3 - appena rilasciata - sia perché mi piace molto e non ha bug ( bussola a parte ) sia perché temo che una bussola sballata per il navigatore sia peggio di una bussola che non c'è.
    Ultima modifica di exenzy; 29-09-13 alle 20:17

  12. #20
    Androidiano VIP L'avatar di becar


    Registrato dal
    Jan 2013
    Messaggi
    1,259

    Ringraziamenti
    87
    Ringraziato 458 volte in 307 Posts
    Predefinito

    Quote Originariamente inviato da exenzy Visualizza il messaggio
    Ciao becar, purtroppo non sono in grado di aiutarti ma hai tutto il mio sostegno morale!
    grazie, ne ho bisogno, sto diventando matto, perché non conosco il funzionamento di Android e la ricerca delle informazioni e' una cosa pazzesca.

    Ora uso la CM10.1 v3 - appena rilasciata - sia perché mi piace molto e non ha bug ( bussola a parte ) sia perché temo che una bussola sballata per il navigatore sia peggio di una bussola che non c'è.
    appena installata e provata. La bussola non si muove.... ma, ecco una importante novita'.
    il modulo memsicd3416x usato dalla Cyano e' quello della rom stock, il kernel pure, quindi perché non funziona ?

    GRANDE SCOPERTA!
    manca un file !
    manca /data/misc/sensors/accel_nvm
    prova a copiare con RootExplorer il file in allegato (non lo zip ma il contenuto), togli in Impostazioni/Accessibilita' l'avvio rapido, riavvia, e vedrai che la bussola prende vita, segna il Nord correttamente, ma aime' il roll e' riportato sbagliato e quindi l'orientamento ha l'asse X invertito (se usi MarineCompass capisci al volo quello che ho scritto), ossia esattamente come la rom stok!

    credo che questo trucco funzioni per tutte le ROM basate sulla Stock, per la MIUI provero', ma gia' funziona basta solo mettere il modulo memsicd3416x della rom stock, almeno il Nord e' indicato correttamente, pazienza per l'orientamento.

    ora ho un altro pezzo su cui studiare: il contenuto del file accel_nvm
    senza questo file i valori letti con CPU-Z erano fissi
    roll era fisso a 0
    pitch era fisso -180
    azimuth ballerino intorno a 70

    Forza ragazzi! datemi una mano che qualcosa di buono sta uscendo!
    File allegati

  13. Il seguente Utente ha ringraziato becar per il post:

    exenzy (30-09-13)

Pagina 2 di 14 primaprima 123412 ... ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy