Altro forum che tratta rockchip 2918.
Ci sono alcuni modelli di tablet che implementano il bluetooth...
Visualizzazione stampabile
Altro forum che tratta rockchip 2918.
Ci sono alcuni modelli di tablet che implementano il bluetooth...
Ho provato a fare insmod di bluetooth.ko btusb.ko e l2cap.ko (rfcomm.ko mi freeza il tablet) e li carica (verificato con lsmod).
nel dmesg:
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP ver 2.14
Bluetooth: L2CAP socket layer initialized
Bluetooth: Generic Bluetooth USB driver ver 0.6
usbcore: registered new interface driver btusb
ma non accade nulla. Anzi non si accende nemmeno il led del dongle bluetooth (SITECOM). Secondo me c'è qualcosa sull USB OTG che non "riconosce" come dispositivo BT ma lo considera come una memoria e cerca in qualche modo di montarla ma non riesce...
Aggiornamenti...Stamattina mi alzo contento, scarico le emails e zac...risposta da quell'azienda estera che distribuisce il clone del nostro tab cui chiedevo la possibilità di avere quanto meno i sorgenti kernel.....risposta secca e concisa "No, it's not possible".
BAH....
stessa risposta che ho ricevuto da mediacom (gli ho pure menzionato che stanno violando una licenza)... mentre attendo risposta da quelli del prestigio...
e se contattassimo la FSF? D'altronde è obbligatorio rilasciare i sorgenti modificati del kernel
ragazzi ho un'idea: perchè qualcuno che abbia + tempo non crea una discussione con indirizzi mail e un bel messaggio da inviare e invitiamo tutti gli utenti del forum a inviare tali mail!
può darsi che non accada nulla ma se la mail è ben scritta potrebbe avere successo...
in pratica nel testo si potrebbe enunciare l'obbligatorietà del rilascio dei sorgenti modificati, se esiste una legge menzionarla, e richiedere che tali sorgenti siano messi a disposizione!
magari se arrivano decine di mail al giorno......
vedete questo esempio
HTC pressata affinchè rilasci il codice sorgente del kernel dei suoi dispositivi - Tutto Android
ed eco il risultato
HTC rilascia i sorgenti del kernel di 6 recenti smartphone - Tutto Android
Al momento non ho la toolchain ma qualcuno riuscirebbe a compilare i moduli per il client nfs? In quel modo sarebbe comodissimo l'utilizzo come media center prendendo direttamente dal nas, ed é più performante rispetto a samba ;-)
A questo link c'è una interessantissima discussione su come abilitare il bluetooth, bluetooth GPS e attivare l'hub USB, ma ci vuole Eldiau :(
FVIEW 7" PRO tablet Rooting and FW discussion - SlateDroid.com - Page 3
Sono dei geni ... riescono anche ad abilitare gli hub! Non dovrebbe esser difficile da implementare... dovrò decidermi ad installare questa benedetta toolchain :-)
ho ricevuto risposta da quelli del prestigio... almeno non mi hanno sbattuto la porta totalmente in faccia e lasciano uno spiraglio di speranza...
Io: "Good evening, I'm really interested in this tablet pc but I'd like to know if you're going to release kernel sources (according to GPL). This is crucial to me (and many other people I guess). Kind regards."
Prestigio: "Dear XXX XXX. In the future but right now it is not planned."
allora ho scoperto il perchè del permission denied di hcitool/hciconfig... bisogna metterlo sotto /system (io faccio tutto da adbwireless)
mount -o remount,rw /dev/block/mtdblock8 /system
busybox cp hciconfig /system/xbin
# hciconfig
hci0: Type: USB
BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:0 acl:0 sco:0 events:0 errors:0
TX bytes:0 acl:0 sco:0 commands:0 errors:0
ho caricato i moduli tranne rfcomm.ko che mi freeza il tab...
# bluetoothd -n -d
bluetoothd[609]: Bluetooth deamon 4.69
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() parsing main.conf
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() discovto=120
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() pairto=0
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() pageto=8192
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() name=%m
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() class=0x40020C
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() discov_interval=0
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() deviceid=android:generic:1.5
bluetoothd[609]: external/bluetooth/bluez/src/main.c:parse_config() default_link_policy=7
bluetoothd[609]: Starting SDP server
bluetoothd[609]: opening L2CAP socket: Operation not permitted
bluetoothd[609]: Server initialization failed
bluetoothd[609]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading builtin plugins
bluetoothd[609]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading hciops plugin
bluetoothd[609]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading plugins /system/lib/bluez-plugin
bluetoothd[609]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading input plugin
bluetoothd[609]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading audio plugin
bluetoothd[609]: Can't open HCI socket: Operation not permitted (1)
bluetoothd[609]: adapter_ops_setup failed
nelle mailing list di google leggo che consigliano di compilare il kernel rimuovendo "ANDROID_PARANOID_NETWORK"... quindi finchè non ci si riesce mi sa niente bt
altrimenti il tutto andrebbe eseguito con i permessi dell'user bluetooth:
hcid però si incacchia per la mancanza di libhcid.so :/Quote:
hciattach & hcid should be running as user "bluetooth" with both of them in group bluetooth & net_bt_admin.
If you are in development....
just remove the ANDROID_PARANOID_NETWORK option from your kernel.
e questo serve.. come vedo da log in rete, crea i socket del bluetooth
1002 è l'uid che mi da "whoami" se mi loggo con "su bluetooth", quei socket a noi mancanoQuote:
<5>[34271.959230] init: starting 'hcid'
<6>[34271.963093] init: Created socket '/dev/socket/dbus_bluetooth' with mode '660', user '1002', group '1002'
<6>[34271.964670] init: Created socket '/dev/socket/bluetooth' with mode '660', user '1002', group '1002'
qualcuno riesce a trovare quella libreria (o in qualche modo compilarla) per il nostro tab?
perchè a quel punto si dovrebbe provare ad avviare hcid e poi hciconfig dovrebbe dare il dispositivo "up" e poi almeno da console dovrebbe funzionare
Ciao,
nelle pagine precedenti di questo post, il caro Eldiau ha postato un boot.zip che carica tutti i moduli necessari, compresi rfcomm all'avvio del sistema. Ini questo modo rfcomm non freeza il tab e viene caricato correttamente...
inoltre, non soi se hai già visto quì:
Kernel discussion for FVIEW 7" PRO & Lanyu 910 tablets - SlateDroid.com - Page 2
per me è arabo... ma per te magari potrebbe esserti di aiuto...
;)
grazie per quello che stai facendo, per noi comuni "Linux-Ignorant"
avevo visto si ma ho anche visto che solitamente usano solo bluetooth.ko e btusb.ko (l2cap e rfcomm non li menzionano mai), l'unica prova che volevo fare era di avviare hcid e poi vedere se con hcitool si riesce a fare uno scan, ecc... ma per l'hcid che ho trovato su androidobex manca la libreria libhcid.so (non ho hcid e la libreria manco sul mio lg p500, sigh!)
avevo provato "hciconfig hci0 up" ma freezava il tab :/ se qualcuno con gli altri moduli può provare e mi dice se la periferica risulta attiva (up) da "hciconfig hci0"
a questa discussione(che ho già postato in precedenza), viene postato uno zip che contiene tutti gli eseguibili oltre ai moduli e alle librerie...
FVIEW 7" PRO tablet Rooting and FW discussion - SlateDroid.com - Page 3
link diretto allo zippone:
http://www.slatedroid.com/index.php?...attach_id=3348
Ciao,
ancora questa settimana saro' abbastanza assente per cui non vi posso aiutare piu' di tanto...
I due moduli l2cap e rfcomm sono assolutamente necessari, purtroppo l2cap freeza il kernel se caricato a boot avvenuto, entra se inserito all'inizio del boot ma poi da' comuque un kernel oops; ho il sospetto che sia dovuto a qualche differenza di .config fra quello che ho creato io e il kernel della mediacom oppure il differente compilatore utilizzato, se vuoi fare due test ho pubblicato l'intero kernel con le mie modifiche e il .config su github https://github.com/eldiau/android-ke...ediacom-mp810c io ho compilato utilizzando la toolchain linaro piu' nuova (mi pare 4.0, ora non posso verificare) inclusa con CM7 potrebbe aver senso provare a compilare i due moduli utilizzando versioni diverse, sul sito di linaro ne trovi parecchie gia' pronte...
Per quanto riguarda libhcid.so e vari to consiglio di scompattare la system.img del mio porting CM7, dovresti trovare tutto quello che ti serve...
A presto.
questo weekend faccio un paio di prove, anche con lo zippone postato da yatto (che comprende anche il modulo pl2303 che funziona con gran parte dei gps usb, ma non ne ho alcuno... l'unico modo in cui potrei provare il gps è tramite bluetooth, mi sembra ci siano app per condividere il gps del mio smartphone).
quello che mi lascia basito dei file contenuti nello zip è il fatto che come modulo bluetooth c'è solo btusb.ko (ed un fixmod.ko che non ho idea cosa sia, qualcosa fatto dall'utente del forum mi sa)... proverò anche con quei files la e vediamo, già farlo funzionare da shell sarebbe buona cosa
edit: il btusb.ko dell'fview non va, si lamenta che mancano dei simboli relativi a varie chiamate hci_* :/
codice:<4>[14807.601014] btusb: Unknown symbol hci_free_dev
<4>[14807.607181] btusb: Unknown symbol hci_alloc_dev
<4>[14807.610411] btusb: Unknown symbol hci_unregister_dev
<4>[14807.615263] btusb: Unknown symbol hci_recv_fragment
<4>[14807.619108] btusb: Unknown symbol hci_register_dev
ho anche scompattato la sys della cm7 ma della libreria non c'è traccia, mi sa che si deve intervenire in un altro modo e non con hcid (forse lo si faceva pre-froyo)
ieri sera ho scaricato la toolchain Sourcery_G++_lite (la consiglia anche cyano qualora si volesse solo compilare il kernel) ed ho giocato un po' col bluetooth... sinceramente non capisco perchè non vada, sul pc con gli stessi moduli la chiavetta viene inizializzata... qui sul pad ci son dei problemi con l'hci (ho abilitato hci_usb) che non comunica bene infatti non si vede manco il mac address della scheda e se si prova un hciconfig hci0 up si reboota il sistema...
per risollevare il morale ho compilato i moduli per ext4, in modo da poter usare /system /data e /cache in ext4 senza journal (il cui autore ritiene sia più performante rispetto ad ext2)... è andato bene, adesso avrei bisogno di un cuoco che provi una cosa per me però... qui un estratto di quello da me fatto:
mi serve l'aiuto di un cuoco (non riesco ad aprire boot.img per modificarla!)... praticamente dovremmo:codice:# insmod jbd2.ko
# insmod ext4.ko
# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev devtmpfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev inotifyfs
nodev devpts
ext3
cramfs
nodev ramfs
vfat
nodev fuse
fuseblk
nodev fusectl
yaffs
yaffs2
ext4
# busybox umount /dev/block/mtdblock5
# mke2fs -t ext4 -O ^has_journal,^huge_file -m 0 /dev/block/mtdblock5
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
29760 inodes, 118784 blocks
0 blocks (0.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
15 block groups
8192 blocks per group, 8192 fragments per group
1984 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
# tune2fs -c0 -i0 /dev/block/mtdblock5
tune2fs 1.40.8 (13-Mar-2008)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
# mount -t ext4 -o nosuid,nodev,noatime,nodiratime /dev/block/mtdblock5 /cache
# mount
[...]
/dev/block/mtdblock5 /cache ext4 rw,nosuid,nodev,noatime,nodiratime,barrier=1,data=writeback 0 0
- copiare nella root (dove c'è un altro modulo, rk29xxnand_ko.ko) i due moduli jbd2.ko e ext4.ko
- modificare init.rc, e qui bisogna studiarsi un modo per far formattare al primo avvio le due partizioni in ext4, io pensavo che si potesse creare un file dentro system chiamato ".firstboot", lo script controlla se esiste questo file, formatta le partizioni e lo elimina (così verrebbe avviato solo la prima volta)... ma l'init di android supporta un "if" tipo bash? if [ -e /system/.firstboot] ecc ecc? o bisogna creare un servizio che faccia quei controlli e formatti (ma io non conosco il c) tipo questo: Enea Android Blog: The init process and init.rc?
edit: io proverei una cosa del genere:
modificare questa parte di init.rc
inserire in system il file format.sh (con permessi di esecuzione, quindi 755)codice:on fs
insmod /rk29xxnand_ko.ko
insmod /jbd2.ko
insmod /ext4.ko
mount ext4 mtd@system /system ro noatime nodiratime
/bin/system/format.sh
mount ext4 mtd@userdata /data nosuid nodev noatime nodiratime
mount ext4 mtd@cache /cache nosuid nodev noatime nodiratime
codice:#!/system/bin/busybox sh
if [ -e /system/.firstboot]
/system/bin/mke2fs -t ext4 -O ^has_journal,^huge_file -m 0 -q /dev/block/mtdblock5
/system/bin/mke2fs -t ext4 -O ^has_journal,^huge_file -m 0 -q /dev/block/mtdblock6
/system/bin/tune2fs -c0 -i0 /dev/block/mtdblock5
/system/bin/tune2fs -c0 -i0 /dev/block/mtdblock6
/system/bin/busybox rm /system/.firstboot
fi
IMHO dovrebbe funzionare
Qui trovate i due moduli necessari... spero qualcuno dei cuochi possa provarlo, ci sarebbe un boost prestazionale ed anche un minor sfruttamento della flash ;)
son riuscito a metter solo /system in ext4, le altre partizioni non son riuscito in nessun modo, peccato.. comunque le monto ugualmente in ext4 visto che stando ai bench c'è comunque qualche guadagno prestazionale (certo mettere una ext4 nativa senza journal sarebbe stata un'altra cosa... ci vorrebbe una custom recovery per effettuare le operazioni)
se qualcuno volesse usarlo basta cambiare init.rc così:
e creare la system con i comandi scritti sopracodice:on fs
insmod /rk29xxnand_ko.ko
insmod /jbd2.ko
insmod /ext4.ko
# mount mtd partitions
mount ext4 mtd@system /system ro noatime nodiratime data=writeback nobh
mount ext4 mtd@userdata /data nosuid nodev noatime nodiratime
mount ext4 mtd@cache /cache nosuid nodev noatime nodiratime
si ma devono esser smontate, e non lo lascia fare perchè ci sono applicazioni di sistema che ci girano sopra... se provi con un "kill -9 `fuser -m /data`" il sistema si reboota perchè si killa anche dalvik :( (si può convertire cache, ma è una partizione quasi inutile)
ho fatto dei progressi col bluetooth, ho sostituito parte dei sorgenti del kernel rk29xx relativi al bluetooth con quelli del kernel 2.6.32.27 vanilla e questo è il risultato:
# insmod bluetooth.ko
# insmod btusb.ko
# insmod l2cap.ko
# insmod rfcomm.ko
# insmod bnep.ko
# insmod sco.ko
# busybox chmod 777 /sys/class/rfkill/rfkill0/*
# start bluetoothd
# hciconfig -a
hci0: Type: USB
BD Address: 00:02:72:B3:12:62 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING
RX bytes:395 acl:0 sco:0 events:18 errors:0
TX bytes:67 acl:0 sco:0 commands:17 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy:
Link mode: SLAVE ACCEPT
Can't read local name on hci0: Connection timed out (110)
# hcitool scan
Scanning ...
5C:17:D3:15:5E:B0 n/a
# hcitool inq 5c:17:D3:15:5E:BQ
Inquiring ...
5C:17:D3:15:5E:B0 clock offset: 0x62c4 class: 0x5a020c
# l2ping 5C:17:D3:15:5E:B0
Ping: 5C:17:D3:15:5E:B0 from 00:02:72:B3:12:62 (data size 44) ...
0 bytes from 5C:17:D3:15:5E:B0 id 0 time 44.30ms
0 bytes from 5C:17:D3:15:5E:B0 id 1 time 37.33ms
0 bytes from 5C:17:D3:15:5E:B0 id 2 time 41.11ms
0 bytes from 5C:17:D3:15:5E:B0 id 3 time 39.85ms
0 bytes from 5C:17:D3:15:5E:B0 id 4 time 38.63ms
0 bytes from 5C:17:D3:15:5E:B0 id 5 time 33.61ms
0 bytes from 5C:17:D3:15:5E:B0 id 6 time 38.64ms
0 bytes from 5C:17:D3:15:5E:B0 id 7 time 33.63ms
0 bytes from 5C:17:D3:15:5E:B0 id 8 time 39.89ms
0 bytes from 5C:17:D3:15:5E:B0 id 9 time 34.85ms
0 bytes from 5C:17:D3:15:5E:B0 id 10 time 37.41ms
0 bytes from 5C:17:D3:15:5E:B0 id 11 time 37.38ms
0 bytes from 5C:17:D3:15:5E:B0 id 12 time 39.90ms
^C13 sent, 13 received, 0% loss
# rfcomm connect 0 5C:17:D3:15:5E:B0
Can't connect RFCOMM socket: Connection refused
(non ho risposto alla richiesta del pin sul telefono, appena aver premuto invio era arrivata la richiesta del pin)
adesso qualcuno riesce ad aprire il settaggio bluetooth nelle impostazioni?
questi sono i files: Multiupload.com - upload your files to multiple file hosting sites!
i vari comandi hci* li trovate nello zip presente sul thread postato da yatto poco sopra...
Forse dovresti "trovare" un bluetooth.apk ...
Oppure, prova a scricare dal market un programma che serve per trasferire file attraverso il bluetoot, e vedi se funziona... Per Accenderlo e spegnerlo potresti provare quick settings, sempre scaricavile dal market...
Cmq : BRAVO !
;)
Per il discorso, delle partizioni, invece, penso che sia arrivato il momento di capire come far andrae in recovery il tablet, e soprattutto come "modificare" la recovery per fare quello che vogliamo... ma su rk2918 non riesco a trovare nulla...
:(
ho provato ma non lo accende, sarà da modificare il boot inserendo nel file .rc i permessi giusti come presenti anche in quello zip dell'fview... cmq mi fermo qui adesso fino al prox w-end non ho tempo per le prove :(
se qualcuno riesce ad andare avanti...
6 un grande... :)
quali sono i permessi da dare ? così provo a modificare il boot ?
cambia ueventd.rk29board.rc mettendo:
poi carichi a mano i moduli, inserisci la chiavetta e vedi se funziona l'attivazione (io ho scaricato blueetooth gps provider e mi faceva accedere)codice:/dev/galcore 0666 system graphics
/dev/video0 0660 system camera
/dev/video1 0660 system camera
/dev/video2 0660 system camera
/dev/pmem_cam 0660 system camera
/dev/vpu 0660 system system
/dev/vpu_mem 0666 system system
# for Sensor HAL
/dev/akm8973 0660 system system
/dev/accelerometer 0660 system system
# for GPS
#/dev/ttyS3 0600 gps gps
# for BT
/dev/vflash 0660 bluetooth bluetooth
/dev/ttyS0 0660 bluetooth bluetooth
/dev/ttyS2 0660 bluetooth bluetooth
# for radio
/dev/ttyUSB* 0660 radio radio
/dev/rfcomm* 0664 radio radio
/sys/class/rfkill/rfkill* 0666 radio radio
Ciao, ho provato la procedura da te descritta, il risultato è: "dwc_otg_hcd_qh_init tt->hub null!" e "unable to enumerate USB device on port 1". per il resto tutti i moduli sono inizializzati correttamente. provando con il programma che hai usato tu fallimento totale, non riesco nemmeno ad accedervi, dato che ha bisogno del bluetooth attivo e da impostazioni bluetooth non riesco ad attivarlo comunque...
Salve ragazzi,
anche io ho acquistato il tablet.
Sono pronto a darvi una mano, sono uno sviluppatore android (ho realizzato diverse rom per smartphone) e un firmware engeenering per sistemi linux embedded (lavoro)
Mi chiedevo, le informazioni scritte nel primo post sono aggiornate?? magari qualcuno puo' riassumere ed eventualmente aggiornare lo status e gli obiettivi cosi che possa darvi anche io una mano ;-)
Aspetto vostre info ;-)
comunque mi sa che bisogna lavorarci ancora (ed io non ne ho la capacità per guardare il codice, quando si tratta di compilare e provare sources differenti non c'è problema visto che uso gentoo da una vita, e son abituato a venir fuori dai casini)... qui ci con gli output delle stesse chiavette usb (una bt 1.1 l'altra bt 2.0) sul pad e sul pc:
bt 2.0 tab
bt 2.0 pccodice:# hciconfig -a
hci0: Type: USB
BD Address: 00:1F:81:00:08:30 ACL MTU: 1021:4 SCO MTU: 180:1
UP RUNNING
RX bytes:389 acl:0 sco:0 events:17 errors:0
TX bytes:67 acl:0 sco:0 commands:17 errors:0
Features: 0xff 0x3e 0x09 0x76 0x80 0x01 0x00 0x80
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy:
Link mode: SLAVE ACCEPT
Can't read local name on hci0: Connection timed out (110)
bt 1.1 padcodice:alan@Audrey ~/Android/WiP/fview-bt $ sudo hciconfig -a
hci0: Type: BR/EDR Bus: USB
BD Address: 00:1F:81:00:08:30 ACL MTU: 1021:4 SCO MTU: 180:1
UP RUNNING
RX bytes:1367 acl:0 sco:0 events:51 errors:0
TX bytes:460 acl:0 sco:0 commands:55 errors:5
Features: 0xff 0x3e 0x09 0x76 0x80 0x01 0x00 0x80
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF
Link mode: SLAVE ACCEPT
Name: 'Audrey-0'
Class: 0x000000
Service Classes: Unspecified
Device Class: Miscellaneous,
HCI Version: 2.0 (0x3) Revision: 0x44
LMP Version: 2.0 (0x3) Subversion: 0x3
Manufacturer: Cambridge Silicon Radio (10)
bt 1.1 pccodice:# hciconfig -a
hci0: Type: USB
BD Address: 00:02:72:B3:12:62 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING
RX bytes:395 acl:0 sco:0 events:18 errors:0
TX bytes:67 acl:0 sco:0 commands:17 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy:
Link mode: SLAVE ACCEPT
Can't read local name on hci0: Connection timed out (110)
a parte il timeout che si vede così nel dmesg "hci_cmd_task: hci0 command tx timeout" la chiavetta non viene vista bene, infatti manca la parte "Type: BR/EDR"codice:alan@Audrey ~/Android/WiP/fview-bt $ sudo hciconfig -a
Password:
hci0: Type: BR/EDR Bus: USB
BD Address: 00:02:72:B3:12:62 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:923 acl:0 sco:0 events:23 errors:0
TX bytes:595 acl:0 sco:0 commands:22 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy:
Link mode: SLAVE ACCEPT
Name: 'Audrey-0'
Class: 0x000100
Service Classes: Unspecified
Device Class: Computer, Uncategorized
HCI Version: 1.1 (0x1) Revision: 0x20d
LMP Version: 1.1 (0x1) Subversion: 0x20d
Manufacturer: Cambridge Silicon Radio (10)
sto riprovando con i sources dell rk29xx, ed anche la scorsa volta avevo un problema compilando bluetooth.ko come modulo (problema che non si verifica se lo si compila nel kernel)...
durante il modpost ottengo:
ERROR: "GetSNSectorInfo" [drivers/bluetooth/vflash.ko] undefined!
(avevo commentato le due parti riguardanti questo GetSNSectorInfo ma non è una soluzione elegante... ed infatti nemmeno del tutto funzionale!)
cercandolo all'interno dei sorgenti me lo ritrovo qui:
drivers/bluetooth/vflash.c:extern char GetSNSectorInfo(char * pbuf);
drivers/bluetooth/vflash.c: GetSNSectorInfo(tempBuf);
drivers/mtd/rknand/rknand_base_ko.c:char GetSNSectorInfo(char * pbuf)
drivers/mtd/rknand/rknand_base_ko.c: if(gpNandInfo->GetSNSectorInfo)
drivers/mtd/rknand/rknand_base_ko.c: return( gpNandInfo->GetSNSectorInfo( pbuf));
drivers/mtd/rknand/rknand_base.h: char (*GetSNSectorInfo)(char * pbuf);
ho provato a compilare rknand & co. come moduli (erano built-in) ma non è cambiato nulla... qualcuno che conosce il c sa indirizzarmi?
edit: ne son venuto fuori solo... editando vflash.c ed inserendo:
#include "../mtd/rknand/rknand_base.h"
edit2: se compilo solo i moduli con "make modules" funziona, se compilo anche il kernel no :/
Grazie al valoroso contributo di ChristianTroy,
per chi volesse provarlo, così la smettiamo con la paura di avere la /system in ext3
ecco il link Multiupload.com - upload your files to multiple file hosting sites!
dove si può scaricare una boot.img che carica la /system in ext4
Ovviamente bisogna adoperarsi per crearsi una system.img in ext4. :)
Creiamo il dummy file:
sudo dd if=/dev/zero of=/sysext4 bs=1k count=225000
Disabilitiamo i check automatici:
sudo tune2fs -c0 -i0 /sysext4
Creiamo un mount point per montare il file immagine creato:
mkdir sysext4.mnt
Montiamolo:
sudo mount -t ext4 /sysext4 /sysext4.mnt
Siamo pronti a copiarci i file dentro. Non dimenticate "cp -a " il parametro -a è importante per mantenere gli stessi permessi dei file originali durante la copia...
Have fun !
ok, ho applicato quelle modifiche linkate da yatto (su slatedroid) al file bt_usb.c
sinceramente non ci capisco niente, ma ho replicato come un somaro.... risultato???? BLUETOOTH FUNZIONANTE AL 100%!!!!!
solo da console per ora però
qui trovate la versione nuova: Multiupload.com - upload your files to multiple file hosting sites!
codice:# insmod bluetooth.ko
# insmod btusb.ko
# insmod l2cap.ko
# insmod rfcomm.ko
# insmod bnep.ko
# insmod sco.ko
# busybox chmod 666 /sys/class/rfkill/rfkill0/*
# bttest enable
enable= 0
# hciconfig -a
hci0: Type: USB
BD Address: 00:02:72:B3:12:62 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN
RX bytes:2912 acl:12 sco:0 events:56 errors:0
TX bytes:429 acl:12 sco:0 commands:34 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy:
Link mode: SLAVE ACCEPT
Name: 'Audrey-0'
Class: 0x080000
Service Classes: Capturing
Device Class: Miscellaneous,
HCI Ver: 1.1 (0x1) HCI Rev: 0x20d LMP Ver: 1.1 (0x1) LMP Subver: 0x20d
Manufacturer: Cambridge Silicon Radio (10)
# hcitool scan
Scanning ...
5C:17:D3:15:5E:B0 LG-P500
#sdptool browse 5C:17:D3:15:5E:B0
[cut]
Service Name: ShareGPS
Service RecHandle: 0x10009
Service Class ID List:
UUID 128: 00001101-0000-1000-8000-00805f9b34fb
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 7
# rfcomm bind hci0 5C:17:D3:15:5E:B0 7
# cat /dev/rfcomm0
$GPVTG,,T,,M,,N,,K,N*2C
$GPRMC,,V,,,,,,,,,,N*53
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,4,1,16,13,37,216,36,23,68,209,32,04,22,309,29,31,25,052,22*7F
$GPGSV,4,2,16,17,30,260,21,01,41,151,18,10,04,275,,11,19,158,*73
[cut]
adesso, leggendo il readme dei file per il bt dell'fview, si potrebbe usare il gps soltanto cambiando dei parametri del build.prop (anche al volo da adb) ma poi bisogna abilitare il gps dai settings... cosa che da noi manca :( loro hanno un file, chiamato wisky_conf (ho già cercato, non c'è) che se modificato gli fa apparire il menu settings completo... l'alternativa è un settings.apk di un'altra rom, potremmo provare quello della cm7 di eldiau
(se qualcuno vuole testare il gps bluetooth ed ha uno smartphone android, può scaricare sharegps che, come vedete, stavo usando anch'io)
c'è però un problema, non riesco ad attivare il bluetooth dal menu! si lamenta di permessi su alcuni file, anche se sono r/w a tutti :/
avevo provato a dargli anche uid/gid 1001 (l'user radio, come indicato nella modifica al file ueventd.rk29board.rc) ma non è cambiato nulla)codice:D/BluetoothService( 88): Bluetooth state 10 -> 11
V/BluetoothEventRedirector( 195): Received android.bluetooth.adapter.action.STATE_CHANGED
W/bluedroid( 88): open(/sys/class/rfkill/rfkill0/type) failed: Permission denied (13)
D/BluetoothService( 88): Bluetooth state 11 -> 10
----
# busybox ls -la /sys/class/rfkill/rfkill0/*
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/claim
lrwxrwxrwx 1 0 0 0 Dec 12 15:54 /sys/class/rfkill/rfkill0/device -> ../../hci0
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/index
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/name
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/persistent
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/state
lrwxrwxrwx 1 0 0 0 Dec 12 15:54 /sys/class/rfkill/rfkill0/subsystem -> ../../../../../../../../../class/rfkill
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/type
-rw-rw-rw- 1 1001 1001 4096 Dec 12 15:54 /sys/class/rfkill/rfkill0/uevent
ps: il btusb ha un limite... ovvero che se stacchi lo stick, la prossima volta compare come rfkill1, poi rfkill2 e così via... e android si aspetta di trovarlo in rfkill0... su linux c'è udev ad occuparsi di ste cose, su android no
prova a toglier lo "/" iniziale a of=/sysext4 cambiando il path anche nei comandi successi che per scrivere in / bisogna esser root
ps: il settings.apk della cm7 non va, peccato :(
edit: busybox chmod -R 777 /sys/class/rfkill/rfkill0/*
e si riesce ad avviare il bluetooth!
ottimo ;)
edit2: sharegps sul telefono e bluetooth gps sul pad... gps funzionante! ;)
adesso basta inserire il tutto in uno script di boot!
ma anche dalla gui o solo dal terminale?
croccio anche dalla gui anche dalla gui!!
per implementarla in una rom basta scaricare l'ultimo pack che ho postato poi nell'init.rc caricare i moduli, magari sarebbe elegante inserire un servizio che venga eseguito dopo aver montato system e caricare tutto da la... comunque i moduli in quest ordine:
insmod bluetooth.ko
insmod btusb.ko
insmod l2cap.ko
insmod rfcomm.ko
insmod bnep.ko
insmod sco.ko
(volendo c'è anche hidp.ko per tastiere e mouse bt)
successivamente bisogna dare i permessi 777 a rfkill, io lo farei così, editando ueventd.rk29board.rc
successivamente basta attivare il bt e usarlo...codice:/dev/galcore 0666 system graphics
/dev/video0 0660 system camera
/dev/video1 0660 system camera
/dev/video2 0660 system camera
/dev/pmem_cam 0660 system camera
/dev/vpu 0660 system system
/dev/vpu_mem 0666 system system
# for Sensor HAL
/dev/akm8973 0660 system system
/dev/accelerometer 0660 system system
# for GPS
#/dev/ttyS3 0600 gps gps
# for BT
/dev/vflash 0660 bluetooth bluetooth
/dev/ttyS0 0660 bluetooth bluetooth
/dev/ttyS2 0660 bluetooth bluetooth
# for radio
/sys/class/rfkill/rfkill* 0777 radio radio
adesso sarebbe il top riuscire ad abilitarlo nel menu settings!
vi ricordo che se staccate lo stick dovete riavviare per poterlo riutilizzare perchè il sistema vede rfkill1 anzichè rfkill0 e si incazza
ps: ho provato anche gps status, condividendo il gps del telefono ed è andato perfettamente! ottimo!
Intendevo dire: non si può fare tutto nel boot.img? Per l' attivazione del bluetooth usa quella in allegato.Allegato 4334
Ancora complimenti