Visualizzazione stampabile
-
Quote:
Originariamente inviato da
stiwi78
Ciao ragazzi avete guardato il materiale? Il pad ha stesso processore e memoria, anche il display è simile con stessa risoluzione, wifi bgn. Qualcuno può comtrollare, magari ne salta fuori qualcosa di buono. Buona serata
Inviato dal mio SMARTPAD810C
Stiwi, di ROM binarie ne abbiamo parecchie, e sicuramente possono far comodo a i cuochi per recuperare apk e librerie alternative.
Pero' per compilare abbiamo bisogno di sorgenti di pad simili per ora abbiamo:
- AndyPad https://bitbucket.org/paulobrien/and...el_andypad/src
- Odys http://www.odys.de/downloads/softwar...SourceCode.zip
- Dropad https://github.com/Asure/Dropad-kernel-2.6.35.7
Portroppo nessuno dei tre utilizza lo stesso touchscreen del nostro... per cui scatenatevi nella ricerca di sorgenti!
-
Lo stò facendo, ma l'unica cosa che ho trovato è la rom, non vi serve proprio a niente?
Inviato dal mio SMARTPAD810C
-
Ciao non sò se è già stato postato
http://www.vogella.de/articles/Andro...e/article.html
Buon lavoro
Inviato dal mio SMARTPAD810C
-
Quote:
Originariamente inviato da
eldiau
- Devi aver fatto almeno il primo "repo sync" di una cyanogen o di una AOSP, puoi seguire la mia guida
https://www.androidiani.com/forum/me...emulatore.html in maniera da avere librerie e headers files di android piu' la famosa toolchain arm-eabi (il gcc e c per fare il cross compiling da pc ad arm)
- metti ~/android/system/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/ :
export PATH=$PATH:~/android/system/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/
per comodita' puoi metterlo nel bashrc
- poi ti prendi questo script perl
http://plausible.org/andy/agcc che non e' altro che una scorciatoia per settare i path agli include e librerie giuste e lo metti in ~/bin (dove da guida dovresti gia' avere una entry di path) e lo rendi eseguibile con
chmod +x ~/bin/agcc
- poi setti agcc come compilatore di default:
export CC=agcc
a questo punto esegui il make classico:
cd i2c-tools-3.0.3
make
Voilat! :)
ma in agcc devo modificare qualcosa?
mi esce l'errore
make
agcc -O2 -Wall -Wstrict-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wnested-externs -Winline -W -Wundef -Wmissing-prototypes -Iinclude -c tools/i2cdetect.c -o tools/i2cdetect.o
agcc -O2 -Wall -Wstrict-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wnested-externs -Winline -W -Wundef -Wmissing-prototypes -Iinclude -c tools/i2cbusses.c -o tools/i2cbusses.o
agcc -o tools/i2cdetect tools/i2cdetect.o tools/i2cbusses.o
/home/utente/Desktop/icecream/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/../lib/gcc/arm-eabi/4.4.3/../../../../arm-eabi/bin/ld: cannot find -lc
collect2: ld returned 1 exit status
make: *** [tools/i2cdetect] Error 1
-
Ho fatto due prove ma purtroppo con gli i2c-tools e i2cdetect non sono riuscito a cavare nulla perche' utilizzano l'interfaccia in /dev, e anche facendo gli special file giusti con mknod non ho risolto, probabilmente non e' compilata nel kernel...
Si becca qualcosa con evtest:
# evtest /dev/input/event2
Input driver version is 1.0.0
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0
Input device name: "ft5x0x-ts"
Supported events:
Event type 0 (Sync)
Event type 1 (Key)
Event code 59 (F1)
Event code 102 (Home)
Event code 158 (Back)
Event code 217 (Search)
Event type 3 (Absolute)
Event code 48 (?)
Value 0
Min 0
Max 200
Event code 50 (?)
Value 0
Min 0
Max 50
Event code 53 (?)
Value 0
Min 0
Max 800
Event code 54 (?)
Value 0
Min 0
Max 600
Event code 57 (?)
Value 0
Min 0
Max 4
-
che dire...............................cadono le braccia...
-
-
Quote:
Originariamente inviato da
pistoneone
Provo a scaricare
-
Quote:
Originariamente inviato da
simulatorhck
che dire...............................cadono le braccia...
... e, in pratica stiamo facendo un reverse enginering completo... non e' roba da poco, ci va tempo ma perseveriamo!
-
Quote:
Originariamente inviato da
simulatorhck
Provo a scaricare
Io l' ho già scaricata come si chiama il file che serve che te lo mando?
-
Quote:
Originariamente inviato da
pistoneone
Io l' ho già scaricata come si chiama il file che serve che te lo mando?
sorry, io non ho trovato traccia del focaltech:
[1005] diego@mother ~/Desktop/Kernel-2.6.35> grep -ri ft5x0x *
[1006] diego@mother ~/Desktop/Kernel-2.6.35>
-
Quote:
Originariamente inviato da
eldiau
sorry, io non ho trovato traccia del focaltech:
[1005] diego@mother ~/Desktop/Kernel-2.6.35> grep -ri ft5x0x *
[1006] diego@mother ~/Desktop/Kernel-2.6.35>
Scusa eldiau, ma se scarico dei sorgenti ho una serie di cartelle e file che compongono il kernel.
In quale cartella devo guardare se c'è questo benedetto file ... e il nome è ft5x0x o si chiama diversamente?
Grazie
Ciao
Pistoneone
-
Quote:
Originariamente inviato da
pistoneone
Scusa eldiau, ma se scarico dei sorgenti ho una serie di cartelle e file che compongono il kernel.
In quale cartella devo guardare se c'è questo benedetto file ... e il nome è ft5x0x o si chiama diversamente?
Grazie
Ciao
Pistoneone
non e' specificamente di un file che abbiamo bisogno ma di una serie di dati che solitamente stanno in ft5x0x arch/arm/ quindi devi cercare la stringa ft5x0x all'interno di tutti i file da quella cartella in giu in tutto l'albero su linux "grep -ri ft5x0x *"
-
Sai cosa pensavo? hai presente il problema del touchscreen quando il tablet è sotto carica? Non sarà mica un sensoredi carica che lavora sullo stesso bus del ts?
-
Questo e' quello che ho estrapolato sul bus i2c del nostro tablet...
Ci sono 4 bus:
rk29_i2c.0:
ADDR 001a -> RT5631 I2C Codec (scheda audio, immagino per controllo volume, cuffia ecc..)
ADDR 0051 -> rtc_hym8563 (orologio)
ADDR 001c -> gs_mma8452 (accelerometro)
rk29_i2c.1
ADDR 0039 IRQ: (RK29_PIN1_PD7) -> anx7150 (HDMI, per controllo)
ADDR 0036 -> nt99250 (telecamera, di nuovo per controllo)
rk29_i2c.2
ADDR 0038 IRQ 102 (RK29_PIN0_PA2) -> ft5x0x (il touchscreen focaltech ft5406)
ADDR 0055 -> Mistero chi lo trova vince una bambolina :)
rk29_i2c.3
VUOTO!
-
-
Ciao non sò se vi interessa, ma il display è un innolux HL08009 C25-XY. Magari così vi è più facile trovare i driver. Per il touch stò ancora cercando. Buona notte.
Inviato dal mio SMARTPAD810C
-
Quote:
Originariamente inviato da
stiwi78
Ciao non sò se vi interessa, ma il display è un innolux HL08009 C25-XY. Magari così vi è più facile trovare i driver. Per il touch stò ancora cercando. Buona notte.
Ciao stiwi78,
dove hai trovato questa informazione? Per lo schermo piu' o meno siamo a posto perche' il driver per HITACHI LVDS TX23D88VM funziona decentemente, basandomi sulla tua indicazione ho provato con il RGB_HL070VM4AU che sembrerebbe piu' vicino ma, mentre con il driver precedente lìimmagine era corretta con questo i colori sono sfasati...
Sta sera ho fatto finalmente qualche passo in avanti con il touch, ancora non va ma almeno riesco a farne il probe...
-
Quote:
Originariamente inviato da
eldiau
Ciao stiwi78,
dove hai trovato questa informazione? Per lo schermo piu' o meno siamo a posto perche' il driver per HITACHI LVDS TX23D88VM funziona decentemente, basandomi sulla tua indicazione ho provato con il RGB_HL070VM4AU che sembrerebbe piu' vicino ma, mentre con il driver precedente lìimmagine era corretta con questo i colori sono sfasati...
Sta sera ho fatto finalmente qualche passo in avanti con il touch, ancora non va ma almeno riesco a farne il probe...
Secondo internet è lo schermo dell'herotab ma è resistivo non capacitativo a meno che il pannello e il touch possono essere abbinati diversamente...
-
Sunto...Se non ho capito male
#ifdef CONFIG_TOUCHSCREEN_FOCALTECH
{
.type = "ft5x0x_ts",
/*.flags = ,*/
.addr = 0x38 ,/*ADDR 0038 IRQ 102*/
.irq = (RK29_PIN0_PA2),
},
#endif
O no?
-
L'ho aperto e mi sono segnato le sigle....il display è uguale per molti prodotti, poi ci cambiano il touch. Appena scopro ancora qualcosa vi faccio sapere. Ciao
Inviato dal mio SMARTPAD810C
-
Quote:
Originariamente inviato da
simulatorhck
Sunto...Se non ho capito male
#ifdef CONFIG_TOUCHSCREEN_FOCALTECH
{
.type = "ft5x0x_ts",
/*.flags = ,*/
.addr = 0x38 ,/*ADDR 0038 IRQ 102*/
.irq = (RK29_PIN0_PA2),
},
#endif
O no?
Si, la struct i2c_board_info e' giusta:
#if defined (CONFIG_TOUCHSCREEN_FT5406)
{
.type = "ft5x0x_ts",
.addr = 0x38, // 0x70 shiftato a destra di 1 bit 0x38 ---
.irq = RK29_PIN0_PA2,
.platform_data = &ft5x0x_info,
},
#endif
Ma ho modificato in giro varie cose, mi sa che devo mettere su un repo git.... sempre in arch/arm/mach-rk29/board-rk29-ddr3sdk.c
#if defined (CONFIG_TOUCHSCREEN_FT5406)
static int ft5x0x_info_init_platform_hw(void)
{
printk("[ELDIAU] board-rk29-ddr3sdk.c: ft5x0x_info_init_platform_hw\n");
return 0;
}
struct ft5x0x_platform_data ft5x0x_info = {
.model= 1003,
.init_platform_hw = ft5x0x_info_init_platform_hw,
};
#endif
la struct ft5x0x_platform_data, serve a far puntare il .init_platform_hw alla funzione ft5x0x_info_init_platform_hw().
La funzione ft5x0x_info_init_platform_hw() come vedi e' solo uno "stub" ma e' necessaria per ritornare 0 (no error) e fare in modo che il kernel chiami la funzione ft5406_probe() in drivers/input/touchscreen/ft5406_ts.c
ft5406_probe() poi pero' si ferma alla primo tentativo di parlare con il FocalTech attraverso la chiamata a ft5406_set_regs(), ci prova 5 volte e riceve semrpe errore
ft5406_set_regs() non fa altro che chiamare a sua volta i2c_master_reg8_send() passandogli FT5X0X_REG_PMODE che dovrebbe settare il modo opoerativo del controller.
Il problema e' che il chip non risponde! Gli si deve mandare un comado di accensione, questo comando va inserito in ft5x0x_info_init_platform_hw() prima del return 0!
da datasheet pagina 4 : "WAKE: an interrupt signal for the host to change F5x06 from Hibernate to Active mode" questo segnale e' sul pin 46 del FocalTech, quindi, visto che viene dato come I input External interrupt from the host, deduco che prima di parlare con il dhip vada alzata questa linea ed eventualmente abbassata quando il tablet va in sleep.
Il ping 46 del FocalTech sara collegato a qualche pin GPIO dell'RK2918, ma quale??? Sono confidente che se troviamo quale pin RK e collegato al al 45 FT risolviamo....
-
Quote:
Originariamente inviato da
stiwi78
L'ho aperto e mi sono segnato le sigle....il display è uguale per molti prodotti, poi ci cambiano il touch. Appena scopro ancora qualcosa vi faccio sapere. Ciao
Inviato dal mio SMARTPAD810C
Lo hai aperto? :D Ottimo! Vedi il chip Focaltech? E' possibile seguire la linea del pin 46 e vedere dove va?
-
Ciao sono arrivato a casa ora, dammi la sigla che lunedì lo dovrei riaprire e ti dico, se riesco, dove va a collegarsi il pin 46. È un pò complicato su un doppia faccia,forse tripla faccia, ma ci provo. Buona notte
Inviato dal mio SMARTPAD810C
-
Quote:
Originariamente inviato da
stiwi78
Ciao sono arrivato a casa ora, dammi la sigla che lunedì lo dovrei riaprire e ti dico, se riesco, dove va a collegarsi il pin 46. È un pò complicato su un doppia faccia,forse tripla faccia, ma ci provo. Buona notte
Inviato dal mio SMARTPAD810C
Immagino che seguire le piste sia quasi impossibile! In piu' il RockChip ha diverse centinaia di PIN piuttosto densi, ma magari sulla linea si trova qualche sigla stampata sulla board che puo' aiutare... se riesci anche a fare qualche foto...
Tutti questi dati li ho estrapolati dai manuali e via test software:
In pratica il controller del del touch e' un FocalTech FT5406 (FT5406EE8), dovrebbe avere 5 linee che lo collegano al RK2918:
- 2 sono il bus I2C numero 2, il terzo dei 4 presenti sul rockchip PIN (o piu' precisamente BALL) B8 e D9 come da datasheet del RK2918
- 1 e' l'IRQ Output che parte dal PIN 47 dell' FT5406 e va al PIN A2 come da datasheet del RK2918
- 1 e' il RST che parte dal PIN 45 dell' FT5406 e vorrei sapere dove va sul RK2918
- 1 e' WAKE che parte dal PIN 46 dell' FT5406 questo mi interessa meno ma se trovi dove va!
Sono convinto che per "accendere" il chip devo tirare su (e mantenere su) la linea RST, infatti sul manuale dice "RST: an external low signal reset the chip", sono anche convinto che questa linea arrivi ad un pin GPIO del RockChip, ma non so quale e ce ne sono 7 gruppi da 32 = 224 !
Se ti servissero i datasheet li ho messi qui: Multiupload.com - upload your files to multiple file hosting sites!
-
Non è possibile testare questa cosa in maniera diversa cioè creare uno script che eseguito da terminale invii questo impulso porta per porta per studiare l'effetto?
-
Ciao ho trovato il nodtro tablet siglato pmp5080b della prestigio. Sembra che quello supporti l'host usb, che se non erro il nostro non fa. E sembra messo meglio a firmware. Spero di essere stato utile. Il chip del touch l'ho visto ed è installato direttamente sul flat cable del touch che se non ricordo male ha solo quattro pin che si collegano alla scheda madre. La.sigla sul cavo è 3g-25638 MCFA-080-0214-V2.0 . A me com queste sigle non ha trovato nulla, magari a voi va meglio. Oppure ho sbagliato cavo.... Fatemi sapere. Comunque domani ricontrollo.
Inviato dal mio SMARTPAD810C
-
Ciao eldiau...
Ma se si riesce a compilare sto benedetto kernel... si può mettere anche la funzione per smontare le chiavette usb vero?
-
facendo un grep sul tablet con firmware funzionante si fa riferimento a /drivers/videork29_backlight/backlight/rk29_backlight.c con le specifiche rk29_bl_suspend e rk_29_bl_resume....
-
E se vi interessa sapere chi ha sviluppato per la focaltech il driver in questione....
Google Traduttore
-
azz ho confuso con la restroilluminazione :P
-
Quote:
Originariamente inviato da
stiwi78
Ciao ho trovato il nodtro tablet siglato pmp5080b della prestigio. Sembra che quello supporti l'host usb, che se non erro il nostro non fa. E sembra messo meglio a firmware. Spero di essere stato utile. Il chip del touch l'ho visto ed è installato direttamente sul flat cable del touch che se non ricordo male ha solo quattro pin che si collegano alla scheda madre. La.sigla sul cavo è 3g-25638 MCFA-080-0214-V2.0 . A me com queste sigle non ha trovato nulla, magari a voi va meglio. Oppure ho sbagliato cavo.... Fatemi sapere. Comunque domani ricontrollo.
Si ho visto questo Review Prestigio MultiPad PMP5080B Tablet/MID - Notebookcheck.net Reviews
ma se non erro ce ne stava un altro simile al nostro, descritto da un altro user del forum. Ammesso di riuscire atrovare il fw di uno di questi si potrebbe anche flashare sul nostro?
-
Era sempre uguale ma cambiava la sigla, quello montava lo stesso fw, probabilmente.era solo un test come.dispositivo.questo, da quel poco che si vede in giro ha un fw diverso esteticamente. Poi come hw sono identici. Costa di più ma nella confezione è compresa la borsa in pelle per il trasporto. Quindi secondo me ad avere quel fw non ci sono problemi a.flashare il mediacom. Comunque secondo me in mediacom hanno i sorgenti e i driver, altrimenti anche loro si troverebbero nella nostra.stessa.situazione e non lo reputo possibile. Daniele potrebbe essere così gentile di passarci qualche info....ciao a tutti e buona domenica.
Inviato dal mio SMARTPAD810C
-
Quote:
Originariamente inviato da granny66
Quote:
Originariamente inviato da stiwi78
Ciao ho trovato il nodtro tablet siglato pmp5080b della prestigio. Sembra che quello supporti l'host usb, che se non erro il nostro non fa. E sembra messo meglio a firmware. Spero di essere stato utile. Il chip del touch l'ho visto ed è installato direttamente sul flat cable del touch che se non ricordo male ha solo quattro pin che si collegano alla scheda madre. La.sigla sul cavo è 3g-25638 MCFA-080-0214-V2.0 . A me com queste sigle non ha trovato nulla, magari a voi va meglio. Oppure ho sbagliato cavo.... Fatemi sapere. Comunque domani ricontrollo.
Si ho visto questo
Review Prestigio MultiPad PMP5080B Tablet/MID - Notebookcheck.net Reviews
ma se non erro ce ne stava un altro simile al nostro, descritto da un altro user del forum. Ammesso di riuscire atrovare il fw di uno di questi si potrebbe anche flashare sul nostro?
La sigla del flat inizia com MCF-, e non con MCFA....è stato un mio errore. Scusate
Inviato dal mio SMARTPAD810C
-
Aggiornamento:
Sono riuscito a forza di prove ad "accendere" il controller del touch e ad ottenere degli IRQ ma ancora non funziona, c'e' decisamente qualcosa che non va nel driver...
I PIN in questione sono RK29_PIN6_PA6 e RK29_PIN0_PA2
Per chi fosse curioso la sequenza per accendere il touch sembra questa:
#define TOUCH_RESET_PIN RK29_PIN6_PA6 //198; // Reset pin
printk("[ELDIAU] ft5406_ts.c: trying to power-up on PIN %d\n", TOUCH_RESET_PIN);
gpio_request(TOUCH_RESET_PIN, "ft5406 power-up");
gpio_direction_output(TOUCH_RESET_PIN,1);
gpio_set_value(TOUCH_RESET_PIN, 1);
msleep(300);
gpio_free(TOUCH_RESET_PIN);
#define TOUCH_INT_PIN RK29_PIN0_PA2
printk("[ELDIAU] ft5406_ts.c: trying to reset on PIN %d\n", TOUCH_INT_PIN);
gpio_request(RK29_PIN0_PA2, "ft5406 wake-up");
gpio_direction_output(RK29_PIN0_PA2,0);
gpio_set_value(RK29_PIN0_PA2, 0);
msleep(100);
gpio_set_value(RK29_PIN0_PA2, 1);
msleep(100);
gpio_free(RK29_PIN0_PA2);
msleep(350);
I pratica si alza RK29_PIN6_PA6 e poi si alza e abbassa RK29_PIN0_PA2, fatto questo riesco a leggere e scrivere i registri del controller e a ricevere degli IRQ, pero' non riesco a comunicare dati in i2c... esternamente il tab fa il boot ma i 4 tasti rimangono fissi illuminati.
Speravo che risolto questo problema il driver girasse liscio ma a quanto pare l'intero driver va revisionato, purtroppo mi muovo ad occhi chiusi e non ho dati precisi per fare prove con una certa sicurezza... insomma il lavoro e' ancora lungo e faticoso e sono tentato di mettere in pausa in attesa di qualche notizia buona da Mediacom sui sorgenti ufficiali!
-
Quote:
Originariamente inviato da
eldiau
Aggiornamento:
Sono riuscito a forza di prove ad "accendere" il controller del touch e ad ottenere degli IRQ ma ancora non funziona, c'e' decisamente qualcosa che non va nel driver...
I PIN in questione sono RK29_PIN6_PA6 e RK29_PIN0_PA2
Per chi fosse curioso la sequenza per accendere il touch sembra questa:
#define TOUCH_RESET_PIN RK29_PIN6_PA6 //198; // Reset pin
printk("[ELDIAU] ft5406_ts.c: trying to power-up on PIN %d\n", TOUCH_RESET_PIN);
gpio_request(TOUCH_RESET_PIN, "ft5406 power-up");
gpio_direction_output(TOUCH_RESET_PIN,1);
gpio_set_value(TOUCH_RESET_PIN, 1);
msleep(300);
gpio_free(TOUCH_RESET_PIN);
#define TOUCH_INT_PIN RK29_PIN0_PA2
printk("[ELDIAU] ft5406_ts.c: trying to reset on PIN %d\n", TOUCH_INT_PIN);
gpio_request(RK29_PIN0_PA2, "ft5406 wake-up");
gpio_direction_output(RK29_PIN0_PA2,0);
gpio_set_value(RK29_PIN0_PA2, 0);
msleep(100);
gpio_set_value(RK29_PIN0_PA2, 1);
msleep(100);
gpio_free(RK29_PIN0_PA2);
msleep(350);
I pratica si alza RK29_PIN6_PA6 e poi si alza e abbassa RK29_PIN0_PA2, fatto questo riesco a leggere e scrivere i registri del controller e a ricevere degli IRQ, pero' non riesco a comunicare dati in i2c... esternamente il tab fa il boot ma i 4 tasti rimangono fissi illuminati.
Speravo che risolto questo problema il driver girasse liscio ma a quanto pare l'intero driver va revisionato, purtroppo mi muovo ad occhi chiusi e non ho dati precisi per fare prove con una certa sicurezza... insomma il lavoro e' ancora lungo e faticoso e sono tentato di mettere in pausa in attesa di qualche notizia buona da Mediacom sui sorgenti ufficiali!
Io mi son fermato perchè non sono cosi avanti...ma fammi capire..si accendono i 4 pulsanti a dx dello schermo? Non è che l'irq legge in maniera errata i dati dai 4 pulsanti e non dal touchscreen?
-
Quote:
Originariamente inviato da
simulatorhck
Io mi son fermato perchè non sono cosi avanti...ma fammi capire..si accendono i 4 pulsanti a dx dello schermo? Non è che l'irq legge in maniera errata i dati dai 4 pulsanti e non dal touchscreen?
I 4 pulsanti e il touch sono gestiti entrambe dal FocalTech, in pratica i pulsanti sono casi particolari di "eventi" touch
-
Quote:
Originariamente inviato da
eldiau
I 4 pulsanti e il touch sono gestiti entrambe dal FocalTech, in pratica i pulsanti sono casi particolari di "eventi" touch
Ma quindi hai un flusso di dati in uscita dal touch o no?
-
Quote:
Originariamente inviato da
simulatorhck
Ma quindi hai un flusso di dati in uscita dal touch o no?
Leggo il contenuto dei registri, per esempio, dal dmseg:
<4>[ 1.640382] [ELDIAU] ft5406_ts.c: trying to reset on PIN 2
<4>[ 2.220376] [ELDIAU] ft5406_ts.c: ft5406_set_regs
<6>[ 2.520777] input: ft5x0x_ts as /devices/virtual/input/input1
<4>[ 2.730364] [ELDIAU] ft5406_ts.c: fts_register_read
<4>[ 2.735803] [ELDIAU] ft5406_ts.c: i2c_write_interface
<4>[ 3.540453] [ELDIAU] ft5406_ts.c: i2c_read_interface
<4>[ 3.740451] [TSP] firmware version = 0xe2
<4>[ 3.745731] [ELDIAU] ft5406_ts.c: fts_register_read
<4>[ 3.751022] [ELDIAU] ft5406_ts.c: i2c_write_interface
<4>[ 4.560432] [ELDIAU] ft5406_ts.c: i2c_read_interface
<4>[ 4.760451] [TSP]firmware report rate = 2260Hz
<4>[ 4.765677] [ELDIAU] ft5406_ts.c: fts_register_read
<4>[ 4.770858] [ELDIAU] ft5406_ts.c: i2c_write_interface
<4>[ 5.580438] [ELDIAU] ft5406_ts.c: i2c_read_interface
<4>[ 5.780428] [TSP]firmware threshold = 904
Quei dati (firmware version, firmware report rate = 2260Hz, firmware threshold = 904) sono letti da:
fts_register_read(FT5X0X_REG_FIRMID, ®_version,1);
printk("[TSP] firmware version = 0x%2x\n", reg_version);
fts_register_read(FT5X0X_REG_REPORT_RATE, ®_value,1);
printk("[TSP]firmware report rate = %dHz\n", reg_value*10);
fts_register_read(FT5X0X_REG_THRES, ®_value,1);
printk("[TSP]firmware threshold = %d\n", reg_value * 4);
fts_register_read(FT5X0X_REG_NOISE_MODE, ®_value,1);
printk("[TSP]nosie mode = 0x%2x\n", reg_value);
la funzione fts_register_read() chiama i2c_write_interface() per mandare via i2c la richiesta di restituire il contenuto di un registro al chip e i2c_read_interface() per leggere il risultato spedito indietro dal chip, come vedi riesco a parlare con il chip correttamente...
Purtroppo pero' c'e' qualcosa che poi blocca la comunicazione per cui successivi accessi mi danno
<3>[ 6.804985] rk29_i2c rk29_i2c.2: i2c transfer err, client address is 0x38 [20110106]
<3>[ 6.809431] ft5x0x_ts 2-0038: ft5406_read_regs fail:-22!
Solo che di questo passo si finisce per dover riscrivere l'intero driver...
-
Scusate, magari mi sbaglio! ma non si potrebbe ampliare il kernel gia esistente sfruttando quello che avete già appreso?. Per esempio se non ho capito male parlate dei 4 tasti touch che si trovano sul lato destro del pannello messo in posizione orizzontale. Se si potesse attribuire un conto alla rovescia sull' illuminazione del touch si potrebbe risolvere il problema inerente la ricerca dei tasti "impossibile" nelle fasce orarie meno illuminate!.... Adesso capisco che sicuramente rischio la lapidazione peró una novità del genere è veramente ottima per chi usa il tab per leggere di notte :).. Con questo dico solo che potreste indicarci cosa modificare, per la ricerca e applicazione ci pensiamo noi ... Come sempre buon lavoro..
Inviato da qualsiasi aggeggio avendo Android OS Androidiani App
Inviato da qualsiasi aggeggio avendo Android OS Androidiani App