Pandaboard Bluetooth command sequence for minimial fs

656 views
Skip to first unread message

Hariharan Veerappan

unread,
Jul 6, 2011, 2:27:21 AM7/6/11
to pandaboard
Hi,

We are developing security pod based on pandaboard.

We have tested the bluetooth functionality with android ( ginger
bread ) on pandaboard.



We are now trying to make the bluetooth working with a minimal linux
root file system ( without android ).



Please find here with the sequence used,

insmod btwilink.ko

insmod gps_drv.ko

insmod fm_drv.ko

dbus-launch

udevstart

echo 1 > /sys/class/rfkill/rfkill0/state

bluetoothd

hciattach -n -s 115200 /dev/ttyO1 texas 3000000

the command fails with the following output,

Found a Texas Instruments' chip!
Firmware file : /lib/firmware/TIInit_7.2.31.bts
Loaded BTS script version 1
Can't set line discipline: Invalid argument
Can't initialize device: Invalid argument

Kindly provide your valuable inputs in this regards,

Thanks,

Hariharan.V.
Architect - Embedded Design
NEEVEE Communication Technologies (INDIA) Pvt Ltd

Pavan Savoy

unread,
Jul 6, 2011, 11:15:12 AM7/6/11
to panda...@googlegroups.com
On Wed, Jul 6, 2011 at 1:27 AM, Hariharan Veerappan
<nvhar...@neeveetech.com> wrote:
> Hi,
>
> We are developing security pod based on pandaboard.
>
> We have tested the bluetooth functionality with android ( ginger
> bread ) on pandaboard.
>
>
>
> We are now trying to make the bluetooth working with a minimal linux
> root file system ( without android ).
>
>
>
> Please find here with the sequence used,
>
> insmod btwilink.ko
>
> insmod gps_drv.ko
>
> insmod fm_drv.ko
>
> dbus-launch
>
> udevstart
>
> echo 1 > /sys/class/rfkill/rfkill0/state
>
> bluetoothd
>
> hciattach -n -s 115200 /dev/ttyO1 texas 3000000

Bluetooth on pandaboard is supported via the shared transport, and
hence this step is not required.
You would need to run uim from the command line.
To make sure of the arguments, check the init.rc for uim entry.

After that you would just need to do hciconfig hci0 up (similar to usb case).

However, If you do wish to use the hciattach way and the hci_ldisc/HCI
UART drivers, then you would not need
btwilink.ko.
For this you need to make sure the HCI-LL is built into the kernel.

for more details.
http://omappedia.org/wiki/OMAP_WiLink_Connectivity_Home

> the command fails with the following output,
>
> Found a Texas Instruments' chip!
> Firmware file : /lib/firmware/TIInit_7.2.31.bts
> Loaded BTS script version 1
> Can't set line discipline: Invalid argument
> Can't initialize device: Invalid argument
>
> Kindly provide your valuable inputs in this regards,
>
> Thanks,
>
> Hariharan.V.
> Architect - Embedded Design
> NEEVEE Communication Technologies (INDIA) Pvt Ltd

--
--Pavan Savoy

Hariharan Veerappan

unread,
Jul 8, 2011, 12:43:45 AM7/8/11
to panda...@googlegroups.com
Hi,
i have modified the uim application and tested for bluetooth, when i do "hciconfig hci0 up"

i got the following outputs,

# hciconfig hci0 up
(stc): st_register(2)
(stc):  chnl_id list empty :2
(stk) : st_kim_start
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside set_custom_baud_rate Changing baud rate to 3000000, flow control to 1
 set_custom_baud_rate() done
uim: Inside read_firmware_ve
(stk) :TIInit_7.2.31.btsrsion wrote 4 bytes
 reading -1 bytes
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine

(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside s
(stk) :TIInit_7.2.31.btset_custom_baud_rate Changing baud rate to 3000000, flow control to 1
 set_custom_baud_rate() done
uim: Inside read_firmware_version wrote 4 bytes
 reading -1 bytes
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine




(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside set_custom_baud_rate Changing baud rate to 3000000, flow control to 1
 set_custom_baud_rate() do
(stk) :TIInit_7.2.31.btsne
uim: Inside read_firmware_version wrote 4 bytes
 reading -1 bytes
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine

(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside set_custom_baud_rate Changing baud rate to 3000000, flow control to 1
 set_custom_baud_rate() done
uim: Inside read_firmware_version wrote 4 bytes
 reading -1 bytes
 0  0  0
(stk) :TIInit_7.2.31.bts  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine

(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside set_custom_baud_rate Changing baud rate to 3000000, flow control to 1
 set_custom_baud_rate() done
uim: Inside read_firmware_version wrote 4 bytes
 reading -1 bytes
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine

(stk) :TIInit_7.2.31.bts
(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
(stk) :ldisc_install = 1uim: Inside st_uart_config Un-Installed N_TI_WL Line displineuim: Inside st_uart_configinstall set to 1
uim: Inside set_baud_rate set_baud_rate() done
 Setting speed to 3000000
uim: Inside read_command_complete Command complete started
uim: Inside read_hci_event read_hci_event
 Command complet
(stc): st_tty_open e done
 Speed c
(stk) : line discipline installed hanged to 3000000
uim: Inside set_custom_baud_rate Changing baud rate to 300000
(stk) :TIInit_7.2.31.bts0, flow control to 1
 set_custom_baud_rate() done
uim: Inside read_firmware_version wrote 4 bytes
 reading -1 bytes
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
 Installed N_TI_WL Line displine

(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
(stk) :download firmware failed
(stk) :ldisc_install = 0
(stc): st_tty_close
ti_st_open: st_register failed -22
Can't init device hci0: Input/output error (5)
#

I have copied the "TIInit_7.2.31.bts" into the folder "/lib/firmware" and "/system/etc/firmware".


Kindly provide your valuable inputs in this regards,

Thanks,
Hariharan.V.

Pavan Savoy

unread,
Jul 8, 2011, 11:17:28 AM7/8/11
to panda...@googlegroups.com
On Thu, Jul 7, 2011 at 11:43 PM, Hariharan Veerappan
<nvhar...@neeveetech.com> wrote:
> Hi,

Well -2 certainly suggests file not found for the firmware.
Can you run the udevd with debug options?
Let's check which path the udev is looking for to read
firmware files from .....

--
--Pavan Savoy

Hariharan Veerappan

unread,
Jul 9, 2011, 7:50:59 AM7/9/11
to pandaboard
Hi,

I have run the udevd with the options for debugging.
"udevd --daemon --debug-trace"

then i run the "hciconfig hci0 up"
But i could not get the file location dump.

Also most of the list suggests to copy the TIInit_7.2.31.bts into "/
lib/firmware" folder.
But same error is occuring.

Kindly provide your valuable inputs.

Thanks.
Hariharan.V.

Pavan Savoy

unread,
Jul 9, 2011, 1:19:58 PM7/9/11
to panda...@googlegroups.com
On Sat, Jul 9, 2011 at 6:50 AM, Hariharan Veerappan
<nvhar...@neeveetech.com> wrote:
> Hi,
>
> I have run the udevd with the options for debugging.
> "udevd --daemon --debug-trace"
>
> then i run the "hciconfig hci0 up"
> But i could not get the file location dump.
>
> Also most of the list suggests to copy the TIInit_7.2.31.bts into "/
> lib/firmware" folder.
> But same error is occuring.

(stk) : request_firmware failed(errno -2) for TIInit_7.2.31.bts
generally suggests that the file is not found,

firmware_class from the kernel space request udevd to provide it the firmware.
So, when the request_firmware is called the udevd should generally
show where the file is going to be picked up from.

The udevd rules suggest where the firmware file will be looked into as
in the directory ....
So, I am not sure what in these could be wrong, this is normal linux
operation... should always happen...

what does the udevd log says when request_firmware comes in ?

--
--Pavan Savoy

Hariharan Veerappan

unread,
Jul 10, 2011, 2:34:51 PM7/10/11
to pandaboard
Thanks Pavan,

I could found out the issue.
installed the "/lib/udev/firmware.sh" from udev.( udev extras is
installed ).

This makes the bluetooth works with the minimal fs.

Please find here with the attached applications.

./uim-app
insmod btwilink.ko
hciconfig hci0 up
hcitool scan

Now i could able to scan the bluetooth devices.

Thanks,
Hariharan.V.


sivaramkrishna

unread,
Aug 9, 2011, 10:03:22 AM8/9/11
to pandaboard
hi hariharan,

i am testing the bluetooth module on pandaboard ,booting it from
ubuntu minimal filesystem.

i am using kernel linux-ti-omap4_2.6.35-980.1release9 .

i dont have this module btwilink.ko .i have tried to bring blueooth
module up by installing ubuntu-omap4-extras ,but no luck .when i run
this command hcitool scan ,it says scanning but doesn't list out any
device .

can u please elaborate what u have done ?can u attach your uim-app and
firmware.sh files?

thanks,
siva.
Reply all
Reply to author
Forward
0 new messages