so the external bluetooth dongle is now working for PAN.

But lets look @ the built-in one a bit more.

I see that it uses /system/bin/sdptool to configure.

And that in init.rc, it does somethings like setup HFAG (Handsfree audio gateway), HSAG (Headset), OPUSH (share business cards and such), PBAP (Phone book profile).

So it should be possible to extend this with DUN (Dial-up networking), NAP (for networking), PANU (personal area network).

Sure enough, after doing the sdptool adds for the new services, they show up. I’m not sure if this is sufficient or not.

# sdptool browse local
Browsing FF:FF:FF:00:00:00 ...
Service RecHandle: 0x10000
Service Class ID List:
 "PnP Information" (0x1200)
Profile Descriptor List:
 "PnP Information" (0x1200)
 Version: 0x0102
Service Name: Audio Source
Service RecHandle: 0x10001
Service Class ID List:
 "Audio Source" (0x110a)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 PSM: 25
 "AVDTP" (0x0019)
 uint16: 0x102
Profile Descriptor List:
 "Advanced Audio" (0x110d)
 Version: 0x0102
Service Name: AVRCP TG
Service RecHandle: 0x10002
Service Class ID List:
 "AV Remote Target" (0x110c)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 PSM: 23
 "AVCTP" (0x0017)
 uint16: 0x103
Profile Descriptor List:
 "AV Remote" (0x110e)
 Version: 0x0100
Service Name: Voice Gateway
Service RecHandle: 0x10003
Service Class ID List:
 "Handsfree Audio Gateway" (0x111f)
 "Generic Audio" (0x1203)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 10
Profile Descriptor List:
 "Handsfree" (0x111e)
 Version: 0x0105
Service Name: Voice Gateway
Service RecHandle: 0x10004
Service Class ID List:
 "Headset Audio Gateway" (0x1112)
 "Generic Audio" (0x1203)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 11
Profile Descriptor List:
 "Headset" (0x1108)
 Version: 0x0100
Service Name: OBEX Phonebook Access Server
Service RecHandle: 0x10005
Service Class ID List:
 "Phonebook Access - PSE" (0x112f)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 19
 "OBEX" (0x0008)
Profile Descriptor List:
 "Phonebook Access" (0x1130)
 Version: 0x0100
Service Name: OBEX Object Push
Service RecHandle: 0x10006
Service Class ID List:
 "OBEX Object Push" (0x1105)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 12
 "OBEX" (0x0008)
Profile Descriptor List:
 "OBEX Object Push" (0x1105)
 Version: 0x0100
Service Name: PAN User
Service RecHandle: 0x10007
Service Class ID List:
 "PAN User" (0x1115)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 PSM: 15
 "BNEP" (0x000f)
 Version: 0x0100
Profile Descriptor List:
 "PAN User" (0x1115)
 Version: 0x0100
Service Name: Dial-Up Networking
Service RecHandle: 0x10008
Service Class ID List:
 "Dialup Networking" (0x1103)
 "Generic Networking" (0x1201)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
 Channel: 2
Profile Descriptor List:
 "Dialup Networking" (0x1103)
 Version: 0x0100
Service Name: Network Access Point Service
Service RecHandle: 0x10009
Service Class ID List:
 "Network Access Point" (0x1116)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 PSM: 15
 "BNEP" (0x000f)
 Version: 0x0100
 SEQ16: 10 20 30 40
Profile Descriptor List:
 "Network Access Point" (0x1116)
 Version: 0x0100

<4>[ 3.020000] =============================================
<4>[ 3.030000] [NAND Physical Invalid Block Info]
<4>[ 3.040000] =============================================
<4>[ 3.040000] CS#0: (20/1024)Blocks - (80/4096)Blocks
<4>[ 3.050000] =============================================
<4>[ 3.050000] [NAND FTL Invalid Block Info]
<4>[ 3.060000] =============================================
<4>[ 3.060000]
<4>[ 3.060000] CS#0: (20/1024)Blocks - (80/4096)Blocks
<4>[ 3.070000] [Total Physical Invalid Block Info]
<4>[ 3.070000] (80/4096)Blocks
<4>[ 3.080000] [Total FTL Invalid Block Info]
<4>[ 3.080000] (40/2048)Blocks
<4>[ 3.090000] =============================================
<4>[ 3.090000] [TNFTL NewMTD] [MTDBlockNum:3776] [BadBlockNum:0] [MTDEndBlock:3860]
<3>[ 3.110000] usb 1-1: device v0bda p8176 is not supported
<4>[ 3.120000]
<4>[ 3.120000] [NAND ] [PORT CONFIG - CS[0, 1] [NAND Data Port: GPIO_B Hw4 ~ Hw11]
<4>[ 3.130000] [NAND ] [BClk 250MHZ][1Tick 40][RE-S:0,P:8,H:3][WR-S:0,P:4,H:3][COM-S:3,P:15,H:15]
<4>[ 3.140000] [NAND ] [NB Area:4MB][DT Area:4MB][HD Area0:0MB][MTD Size:472MB]
<4>[ 3.150000] [NAND ] [BadBlockNum: 0]
<4>[ 3.150000] [NAND ] [Blk:]
<4>[ 3.160000] [Golden Info] [Devide :0] [Bad Block: 0]
<4>[ 3.170000] [Golden Info] [Nand Total Bad Block: 0]
<4>[ 3.170000] [MTD TCC] [PartName: boot] [StBlk : 84] [ChipNo:0]
<4>[ 3.180000] [MTD TCC] [PartName: boot] [EndBlk: 163] [ChipNo:0]
<4>[ 3.190000] [MTD TCC] [PartName: kpanic] [StBlk : 164] [ChipNo:0]
<4>[ 3.190000] [MTD TCC] [PartName: kpanic] [EndBlk: 203] [ChipNo:0]
<4>[ 3.200000] [MTD TCC] [PartName: system] [StBlk : 204] [ChipNo:0]
<4>[ 3.210000] [MTD TCC] [PartName: system] [EndBlk:2123] [ChipNo:0]
<4>[ 3.220000] [MTD TCC] [PartName: splash] [StBlk :2124] [ChipNo:0]
<4>[ 3.220000] [MTD TCC] [PartName: splash] [EndBlk:2155] [ChipNo:0]
<4>[ 3.230000] [MTD TCC] [PartName: cache] [StBlk :2156] [ChipNo:0]
<4>[ 3.240000] [MTD TCC] [PartName: cache] [EndBlk:2699] [ChipNo:0]
<4>[ 3.240000] [MTD TCC] [PartName: userdata] [StBlk :2700] [ChipNo:0]
<4>[ 3.250000] [MTD TCC] [PartName: userdata] [EndBlk:3763] [ChipNo:0]
<4>[ 3.260000] [MTD TCC] [PartName: recovery] [StBlk :3764] [ChipNo:0]
<4>[ 3.260000] [MTD TCC] [PartName: recovery] [EndBlk:3843] [ChipNo:0]
<4>[ 3.270000] [MTD TCC] [PartName: misc] [StBlk :3844] [ChipNo:0]
<4>[ 3.280000] [MTD TCC] [PartName: misc] [EndBlk:3851] [ChipNo:0]
<4>[ 3.280000] [MTD TCC] [PartName: tcc] [StBlk :3852] [ChipNo:0]
<4>[ 3.290000] [MTD TCC] [PartName: tcc] [EndBlk:3859] [ChipNo:0]
<4>[ 3.300000] [MTD TCC] [MTDTotalBlk:3776] [MTDBadBlk: 0] [MTDStBlk: 84] [MTDEdBlk:3860]
<4>[ 3.310000] [MTD TCC] NAND device: Manufacturer ID: 0xec, Chip ID: 0xdc
<6>[ 3.310000] tcc_nand: blocksize 131072, pagesize 2048, oobsize 64

Trying to figure out if the microphone on the faceplate goes to the android device, or the wince device only. Using ‘sound meter’ it appears by default no sound is received.

Looking in the output of ‘alsa_amixer’, i see there are some input devices (Mic, Capture). But they don’t seem to provide any audio level to android.

OK, so installed Google Play Music, and ran out of flash space instantly.

Solution:

# mkdir -p /mnt/sdcard/gpsflash/MusicCache
# cd /data/data/com.google.android.music
# rm -r cache/*
# rm -r files/*
# mount -o bind /mnt/sdcard/gpsflash/MusicCache cache
# mount -o bind /mnt/sdcard/gpsflash/MusicCache files

and boom, we are good. Now just put these last two lines in a script that runs on startup (see e.g. ScriptRunner etc)

My device has a television tuner (Digital + Analog).

There is no more Analog TV here in Canada. For Digital, we are on ATSC, North American frequencies.

The device, however, only allows selecting a few countries in Europe (England, France, Germany, Slovakia, …), China, and Russia.

In my area there is channel 28 (ATSC carrier 554.31), and channel 13 (ATSC carrier 210.31). But i cannot seem to get them to tune, the ‘stops’ on the device are not correct.