# [HOWTO] Logitech DiNovo under Linux Gentoo

## Neskweek

HOW TO Configure My Logitech DiNovo

Last Modification: 13 february 2007 11:07

Hi everybody! It's been 5 month I've this wonderfull keyboard set and yet I've never been able to use it at it's full possibility. 

I was searching for solutions to make it work with & without Bluetooth ... and guess what I found it yesterday ! Tried it today and all works great !!!. 

First of all I've to thank the http://linux.yes.nu/diNovo/ guy who made a great How to about that, howto that I'll lay down below those lines. Just one little thing I don't use the LCD display on the MediaPad maybe later but for now I won't develop it now.

Restriction: you MUST have a 2.6.18-gentoo-r6 kernel.

Side Effect: using the configuration described in chapter 4, you'll have to /etc/init.d/xdm/restart each time you boot your machine (because your mouse won't be active yet :/ unless you shake it until X start  :Razz: ).

So ! Here we go

1. USB connection

2. Bluetooth Connection

3. Xorg Configuration

4. How to make all mouse buttons works

5. Enjoy

1. USB connection

... Or also called "The Ugly solution".... Why have you bought a bluetooth enabled keyboard set if you only use it with a usb connection.....

In fact I put this explication to the lazy ones  :Razz:  which just want to use this keyboard set as a ..... keyboard set and nothing more (yes! yes! there are some weird people):

If you don't need Bluetooth the configuration process is easier and faster.

So what you need is very simple :

You need to recompile your kernel ! 

Just make sure to select those modules

If you compile them as modules (and not as I do below) you'll need to use hotplug. But I don't recommend it: I've noticed some problem with the mouse. 

 *Quote:*   

> 
> 
> Device Drivers--->
> 
>  USB SUpport---> 
> ...

 

Once your kernel recompiled reboot.

Now you must tell to your desktop manager to use your keyboard type :

Gnome :

 Gnome Menu -> Applications -> Desktop Preferences -> Keyboard

KDE:

  KDE Menu -> Kontrol Center -> Accessibility -> Keyboard Layout

And search in the list for "Logitech Cordless Desktop Pro" (or the alternate)

By the way the home,mail and search keys don't work.

Now you can go to 5.

2. Bluetooth Connection

Frankly this is the most interesting one because it permit a much greater use of you're DiNovo Pack.

First you'll need to download the latest patch from the bluez project.

You'll find it here : http://www.bluez.org/patches.html . It allow you to use a bluetooth device as a HID device (just like the USB connection)

Once downloaded : 

 *Quote:*   

> 
> 
> cd /usr/src/linux
> 
> 

 

(assuming the 2.6.18-gentoo-r6 kernel is your default one) and

 *Quote:*   

> 
> 
> gzip -dc /path/to/patch-2.6.18-mh8.gz | patch -p1
> 
> 

 

You'll see an error when applying the patch...  :Confused:   :

 *Quote:*   

> 
> 
> patching file drivers/bluetooth/hci_usb.c
> 
> patching file include/net/bluetooth/bluetooth.h
> ...

 

That's totaly normal

Then regarding the kernel configuration, you'll have to select those modules :

 *Quote:*   

> 
> 
> Device Drivers--->
> 
>  USB SUpport---> 
> ...

 

(ok  :Embarassed:  here I must confess You don't need all ... just the one in bold style.. but the rest can be usefull in the future)

Then recompile your kernel .BUT DON'T REBOOT YET (or you'll need a second keyboard to do the rest) 

You need first the dbus ebuild

 *Quote:*   

> 
> 
> emerge dbus  
> 
> 

 

Then activate dbus

 *Quote:*   

> 
> 
> rc.update add dbus boot  
> 
> 

 

You need then to install the bluez ebuilds

 *Quote:*   

> 
> 
> emerge bluez-utils  
> 
> 

 

This would emerge :

net-wireless/bluez-libs

dev-libs/libusb

net-wireless/bluez-utils

Just what we need (For an enhanced use of your dongle you will need other ebuilds... But that's another story)

Once done, you could launch the hid2hci command which uses the USB hiddev device to be handled as a normal Bluetooth device but the problem is that you can say goodbye to your mouse and keyboards  :Crying or Very sad:  : 

In fact The BT dongle is on but it's not aware that there's devices waiting to be used. And this lazy one don't want to discover them !!!!  :Twisted Evil: 

So we need to put those lines in this file (the blue & bold ones):

/etc/init.d/bluetooth :

 *Quote:*   

> 
> 
> #!/sbin/runscript
> 
> # Copyright 1999-2004 Gentoo Foundation
> ...

 

WARNING : Here, regarding your kernel configuration, you'll have a "FATAL error : bluetooth module not found." or whatever, if you have chosen to do as I wrote, meaning integrate all the drivers in the kernel. It's caused by the first line highlighted in red : All you drivers are integrated in the kernel so when that script try to load them it fails because it don't find the driver file. 

To avoid this problem you've got two choices : modularise your bluetooth drivers OR comment the second line in red. 

Then you need to add the bluetooth service to the boot sequence :

 *Quote:*   

> 
> 
> rc-update add bluetooth default
> 
> 

 

and next take a look at that file :

/etc/bluetooth/hcid.conf

 *Quote:*   

> 
> 
> # HCI daemon configuration file.
> 
> # HCId options
> ...

 

Now you can reboot ....   :Very Happy: 

And when your in front of your connection manager that's a drama  :Shocked: :

You move your mouse press your keyboard and nothing happen....

You say   :Evil or Very Mad:  :"This B#@!¹& He froze my system" but after a few seconds your mouse start to move again and you see character being write "Haaaaaaa" :Surprised: 

That worked.....

But .....

3. Xorg Configuration (sorry for the others... :Cool:  )

... once started you realise that none of your media/extra keys are working   :Mad:  . 

That's not a problem (anymore  :Very Happy: )

Here are the modifications to make :

/etc/X11/xkb/rules/xorg (117th line)

 *Quote:*   

> 
> 
> Replace this line :    logiinkse logiinkseusb logiik itouch
> 
> by    :    logiinkse logiinkseusb logiik itouch logidmd 
> ...

 

/etc/X11/xkb/rules/xorg.lst (78th line)

 *Quote:*   

> 
> 
> logiinkse Logitech iTouch Internet Navigator Keyboard SE
> 
>    logiinkseusb Logitech iTouch Internet Navigator Keyboard SE (USB)
> ...

 

/etc/X11/xkb/rules/xorg.xml (633th line)

 *Quote:*   

> 
> 
>  </model>
> 
>      <model>
> ...

 

/etc/X11/xkb/symbols.dir (853rd line)

 *Quote:*   

> 
> 
> --p----- a------- inet(logiik)
> 
> --p----- a------- inet(logidmd)
> ...

 

/etc/X11/xkb/symbols/inet (1373th line)

 *Quote:*   

> 
> 
> partial alphanumeric_keys
> 
> xkb_symbols "logidmd" {
> ...

 

Ouf....!!! Done!  :Wink: 

Now you must tell to your desktop manager to use your keyboard type :

Gnome :

 Gnome Menu -> Applications -> Desktop Preferences -> Keyboard

KDE:

  KDE Menu -> Kontrol Center -> Accessibility -> Keyboard Layout

And search in the list for "Logitech diNovo Media Desktop"

Then you can customise your /etx/X11/xorg.conf:

 *Quote:*   

> 
> 
> Section "InputDevice"
> 
>     Identifier "Keyboard0"
> ...

 

and put this line in /etc/X11/Xmodmap

 *Quote:*   

> 
> 
> pointer = 1 2 3 6 8 7 4 5
> 
> 

 

This makes:

Button 1 and 3 - left and right click - (left and right click).

Button 2 - pressing the wheel - (paste)

Button 4 and 5 - scrollwheel up and down - (scroll up and down).

Button 4+6 and 5 - buttons above and below scrollwheel - (scroll up + back and scroll down)

 Button 8 - (?)

Button 6 - big thumbbutton on the side - (back in mozilla, for example)

 Button 7 - "window"-button on top of the mouse 

Now you can reboot X....

4. How to make all mouse buttons works

Okay. So at this point, we have made our keyboards works perfectly (mediapad+keyboard).

But you'll notice that not all of the 10 mouse buttons are working.

Changing Xorg configuration will only move the problem :  if you manage to make one button work, another goes down :/

Then here is one solution. It has take me sometimes to find out.

I've tested several Linux distribution, and I must say that the evdev driver is kind of an evil clowny thing : depending your Linux it might not react the same (it's essentialy due to versions differences). It's pretty stable for USB devices, but for bluettoth ones that's a pin in the ass :X

The here is a solution working for Gentoo. it might work for other distribution but it may require ajustments (For instance on Ubuntu, you don't need to use an evdev driver: Just using the standard mouse driver and using xvkbd and xbindkeys should do the trick).

So First we need to know the MAC adresses of our devices : that's reaaaaaaaaaally simple =>  it's written on the back of your devices (mediapad, keyboard and mouse: each have an unique MAC ADRESS. it's a number looking like this :  00:27:61:16:F8:32

Here we will consider that the adresses of my devices (found on the back of the devices) are :

Keyboard: KK:KK:KK:KK:KK:KK

Mediapad: PP:PP:PP:PP:PP:PP

Mouse   : MM:MM:MM:MM:MM:MM

Then we create this file :

/etc/udev/rules.d/40-dinovo.rules

 *Quote:*   

> 
> 
> KERNEL=="event*", ATTRS{uniq}=="KK:KK:KK:KK:KK:KK" , NAME="input/event7", MODE="0644", SYMLINK+="input/keyboard"
> 
> KERNEL=="event*", ATTRS{uniq}=="PP:PP:PP:PP:PP:PP" , NAME="input/event8", MODE="0644", SYMLINK+="input/mediapad"
> ...

 

Why this ?

As Xorg evdev driver WANT nodes called /dev/input/eventX we gave him what it wants : we create 3 node : one per device. You still can try to call them otherwise but that will be a time loss. HE WANTS /dev/input/eventX named nodes

The name of the file (/etc/udev/rules.d/40-dinovo.rules) IS VERY IMPORTANT especially the number : it defines the treatment order of the file.

In the /etc/udev/rules.d/ directory you'll see several files prefixed by numbers : the lower number start first, the largest last.

Here we chose 40-dinovo.rules because IT MUST start before udev general rules (located in /etc/udev/rules.d/50-udev.rules). We could have chosen 45 or 30 ... but it must be smaller than 50 ! 

Talking about the rest of the name ... I could have called it 40-lobster.rules it wouldn't have change a thing  :Wink:  )

Then why 3 nodes ? We only need a node for the mouse !

True !

Because if we only do that for the mouse, if keyboard, mediapad & mx900 disconnect (power saving mode/recharging/battery died/out of range/.../whatever) when they'll be reconnected we can't garantee that the keyboard, which had connect first (this time) hasn't use the event9 we had chosen to be the mx900 event :/

To counter that effect we decide to assign event to our keyboard and mediapad, to be sure they won't stole the mx900 node. 

Then that's cooking computing (don't know how you call that in english) : depending the number of USB or other type of input you have (ex.: drawing tablets, two mouse, etc.) you may have to be carefull with the event you chose : be sure not to chose an event already used.

NB: this shouldn't be a problem : since our rule start before the udev ones, our mouse/keyboard/mediapad &are launched before the creation of other input events : it shouldn't use the one we defined. But I prefer create them by caution.

Oh and why the symlink ?

It is just a visual help : a simple "ll /dev/input/*" will show which event are linked to which device, just in case I forgot what is what .They can be ommited if you like 

Then we have to make udev apply those new rules. Type :

 *Quote:*   

> 
> 
> udevstart
> 
> 

 

Done ! 

Just to be sure : ll /dev/input

You should see your nodes devices and the simlinks showing you which ones are what.

Fine !

Let's make Xorg using them !

 *Quote:*   

> 
> 
> Section "InputDevice"
> 
>   Identifier "MX900"
> ...

 

And you may want to add this too :

 *Quote:*   

> 
> 
> Section "ServerFlags"
> 
>         Option "AllowMouseOpenFail"  "true"      #allow X to start without Mouse
> ...

 

Why ?

Because when your computer will start ... your mouse won't be active (unless you shake it until X start  :Razz: )

This should normally makes X start even if it doesn't  find a mouse device ...

Oddly on my latest test... This option doesn't work ... That's annoying

But ...

EUREKA !!! We did it !

Then now we can reboot Xorg :

 *Quote:*   

> 
> 
> /etc/init.d/xdm restart
> 
> 

 

We are going to try all those buttons !

Ho well, wait ! 

I forgot one thing  :Razz: 

Yeah all the buttons were found (use xev : you'll see that all buttons produce interruptions) but the two buttons on each side off wheel works as if they were the wheel (Doh !) and the top one seems to produce the same effect as the left mouse button.

Damn !

But don't be pieced off : the fact all the buttons produces interruptions meens that we can use those interruption to assign (or reassign) them a function.

To do so we'll have to install :

- xbindkeys which map keycodes 

- xvkbd which create some sort of virtual keyboard or whatever

 *Quote:*   

> 
> 
> emerge xbindkeys xvkbd
> 
> 

 

then all we still have to do is to create and fill this file :

$HOME/.xbindkeysrc

 *Quote:*   

> 
> 
> #Button 8 
> 
> "xvkbd -xsendevent -text "Q""
> ...

 

now launch xbindkeys and enjoy : 

Your mouse produce a "Q" when you hit the 8th Buttons etc ...

Here I only made my mouse print some letters (just as if I typed Q on my keyboard) because I didn't need more but you can assign some pretty functions like assign some sort of "Alt+Tab" function on the top button (or elsewhere, as you want), or launch a program/script, etc...

All you'll have to do then is to make this xbindkeys daemon start when your window manager is fired.

For this I'll detail only the KDE part (I don't like Gnome  :Very Happy:  and so I don't know how to do it. But you'll find out   :Wink:  I'm sure that's not the hardest part  :Smile:  ) :

create and fill :

$HOME/.kde/Autostart/xbindkeysrc

 *Quote:*   

> 
> 
> #!/bin/bash
> 
> /usr/bin/killall -9 xbindkeys
> ...

 

Then in a terminal

 *Quote:*   

> 
> 
> chmod 700 $HOME/.kde/Autostart/xbindkeysrc
> 
> 

 

And that's it

5.Enjoy

...What to say...

Hmmmmm I Love this keyboard set  :Very Happy: Last edited by Neskweek on Tue Feb 13, 2007 10:55 am; edited 49 times in total

----------

## gaute

Great HowTo. I have wanted a DiNovo for a long time, and now I can finally afford it and I don't need to use days configuring it.

----------

## stig

 *gaute wrote:*   

> Great HowTo. I have wanted a DiNovo for a long time, and now I can finally afford it and I don't need to use days configuring it.

 

...word!

----------

## ppito

hi Neskweek,

thx for your how-to.

I have a problem here  :Sad: .

u said there was an error at patching the kernel and that was right. Ok i got one error patching Makefile... is it ok?

well, after following all your steps I got the msg "No devices in HCI mode found" after typing 'hid2hci' command. I paste here the messages from kernel related to usb and bluetooth:

```

bluetooth: Unknown parameter `l2cap'

Bluetooth: Core ver 2.6

Bluetooth: HCI device and connection manager initialized

Bluetooth: HCI socket layer initialized

Bluetooth: L2CAP ver 2.4

Bluetooth: L2CAP socket layer initialized

Bluetooth: HIDP (Human Interface Emulation) ver 1.0-mh1
```

```
usbcore: registered new driver usbfs

usbcore: registered new driver hub

usbcore: registered new driver usblp

drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver

usbcore: registered new driver hiddev

usbcore: registered new driver usbhid

drivers/usb/input/hid-core.c: v2.0:USB HID core driver
```

Bluetooth module loads with no problem, and keyboard works fine (in usb mode).

I'm working with 2.6.8-gen-dev (r3) with no graphic system yet (only console). 

Thx in advance for any help

----------

## Neskweek

Hi ppito

So first concerning the error concerning the path, yes it occurs on the Makefile it's normal. I'll add that to the Howto.

Then 

I have reproduced your "No devices in HCI mode found" error...

The bad news is that I do it by unpluging my device ....

Then I didn't noticed first but i forgot to highlight one thing in the howto in the /etc/init.d/bluetooth script:

 *Quote:*   

> 
> 
> [ $RETVAL -a -x /usr/bin/hidd ] && \ 
> 
>  start-stop-daemon --start --quiet --exec /usr/bin/hidd 
> ...

 

(look the howto to see where it is)

It seems that it need it .....

Next try to type hidd on the console (before doing a hid2hci). If you have an error, you have a problem with your kernel configuration: look again at your bluetooth section or send it.

Then I've noticed that sometimes after aplying that patch and others (I'm refering to the pwc-fork one to make work my webcam) the patches make crash the compilation of the kernel......

You have to :

 *Quote:*   

> 
> 
> rm -Rf /usr/src/linux-2.6.8-gentoo-r3/
> 
> emerge unmerge gentoo-dev-sources
> ...

 

and reaply the patch

So here is one other question how do you compile your kernel : by hand or with genkernel (personnaly I use the last one,... yes I know shame on me but when you're lazy....) .... And are you sure it make it.

Good luck

----------

## ppito

Hi Neskweek,

 *Quote:*   

> So here is one other question how do you compile your kernel : by hand or with genkernel (personnaly I use the last one,...

 

you took me behind the solution with genkernel.. reading again gentoo handbook at kernel configuration i saw i had not installed hotplug becouse it was inside genkernel section and i did it by menuconfig way. After tried with genkernel and got a few errors about modules not being found, i did an 'emerge' with hotplug and tried again the manual kernel compile. I think another solution might be setting up the right modules in /etc/modules.autoload.d/kernel-2.6, but anyway, i dont care now  :Smile: 

Now it sees the devices at boot time with no problem.

Thx very much for your help.

----------

## scoobydu

Neskweek:

Thanks for the howto  :Wink: 

I've been using the BT hub for a while, but wasn't that bothered about the xorg stuff ... that is until now, so I'll add it.

btw, using the newest kernels, the mh patch is already included, so no more need to patch.

----------

## raardvark

This looks good, but I'm having a few problems.

I've emerged bluez-utils and done everything else up to the X configuration part, but when I rebooted, I got messages that it couldn't find the command sdpd, hid2hci or hidd.

Does anyone know what my problem might be. I'm using a 2.4.25 kernel (I did read about having to use a 2.6 kernel, but I'm a naive noob and thought I'd be able to make it work in 2.4 and also not sure if upgrading to 2.6 will break my system).

----------

## pjp

Moved from Kernel & Hardware.

----------

## scoobydu

 *raardvark wrote:*   

> This looks good, but I'm having a few problems.
> 
> I've emerged bluez-utils and done everything else up to the X configuration part, but when I rebooted, I got messages that it couldn't find the command sdpd, hid2hci or hidd.
> 
> Does anyone know what my problem might be. I'm using a 2.4.25 kernel (I did read about having to use a 2.6 kernel, but I'm a naive noob and thought I'd be able to make it work in 2.4 and also not sure if upgrading to 2.6 will break my system).

 

In what way would a 2.6 kernel break your system?   :Shocked: 

Some reconfiguring, but thats about it.

Never tried this with a 2.4 kernel, but you'd need to apply the correct patch for your kernel from here -> http://www.holtmann.org/linux/kernel/

scooby

----------

## raardvark

Like I said, I'm a bit of a noob, I wasn't entirely sure what would happen. From what you've said though it doesn't sound like a huge deal, so I'll emerge some 2.6 source and give it a go.

Thanks

----------

## scoobydu

 *raardvark wrote:*   

> Like I said, I'm a bit of a noob, I wasn't entirely sure what would happen. From what you've said though it doesn't sound like a huge deal, so I'll emerge some 2.6 source and give it a go.
> 
> Thanks

 

Didn't mean it to sound noob unfriendly   :Wink: 

Definately give it a go ... the 2.6 kernels are faster, have more hardware support, so unless you really must have a 2.4 kernel, then go for it.

----------

## raardvark

That's OK scooby, don't worry about it   :Smile: 

I've recompiled with the 2.6.8-r3 kernel now and that went fine, but when starting up it gave an error:

"Starting Bluetooth:

FATAL: module bluetooth not found"

I ran "modprobe bluetooth" and it didn't come up with anything.

I checked over my kernel config and it's the same as posted.

Anyone got any ideas what I did (or didn't) do?

----------

## Neskweek

Hi guys  :Very Happy: 

First, Answering raardvark :

 *Quote:*   

> 
> 
> I've recompiled with the 2.6.8-r3 kernel now and that went fine, but when starting up it gave an error: 
> 
> "Starting Bluetooth: 
> ...

 

That's because as you said your config kernel is as posted so the bluetooth module is integrated into the kernel. So You don't need to load it.

In fact you have that line at the start of your /etc/init.d/bluetooth :

 *Quote:*   

> 
> 
> #!/sbin/runscript
> 
> # Copyright 1999-2004 Gentoo Foundation
> ...

 

In that line you can see that this script is trying to load the module. But since it's integrated in your kernel, when it try to load the module, it don't find the /lib/modules/2.6.8-gentoo-r3/kernel/drivers/net/bluetooth.ko (or something like that) file so it gives you that error.

In fact if you configure your kernel exactly as I wrote ( with all the Bluetooth things lcap, rfcomm,....) you can comment that line. 

Anyway my mistake for that part I haven't been clear enough... :p

I'll correct that at once. Thx 

Then for Scoobydu :

 *Quote:*   

> 
> 
> Thanks for the howto  
> 
> I've been using the BT hub for a while, but wasn't that bothered about the xorg stuff ... that is until now, so I'll add it. 
> ...

 

For the patch thing : Yes and No.

The mh1 patch is integrated into the 2.6.8-gentoo-r3. But since they realeased the mh2 patch with some bugs corrections I made the link to their site and greatly recommend to apply it.

And who knows.... maybe we will have a mh3......

 :Very Happy: 

----------

## raardvark

Thanks Neskweek, I'll give that a go  :Wink: 

Good work on the How-To by the way  :Smile: 

----------

## scoobydu

I'm talking about 2.6.9rc kernels though (although I didn't make it too clear!  :Wink:  )

Maybe the case ...   :Smile: 

----------

## Neskweek

 *scoobydu wrote:*   

> I'm talking about 2.6.9rc kernels though (although I didn't make it too clear!  )
> 
> Maybe the case ...  

 

:p Sorry then.... I didn't understood that  :Embarassed: 

 :Very Happy: 

----------

## ppito

Hi,

only for helping if someone needs it, setting up the mouse buttons can be done in a second way with the command:

```
xmodmap -e "pointer = 1 2 3 6 8 7 4 5"
```

(/etc/X11/Xmodmap doesn't work with my Xorg 6.8.0)

Greets  :Very Happy: 

----------

## nomego

Thanks for giving me credit and linking to my site.

However I would like to point out that I make updates all the time and I see some typos I made in the past that you copied before they got corrected.

Nonetheless, I'm glad that so many people have had use of my guide - in one form or another!

----------

## z3ro

Sorry for dragging up an old thread but I am considering buying this keyboard. Mainly because the number pad is extremely annoying for me because it pushes the main part of the keyboard to my left.

Anyway, it seems that everything works on this keyboard set but I have not heard much about the MediaPad. While I don't like it being part of my keyboard I can see how it would be useful to show what music is currently playing, new messages in Gaim, etc.

Has anyone got the LCD working, so you could do things like:

```
echo hello > /dev/dinovolcd
```

That would be really useful.

----------

## Neskweek

Hi Zero 0

 Concerning the MediaPad, I didn't go further into search for it.

That's not a big problem for me (just a plus if that wotks, yhay's true) 

 So for now I won't be a great help for that

Sorry   :Razz: 

----------

## Cabalistic

Hi,

I've owned a diNovo for quite some time now and have used it in USB mode so far. I did try several times to get it working in Bluetooth mode, but so far I've not come to a satisfactory solution. Since I wanted to upgrade to kernel 2.6.9 anyway, I thought, I could just as well retry with your howto. Unfortunately, the outcome is still the same.

As soon as I switch the hub to bluetooth mode via hid2hci, the diNovo devices stop working, or rather they lose their connection to the hub, and they do NOT automatically reconnect as you've written in your howto. I have to reestablish the connection, which would involve pressing the connect buttons on the diNovo devices and then pressing the connect button on the diNovo hub - unfortunately, though, the connect button on the hub stops working as soon as I switch it to bluetooth mode. So my only possibility is to manually call 'hidd --connect device_addr' which works alright except that I need a second keyboard to do that which I usually do not have attached to my PC. 

Anyway, after the call to hidd --connect the devices work in bluetooth mode, and they even continue to work after reboot. The only problem is that occasionally after booting Windows or after changing batteries I need to reconnect at least the keyboard, so I would need to always have a second keyboard around. That's somehow wrong. Besides, the leds on the hub indicating whether CAPS_LOCK and the function key are pressed or not do not work in bluetooth mode.

I've followed your howto step by step, so I'm not sure what I'm missing. Or have I just got a weird diNovo set that's just not fully understood by bluez? I don't know, but so far USB mode is the only feasible way for me to use the set  :Sad: 

----------

## NismoC32

I'm not impressed by the bluetooth way eather.

When I roboot I have to press the reset button two times to get the keyboard to work in BIOS and the Boot manager.

Some times it boots in standard mode sometime in Bluetooth mode.

I can't use my WinXP partition eather (Not that critical since I bearly use it, but I need it for updating some HW (Dreambox, Flashing M2 kards...) from time to time, the problem in WinXP is that I need a second keyboard to be able to install the driver for the diNovo keyboard.

I think I have to go back to USB/RF mode and wait and for a couple of mount and see if it is done som more progress with the bluez projekt.

It just feels like it is not quite stable yet.....

EDIT: The reboot problem is also present when rebooting from WinXP so this is not a Linux problem.

Are there anyoen else with that problem ?

I hope it is not supposed to be like this   :Sad: 

I also have innstalled vmware and therfore I don't need a sepparat WinXP partition... well I'm planning to play HL2 so..... darn, I wish they could make a Linux binary like "Id" did for Doom3.

----------

## Neskweek

 *Cabalistic wrote:*   

> Hi,
> 
> As soon as I switch the hub to bluetooth mode via hid2hci, the diNovo devices stop working, or rather they lose their connection to the hub, and they do NOT automatically reconnect as you've written in your howto. I have to reestablish the connection, which would involve pressing the connect buttons on the diNovo devices and then pressing the connect button on the diNovo hub - unfortunately, though, the connect button on the hub stops working as soon as I switch it to bluetooth mode. So my only possibility is to manually call 'hidd --connect device_addr' which works alright except that I need a second keyboard to do that which I usually do not have attached to my PC. 
> 
> 

 

Be careful concernig the bluetooth initscript. It seems to me that you miss some points. I had the same problems when Istart to use the Dinovo with linux. But for now I'm using it in bluetooth mode, and it work. I'm thinking essentially at the hidd start. Be sure you have the --server option. Without it, the dongle won't be able to connect the devices automaticaly

 *NismoC32 wrote:*   

> 
> 
> When I roboot I have to press the reset button two times to get the keyboard to work in BIOS and the Boot manager. 
> 
> 

 

For this one, I'm sorry guys but it seems that's the way it is. I've the same problem. It seems that once you reboot the  dongle stays in BT mode and as a consequence you can't use it  in the BIOS nor a bootloader as long as you don't halt your machine ( 30seconds at least )

Hope it helped

See ya  :Wink: 

----------

## Cabalistic

Well, no, unfortunately the --server option is definitely set, that's not the problem. Thanks anyway  :Smile: 

----------

## Valentin

If someone needs a config for lineak (used keyboard: Logitech diNovo Media Desktop [german]):

/etc/lineakkb.def

```

 [LTDINOVO]

    brandname = "Logitech"

    modelname = "DiNovo"

   [KEYS]

        Sleep           = 227

        Home            = 130

        Mail            = 236

        Search          = 122

        Media           = 129

        VolDown         = 174

        VolUp           = 176

        Mute            = 160

        Stop            = 164

        Play            = 162

        Rewind          = 144

        Forward         = 153

   [END KEYS]

 [END LTDINOVO]

```

than: "lineakd -c LTDINOVO" to create a blank config file for the lineakd-daemon (~/.lineak/lineakd.conf)

----------

## xannor

I dont know if this is covered elsewere in the forums. (or even if I am doing it the best way) but I have a way to eliminate the need for running HID2HCI on boot and manually after the device gets disconnected /reconnected.

I have acheived this through the used of UDEV (my version is 048 but it shoule work in older versons as well, untested)

My first part is a UDEV rule

```

#Rename Run HID2HCI on DiNovo Insert

KERNEL="hiddev*", SYSFS{idVendor}="0451", SYSFS{idProduct}="2036", PROGRAM="/etc/udev/scripts/diNovo.sh usb/%k", NAME="usb/%k"

```

I put this rule in /etc/udev/rules.d/10-local.rule

This code should get run everytime the hiddev device for the receiver is found.

the second part is the custom PROGRAM script used in the udev rule.

```

#!/bin/sh

if [[ "$ACTION" == "add" ]] && [[ "x$2" == "x" ]]; then

        start-stop-daemon --start -b --exec $0 $1 x

        echo "ok"

elif [[ "x$2" == "xx" ]]; then

        while [[ ! -c /dev/$1 ]]; do

                sleep 1

        done

        /usr/sbin/hid2hci --tohci

fi

```

I saved this code as /etc/udev/scripts/DiNovo.sh (and it must be executable!)

This code will work around the fact that the hiddev has not been created yet (though it seems to be necessary for hid2hci to work correctly)

With this code installed, everytime you plug in (or the system otherwise recognises) your adaptor it will run hid2hci so it is in hci mode.

I am still trying to come up with a solution to "not being able to use the adapter as a HID device once it is in HCI mode" (for bios and bootloader modes after reboot.) I think it could be done if we had a way to reset the device during shutdown, but I do not know how to do that. any takers?

----------

## sibov

Hi guys,

i have successfully set up my bluetooth stuff, but the keyboard won't connect.

Mediapad and Mouse works very well but the keyboard doesn't pair.

does anybody have a hint? 

Thanx in advane.   :Wink: 

[EDIT]

 :Rolling Eyes:   I don't know why but after reboot without second keyboard and mouse my bluetooht keyboard also connect quite well. 

But one Question: Is it really correct in /etc/bluetooth/hci.conf

to setup the local device class with

class class 0x120301; ????????

i only setup class 0x120301;

 :Rolling Eyes: 

----------

## sibov

 *xannor wrote:*   

> I dont know if this is covered elsewere in the forums. (or even if I am doing it the best way) but I have a way to eliminate the need for running HID2HCI on boot and manually after the device gets disconnected /reconnected.
> 
> I have acheived this through the used of UDEV (my version is 048 but it shoule work in older versons as well, untested)
> 
> My first part is a UDEV rule
> ...

 

Thanx Xannor for the UDEV stuff!   :Very Happy: 

But how do I get the iVendor and the iProduct IDs?

From which device?

```

*-usb:0

                      description: Keyboard

                      product: USB Receiver

                      vendor: Logitech

                      physical id: 0

                      bus info: usb@4:0:0

                      version: 24.04

                      serial: 195564

                      capabilities: usb-1.10

                      configuration: driver=usbhid maxpower=98mA speed=1.5MB/s

                 *-usb:1

                      description: Bluetooth wireless interface

                      product: Logitech Bluetooth wireless hub

                      vendor: Logitech

                      physical id: 1

                      bus info: usb@4:0:1

                      version: 8.46

                      serial: 195564

                      capabilities: bluetooth usb-1.10

                      configuration: driver=hci_usb maxpower=100mA speed=12.0MB/s

```

----------

## xannor

 *sibov wrote:*   

> 
> 
> Thanx Xannor for the UDEV stuff!  
> 
> 

 

NP

 *sibov wrote:*   

> 
> 
> But how do I get the iVendor and the iProduct IDs?
> 
> From which device?
> ...

 

To get the ID's and other info requires a little deep searching of how UDEV works.

The simplest way is to run hid2hci then use udevinfo to get all the info for the device..

```

udevinfo -ap /sys/class/bluetooth/hci0

```

the -a means all and the -p is the sysfs path to the devices (hci0 if it is the first bluetooth device).

you get a huge dump of info when you do this, ex:

```

udevinfo starts with the device the node belongs to and then walks up the

device chain, to print for every device found, all possibly useful attributes

in the udev key format.

Only attributes within one device section may be used together in one rule,

to match the device for which the node will be created.

  looking at class device '/sys/class/bluetooth/hci0':

    SYSFS{address}="08:00:17:12:93:C0"

    SYSFS{flags}="0x1d"

    SYSFS{name}="hci0"

    SYSFS{type}="1"

follow the class device's "device"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:10.1/usb3/3-2/3-2:1.0':

    BUS="usb"

    ID="3-2:1.0"

    SYSFS{bAlternateSetting}=" 0"

    SYSFS{bInterfaceClass}="e0"

    SYSFS{bInterfaceNumber}="00"

    SYSFS{bInterfaceProtocol}="01"

    SYSFS{bInterfaceSubClass}="01"

    SYSFS{bNumEndpoints}="03"

    SYSFS{detach_state}="0"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:10.1/usb3/3-2':

    BUS="usb"

    ID="3-2"

    SYSFS{bConfigurationValue}="1"

    SYSFS{bDeviceClass}="e0"

    SYSFS{bDeviceProtocol}="01"

    SYSFS{bDeviceSubClass}="01"

    SYSFS{bMaxPower}="500mA"

    SYSFS{bNumConfigurations}="1"

    SYSFS{bNumInterfaces}=" 2"

    SYSFS{bcdDevice}="0100"

    SYSFS{bmAttributes}="80"

    SYSFS{detach_state}="0"

    SYSFS{devnum}="2"

    SYSFS{idProduct}="0807"

    SYSFS{idVendor}="0400"

    SYSFS{maxchild}="0"

    SYSFS{speed}="12"

    SYSFS{version}=" 1.10"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:10.1/usb3':

    BUS="usb"

    ID="usb3"

    SYSFS{bConfigurationValue}="1"

    SYSFS{bDeviceClass}="09"

    SYSFS{bDeviceProtocol}="00"

    SYSFS{bDeviceSubClass}="00"

    SYSFS{bMaxPower}="  0mA"

    SYSFS{bNumConfigurations}="1"

    SYSFS{bNumInterfaces}=" 1"

    SYSFS{bcdDevice}="0206"

    SYSFS{bmAttributes}="c0"

    SYSFS{detach_state}="0"

    SYSFS{devnum}="1"

    SYSFS{idProduct}="0000"

    SYSFS{idVendor}="0000"

    SYSFS{manufacturer}="Linux 2.6.10-ck4 uhci_hcd"

    SYSFS{maxchild}="2"

    SYSFS{product}="VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (#2)"

    SYSFS{serial}="0000:00:10.1"

    SYSFS{speed}="12"

    SYSFS{version}=" 1.10"

  looking at the device chain at '/sys/devices/pci0000:00/0000:00:10.1':

    BUS="pci"

    ID="0000:00:10.1"

    SYSFS{class}="0x0c0300"

    SYSFS{detach_state}="0"

    SYSFS{device}="0x3038"

    SYSFS{irq}="193"

    SYSFS{local_cpus}="1"

    SYSFS{subsystem_device}="0x2032"

    SYSFS{subsystem_vendor}="0x161f"

    SYSFS{vendor}="0x1106"

  looking at the device chain at '/sys/devices/pci0000:00':

    BUS=""

    ID="pci0000:00"

    SYSFS{detach_state}="0"

```

udevinfo starts at the device class (in this case) and works its way backwards to the root system bus. In the case of the example above the first idVendor and idProduct from the top is the ID for the USB device. Sometimes it takes some trial and error. lsusb can also show this info, but UDEV is picky about format so it is best to match what udevinfo shows.

Hope this helps, sorry for the late reply.

----------

## timbo

Great help BUT....

I splashed out and got a Logitech Elite KB for xmas, set up xorg and kde and everything was sweet all the keys worked....

Updated xorg today and all the changes to the config files (inet, etc) got overwritten!  back to square one....  :Sad: 

Regards

Tim

 :Cool: 

----------

## StinkingMonkey

well thanks for the howto, got my diNovo desktop 2.0 working  :Smile: , bit of  a pain it not working during grub but ho hum, the media pad does have some functionality, if i start up xmms i can open the file list, adjust volume, fast forward on a track, reverse,  i have to be focused on xmms though, so the media pad can hopefully be made functional by some coding guru  :Smile: 

----------

## djnauk

Could someone please tell me what I'm doing wrong?

I got the new diNovo Desktop 2.0 version on sunday, and as of yet I can't seam to get it working in bluetooth. Although, from what I can gather, the system just isn't running bluetooth though it at all. When I run gnome-bluetooth-manager it just says

 *Quote:*   

> Could not find Bluetooth devices on the system.
> 
> Please make sure your bluetooth adapter is correctly plugged in your machine.

 

I've followed all the settings as per the guide, but nothing seams to happen, running hid2hci just gives:

```
jonathan root # hid2hci

No devices in HCI mode found
```

Running hcitool shows up nothing:

```
jonathan root # hcitool inq

Inquiring ...

Inquiry failed.: No such device

jonathan root # hcitool scan

Device is not available: Success

jonathan root # hcitool dev

Devices:

jonathan root # hcitool cc 00:07:61:22:51:1e [b]//this is my mouse[/b]

Device is not available.
```

udevinfo doesn't have anything on hci

```
jonathan root # udevinfo -ap /sys/class/bluetooth/hci0

couldn't get the class device
```

all the modules are loaded

```
jonathan root # lsmod

Module                  Size  Used by

usbhid                 30400  0

usblp                  11456  0

[b]uhci_hcd               30800  0

hci_usb                13512  0[/b]

isofs                  25156  1

nls_iso8859_1           4224  5

cifs                  201596  4

nls_base                6784  3 isofs,nls_iso8859_1,cifs

snd_seq_midi            6880  0

snd_emu10k1_synth       7232  0

snd_emux_synth         35968  1 snd_emu10k1_synth

snd_seq_virmidi         6464  1 snd_emux_synth

snd_seq_midi_emul       7232  1 snd_emux_synth

snd_pcm_oss            48996  0

snd_mixer_oss          18048  1 snd_pcm_oss

snd_seq_oss            32640  0

snd_seq_midi_event      6592  3 snd_seq_midi,snd_seq_virmidi,snd_seq_oss

snd_seq                51152  8 snd_seq_midi,snd_emux_synth,snd_seq_virmidi,     \

                                snd_seq_midi_emul,snd_seq_oss,snd_seq_midi_event

snd_emu10k1            93316  1 snd_emu10k1_synth

snd_rawmidi            20640  3 snd_seq_midi,snd_seq_virmidi,snd_emu10k1

snd_seq_device          7436  7 snd_seq_midi,snd_emu10k1_synth,snd_emux_synth,   \

                                snd_seq_oss,snd_seq,snd_emu10k1,snd_rawmidi

snd_ac97_codec         72928  1 snd_emu10k1

snd_pcm                84996  3 snd_pcm_oss,snd_emu10k1,snd_ac97_codec

snd_timer              21636  2 snd_seq,snd_pcm

snd_page_alloc          7940  2 snd_emu10k1,snd_pcm

snd_util_mem            3712  2 snd_emux_synth,snd_emu10k1

snd_hwdep               7812  2 snd_emux_synth,snd_emu10k1

snd                    47460  13 snd_emux_synth,snd_seq_virmidi,snd_pcm_oss,    \

                                 snd_mixer_oss,snd_seq_oss,snd_seq,snd_emu10k1, \

                                 snd_rawmidi,snd_seq_device,snd_ac97_codec,     \

                                 snd_pcm,snd_timer,snd_hwdep

soundcore               7840  1 snd

[b]usbcore                76672  4 usbhid,usblp,uhci_hcd,hci_usb

hidp                   26816  2

bnep                   12928  2

rfcomm                 35672  4

l2cap                  22912  14 hidp,bnep,rfcomm

sco                    11648  0

bluetooth              44804  8 hci_usb,hidp,bnep,rfcomm,l2cap,sco[/b]

e100                   32320  0

mii                     4416  1 e100
```

I've checked and double checked all the configuration settings - where am I going wrong?

.config

```

#

# Automatically generated make config: don't edit

# Linux kernel version: 2.6.10-gentoo-r7

# Wed Feb 16 14:39:37 2005

#

CONFIG_X86=y

CONFIG_MMU=y

CONFIG_UID16=y

CONFIG_GENERIC_ISA_DMA=y

CONFIG_GENERIC_IOMAP=y

#

# Code maturity level options

#

CONFIG_EXPERIMENTAL=y

CONFIG_CLEAN_COMPILE=y

CONFIG_LOCK_KERNEL=y

#

# General setup

#

CONFIG_LOCALVERSION="-djnauk-b02"

CONFIG_SWAP=y

CONFIG_SYSVIPC=y

CONFIG_POSIX_MQUEUE=y

# CONFIG_BSD_PROCESS_ACCT is not set

CONFIG_SYSCTL=y

# CONFIG_AUDIT is not set

CONFIG_LOG_BUF_SHIFT=15

CONFIG_HOTPLUG=y

CONFIG_KOBJECT_UEVENT=y

# CONFIG_IKCONFIG is not set

# CONFIG_EMBEDDED is not set

CONFIG_KALLSYMS=y

# CONFIG_KALLSYMS_EXTRA_PASS is not set

CONFIG_FUTEX=y

CONFIG_EPOLL=y

# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set

CONFIG_SHMEM=y

CONFIG_CC_ALIGN_FUNCTIONS=0

CONFIG_CC_ALIGN_LABELS=0

CONFIG_CC_ALIGN_LOOPS=0

CONFIG_CC_ALIGN_JUMPS=0

# CONFIG_TINY_SHMEM is not set

#

# Loadable module support

#

CONFIG_MODULES=y

CONFIG_MODULE_UNLOAD=y

CONFIG_MODULE_FORCE_UNLOAD=y

CONFIG_OBSOLETE_MODPARM=y

# CONFIG_MODVERSIONS is not set

# CONFIG_MODULE_SRCVERSION_ALL is not set

CONFIG_KMOD=y

CONFIG_STOP_MACHINE=y

#

# Processor type and features

#

CONFIG_X86_PC=y

# CONFIG_X86_ELAN is not set

# CONFIG_X86_VOYAGER is not set

# CONFIG_X86_NUMAQ is not set

# CONFIG_X86_SUMMIT is not set

# CONFIG_X86_BIGSMP is not set

# CONFIG_X86_VISWS is not set

# CONFIG_X86_GENERICARCH is not set

# CONFIG_X86_ES7000 is not set

# CONFIG_M386 is not set

# CONFIG_M486 is not set

# CONFIG_M586 is not set

# CONFIG_M586TSC is not set

# CONFIG_M586MMX is not set

# CONFIG_M686 is not set

# CONFIG_MPENTIUMII is not set

# CONFIG_MPENTIUMIII is not set

# CONFIG_MPENTIUMM is not set

# CONFIG_MPENTIUM4 is not set

# CONFIG_MK6 is not set

CONFIG_MK7=y

# CONFIG_MK8 is not set

# CONFIG_MCRUSOE is not set

# CONFIG_MEFFICEON is not set

# CONFIG_MWINCHIPC6 is not set

# CONFIG_MWINCHIP2 is not set

# CONFIG_MWINCHIP3D is not set

# CONFIG_MCYRIXIII is not set

# CONFIG_MVIAC3_2 is not set

# CONFIG_X86_GENERIC is not set

CONFIG_X86_CMPXCHG=y

CONFIG_X86_XADD=y

CONFIG_X86_L1_CACHE_SHIFT=6

CONFIG_RWSEM_XCHGADD_ALGORITHM=y

CONFIG_X86_WP_WORKS_OK=y

CONFIG_X86_INVLPG=y

CONFIG_X86_BSWAP=y

CONFIG_X86_POPAD_OK=y

CONFIG_X86_GOOD_APIC=y

CONFIG_X86_INTEL_USERCOPY=y

CONFIG_X86_USE_PPRO_CHECKSUM=y

CONFIG_X86_USE_3DNOW=y

CONFIG_HPET_TIMER=y

CONFIG_HPET_EMULATE_RTC=y

CONFIG_SMP=y

CONFIG_NR_CPUS=8

CONFIG_SCHED_SMT=y

CONFIG_PREEMPT=y

CONFIG_X86_LOCAL_APIC=y

CONFIG_X86_IO_APIC=y

CONFIG_X86_TSC=y

CONFIG_X86_MCE=y

CONFIG_X86_MCE_NONFATAL=m

# CONFIG_X86_MCE_P4THERMAL is not set

# CONFIG_TOSHIBA is not set

# CONFIG_I8K is not set

# CONFIG_MICROCODE is not set

# CONFIG_X86_MSR is not set

# CONFIG_X86_CPUID is not set

#

# Firmware Drivers

#

# CONFIG_EDD is not set

CONFIG_NOHIGHMEM=y

# CONFIG_HIGHMEM4G is not set

# CONFIG_HIGHMEM64G is not set

# CONFIG_MATH_EMULATION is not set

CONFIG_MTRR=y

# CONFIG_EFI is not set

CONFIG_IRQBALANCE=y

CONFIG_HAVE_DEC_LOCK=y

# CONFIG_REGPARM is not set

#

# Power management options (ACPI, APM)

#

CONFIG_PM=y

# CONFIG_PM_DEBUG is not set

# CONFIG_SOFTWARE_SUSPEND is not set

#

# ACPI (Advanced Configuration and Power Interface) Support

#

CONFIG_ACPI=y

CONFIG_ACPI_BOOT=y

CONFIG_ACPI_INTERPRETER=y

CONFIG_ACPI_SLEEP=y

CONFIG_ACPI_SLEEP_PROC_FS=y

CONFIG_ACPI_AC=m

CONFIG_ACPI_BATTERY=m

CONFIG_ACPI_BUTTON=m

CONFIG_ACPI_VIDEO=m

CONFIG_ACPI_FAN=m

CONFIG_ACPI_PROCESSOR=m

CONFIG_ACPI_THERMAL=m

# CONFIG_ACPI_ASUS is not set

# CONFIG_ACPI_IBM is not set

# CONFIG_ACPI_TOSHIBA is not set

CONFIG_ACPI_BLACKLIST_YEAR=0

# CONFIG_ACPI_DEBUG is not set

CONFIG_ACPI_BUS=y

CONFIG_ACPI_EC=y

CONFIG_ACPI_POWER=y

CONFIG_ACPI_PCI=y

CONFIG_ACPI_SYSTEM=y

# CONFIG_X86_PM_TIMER is not set

#

# APM (Advanced Power Management) BIOS Support

#

CONFIG_APM=m

# CONFIG_APM_IGNORE_USER_SUSPEND is not set

CONFIG_APM_DO_ENABLE=y

# CONFIG_APM_CPU_IDLE is not set

# CONFIG_APM_DISPLAY_BLANK is not set

CONFIG_APM_RTC_IS_GMT=y

CONFIG_APM_ALLOW_INTS=y

CONFIG_APM_REAL_MODE_POWER_OFF=y

#

# CPU Frequency scaling

#

# CONFIG_CPU_FREQ is not set

#

# Bus options (PCI, PCMCIA, EISA, MCA, ISA)

#

CONFIG_PCI=y

# CONFIG_PCI_GOBIOS is not set

# CONFIG_PCI_GOMMCONFIG is not set

# CONFIG_PCI_GODIRECT is not set

CONFIG_PCI_GOANY=y

CONFIG_PCI_BIOS=y

CONFIG_PCI_DIRECT=y

CONFIG_PCI_MMCONFIG=y

# CONFIG_PCI_MSI is not set

# CONFIG_PCI_LEGACY_PROC is not set

# CONFIG_PCI_NAMES is not set

# CONFIG_ISA is not set

# CONFIG_MCA is not set

# CONFIG_SCx200 is not set

#

# PCCARD (PCMCIA/CardBus) support

#

# CONFIG_PCCARD is not set

#

# PC-card bridges

#

#

# PCI Hotplug Support

#

# CONFIG_HOTPLUG_PCI is not set

#

# Executable file formats

#

CONFIG_BINFMT_ELF=y

CONFIG_BINFMT_AOUT=m

CONFIG_BINFMT_MISC=m

#

# Device Drivers

#

#

# Generic Driver Options

#

CONFIG_STANDALONE=y

CONFIG_PREVENT_FIRMWARE_BUILD=y

CONFIG_FW_LOADER=m

#

# Memory Technology Devices (MTD)

#

# CONFIG_MTD is not set

#

# Parallel port support

#

# CONFIG_PARPORT is not set

#

# Plug and Play support

#

# CONFIG_PNP is not set

#

# Block devices

#

# CONFIG_BLK_DEV_FD is not set

# CONFIG_BLK_CPQ_DA is not set

# CONFIG_BLK_CPQ_CISS_DA is not set

# CONFIG_BLK_DEV_DAC960 is not set

# CONFIG_BLK_DEV_UMEM is not set

CONFIG_BLK_DEV_LOOP=m

# CONFIG_BLK_DEV_CRYPTOLOOP is not set

CONFIG_BLK_DEV_NBD=m

# CONFIG_BLK_DEV_SX8 is not set

# CONFIG_BLK_DEV_UB is not set

CONFIG_BLK_DEV_RAM=m

CONFIG_BLK_DEV_RAM_COUNT=16

CONFIG_BLK_DEV_RAM_SIZE=4096

CONFIG_INITRAMFS_SOURCE=""

CONFIG_LBD=y

# CONFIG_CDROM_PKTCDVD is not set

#

# IO Schedulers

#

CONFIG_IOSCHED_NOOP=y

CONFIG_IOSCHED_AS=m

CONFIG_IOSCHED_DEADLINE=m

CONFIG_IOSCHED_CFQ=y

#

# ATA/ATAPI/MFM/RLL support

#

CONFIG_IDE=y

CONFIG_BLK_DEV_IDE=y

#

# Please see Documentation/ide.txt for help/info on IDE drives

#

# CONFIG_BLK_DEV_IDE_SATA is not set

# CONFIG_BLK_DEV_HD_IDE is not set

CONFIG_BLK_DEV_IDEDISK=y

CONFIG_IDEDISK_MULTI_MODE=y

CONFIG_BLK_DEV_IDECD=y

# CONFIG_BLK_DEV_IDETAPE is not set

# CONFIG_BLK_DEV_IDEFLOPPY is not set

# CONFIG_BLK_DEV_IDESCSI is not set

# CONFIG_IDE_TASK_IOCTL is not set

#

# IDE chipset support/bugfixes

#

CONFIG_IDE_GENERIC=y

# CONFIG_BLK_DEV_CMD640 is not set

CONFIG_BLK_DEV_IDEPCI=y

CONFIG_IDEPCI_SHARE_IRQ=y

# CONFIG_BLK_DEV_OFFBOARD is not set

CONFIG_BLK_DEV_GENERIC=y

# CONFIG_BLK_DEV_OPTI621 is not set

# CONFIG_BLK_DEV_RZ1000 is not set

CONFIG_BLK_DEV_IDEDMA_PCI=y

# CONFIG_BLK_DEV_IDEDMA_FORCED is not set

CONFIG_IDEDMA_PCI_AUTO=y

# CONFIG_IDEDMA_ONLYDISK is not set

# CONFIG_BLK_DEV_AEC62XX is not set

# CONFIG_BLK_DEV_ALI15X3 is not set

# CONFIG_BLK_DEV_AMD74XX is not set

# CONFIG_BLK_DEV_ATIIXP is not set

# CONFIG_BLK_DEV_CMD64X is not set

# CONFIG_BLK_DEV_TRIFLEX is not set

# CONFIG_BLK_DEV_CY82C693 is not set

# CONFIG_BLK_DEV_CS5520 is not set

# CONFIG_BLK_DEV_CS5530 is not set

# CONFIG_BLK_DEV_HPT34X is not set

# CONFIG_BLK_DEV_HPT366 is not set

# CONFIG_BLK_DEV_SC1200 is not set

# CONFIG_BLK_DEV_PIIX is not set

# CONFIG_BLK_DEV_NS87415 is not set

# CONFIG_BLK_DEV_PDC202XX_OLD is not set

# CONFIG_BLK_DEV_PDC202XX_NEW is not set

# CONFIG_BLK_DEV_SVWKS is not set

# CONFIG_BLK_DEV_SIIMAGE is not set

# CONFIG_BLK_DEV_SIS5513 is not set

# CONFIG_BLK_DEV_SLC90E66 is not set

# CONFIG_BLK_DEV_TRM290 is not set

CONFIG_BLK_DEV_VIA82CXXX=y

# CONFIG_IDE_ARM is not set

CONFIG_BLK_DEV_IDEDMA=y

# CONFIG_IDEDMA_IVB is not set

CONFIG_IDEDMA_AUTO=y

# CONFIG_BLK_DEV_HD is not set

#

# SCSI device support

#

CONFIG_SCSI=m

# CONFIG_SCSI_PROC_FS is not set

#

# SCSI support type (disk, tape, CD-ROM)

#

CONFIG_BLK_DEV_SD=m

# CONFIG_CHR_DEV_ST is not set

# CONFIG_CHR_DEV_OSST is not set

# CONFIG_BLK_DEV_SR is not set

# CONFIG_CHR_DEV_SG is not set

#

# Some SCSI devices (e.g. CD jukebox) support multiple LUNs

#

# CONFIG_SCSI_MULTI_LUN is not set

# CONFIG_SCSI_CONSTANTS is not set

# CONFIG_SCSI_LOGGING is not set

#

# SCSI Transport Attributes

#

# CONFIG_SCSI_SPI_ATTRS is not set

# CONFIG_SCSI_FC_ATTRS is not set

#

# SCSI low-level drivers

#

# CONFIG_BLK_DEV_3W_XXXX_RAID is not set

# CONFIG_SCSI_3W_9XXX is not set

# CONFIG_SCSI_ACARD is not set

# CONFIG_SCSI_AACRAID is not set

# CONFIG_SCSI_AIC7XXX is not set

# CONFIG_SCSI_AIC7XXX_OLD is not set

# CONFIG_SCSI_AIC79XX is not set

# CONFIG_SCSI_DPT_I2O is not set

# CONFIG_MEGARAID_NEWGEN is not set

# CONFIG_MEGARAID_LEGACY is not set

# CONFIG_SCSI_SATA is not set

# CONFIG_SCSI_BUSLOGIC is not set

# CONFIG_SCSI_DMX3191D is not set

# CONFIG_SCSI_EATA is not set

# CONFIG_SCSI_EATA_PIO is not set

# CONFIG_SCSI_FUTURE_DOMAIN is not set

# CONFIG_SCSI_GDTH is not set

# CONFIG_SCSI_IPS is not set

# CONFIG_SCSI_INITIO is not set

# CONFIG_SCSI_INIA100 is not set

# CONFIG_SCSI_SYM53C8XX_2 is not set

# CONFIG_SCSI_IPR is not set

# CONFIG_SCSI_QLOGIC_ISP is not set

# CONFIG_SCSI_QLOGIC_FC is not set

# CONFIG_SCSI_QLOGIC_1280 is not set

CONFIG_SCSI_QLA2XXX=m

# CONFIG_SCSI_QLA21XX is not set

# CONFIG_SCSI_QLA22XX is not set

# CONFIG_SCSI_QLA2300 is not set

# CONFIG_SCSI_QLA2322 is not set

# CONFIG_SCSI_QLA6312 is not set

# CONFIG_SCSI_QLA6322 is not set

# CONFIG_SCSI_DC395x is not set

# CONFIG_SCSI_DC390T is not set

# CONFIG_SCSI_NSP32 is not set

# CONFIG_SCSI_DEBUG is not set

#

# Multi-device support (RAID and LVM)

#

# CONFIG_MD is not set

#

# Fusion MPT device support

#

# CONFIG_FUSION is not set

#

# IEEE 1394 (FireWire) support

#

CONFIG_IEEE1394=m

#

# Subsystem Options

#

# CONFIG_IEEE1394_VERBOSEDEBUG is not set

# CONFIG_IEEE1394_OUI_DB is not set

# CONFIG_IEEE1394_EXTRA_CONFIG_ROMS is not set

#

# Device Drivers

#

# CONFIG_IEEE1394_PCILYNX is not set

CONFIG_IEEE1394_OHCI1394=m

#

# Protocol Drivers

#

CONFIG_IEEE1394_VIDEO1394=m

CONFIG_IEEE1394_SBP2=m

CONFIG_IEEE1394_SBP2_PHYS_DMA=y

# CONFIG_IEEE1394_ETH1394 is not set

CONFIG_IEEE1394_DV1394=m

CONFIG_IEEE1394_RAWIO=m

CONFIG_IEEE1394_CMP=m

CONFIG_IEEE1394_AMDTP=m

#

# I2O device support

#

# CONFIG_I2O is not set

#

# Networking support

#

CONFIG_NET=y

#

# Networking options

#

CONFIG_PACKET=y

CONFIG_PACKET_MMAP=y

# CONFIG_NETLINK_DEV is not set

CONFIG_UNIX=y

# CONFIG_NET_KEY is not set

CONFIG_INET=y

# CONFIG_IP_MULTICAST is not set

# CONFIG_IP_ADVANCED_ROUTER is not set

# CONFIG_IP_PNP is not set

# CONFIG_NET_IPIP is not set

# CONFIG_NET_IPGRE is not set

# CONFIG_ARPD is not set

# CONFIG_SYN_COOKIES is not set

# CONFIG_INET_AH is not set

# CONFIG_INET_ESP is not set

# CONFIG_INET_IPCOMP is not set

# CONFIG_INET_TUNNEL is not set

# CONFIG_IP_TCPDIAG is not set

# CONFIG_IP_TCPDIAG_IPV6 is not set

# CONFIG_IPV6 is not set

# CONFIG_NETFILTER is not set

#

# SCTP Configuration (EXPERIMENTAL)

#

# CONFIG_IP_SCTP is not set

# CONFIG_ATM is not set

# CONFIG_BRIDGE is not set

# CONFIG_VLAN_8021Q is not set

# CONFIG_DECNET is not set

# CONFIG_LLC2 is not set

# CONFIG_IPX is not set

# CONFIG_ATALK is not set

# CONFIG_X25 is not set

# CONFIG_LAPB is not set

# CONFIG_NET_DIVERT is not set

# CONFIG_ECONET is not set

# CONFIG_WAN_ROUTER is not set

#

# QoS and/or fair queueing

#

# CONFIG_NET_SCHED is not set

# CONFIG_NET_CLS_ROUTE is not set

#

# Network testing

#

# CONFIG_NET_PKTGEN is not set

# CONFIG_NETPOLL is not set

# CONFIG_NET_POLL_CONTROLLER is not set

# CONFIG_HAMRADIO is not set

# CONFIG_IRDA is not set

[b]CONFIG_BT=m

CONFIG_BT_L2CAP=m

CONFIG_BT_SCO=m

CONFIG_BT_RFCOMM=m

CONFIG_BT_RFCOMM_TTY=y

CONFIG_BT_BNEP=m

CONFIG_BT_BNEP_MC_FILTER=y

CONFIG_BT_BNEP_PROTO_FILTER=y

CONFIG_BT_HIDP=m

#

# Bluetooth device drivers

#

CONFIG_BT_HCIUSB=m

CONFIG_BT_HCIUSB_SCO=y

# CONFIG_BT_HCIUART is not set

# CONFIG_BT_HCIBCM203X is not set

# CONFIG_BT_HCIBPA10X is not set

# CONFIG_BT_HCIBFUSB is not set

# CONFIG_BT_HCIVHCI is not set[/b]

CONFIG_NETDEVICES=y

CONFIG_DUMMY=m

# CONFIG_BONDING is not set

# CONFIG_EQUALIZER is not set

CONFIG_TUN=m

#

# ARCnet devices

#

# CONFIG_ARCNET is not set

#

# Ethernet (10 or 100Mbit)

#

CONFIG_NET_ETHERNET=y

CONFIG_MII=m

# CONFIG_HAPPYMEAL is not set

# CONFIG_SUNGEM is not set

# CONFIG_NET_VENDOR_3COM is not set

#

# Tulip family network device support

#

# CONFIG_NET_TULIP is not set

# CONFIG_HP100 is not set

CONFIG_NET_PCI=y

# CONFIG_PCNET32 is not set

# CONFIG_AMD8111_ETH is not set

# CONFIG_ADAPTEC_STARFIRE is not set

# CONFIG_B44 is not set

# CONFIG_FORCEDETH is not set

# CONFIG_DGRS is not set

# CONFIG_EEPRO100 is not set

CONFIG_E100=m

CONFIG_E100_NAPI=y

# CONFIG_FEALNX is not set

# CONFIG_NATSEMI is not set

# CONFIG_NE2K_PCI is not set

# CONFIG_8139CP is not set

# CONFIG_8139TOO is not set

# CONFIG_SIS900 is not set

# CONFIG_EPIC100 is not set

# CONFIG_SUNDANCE is not set

# CONFIG_TLAN is not set

# CONFIG_VIA_RHINE is not set

#

# Ethernet (1000 Mbit)

#

# CONFIG_ACENIC is not set

# CONFIG_DL2K is not set

# CONFIG_E1000 is not set

# CONFIG_NS83820 is not set

# CONFIG_HAMACHI is not set

# CONFIG_YELLOWFIN is not set

# CONFIG_R8169 is not set

# CONFIG_SK98LIN is not set

# CONFIG_VIA_VELOCITY is not set

# CONFIG_TIGON3 is not set

#

# Ethernet (10000 Mbit)

#

# CONFIG_IXGB is not set

# CONFIG_S2IO is not set

#

# Token Ring devices

#

# CONFIG_TR is not set

#

# Wireless LAN (non-hamradio)

#

# CONFIG_NET_RADIO is not set

#

# Wan interfaces

#

# CONFIG_WAN is not set

# CONFIG_FDDI is not set

# CONFIG_HIPPI is not set

# CONFIG_PPP is not set

# CONFIG_SLIP is not set

# CONFIG_NET_FC is not set

# CONFIG_SHAPER is not set

# CONFIG_NETCONSOLE is not set

#

# ISDN subsystem

#

# CONFIG_ISDN is not set

#

# Telephony Support

#

# CONFIG_PHONE is not set

#

# Input device support

#

CONFIG_INPUT=y

#

# Userland interfaces

#

CONFIG_INPUT_MOUSEDEV=y

# CONFIG_INPUT_MOUSEDEV_PSAUX is not set

CONFIG_INPUT_MOUSEDEV_SCREEN_X=1280

CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1024

# CONFIG_INPUT_JOYDEV is not set

# CONFIG_INPUT_TSDEV is not set

# CONFIG_INPUT_EVDEV is not set

# CONFIG_INPUT_EVBUG is not set

#

# Input I/O drivers

#

# CONFIG_GAMEPORT is not set

CONFIG_SOUND_GAMEPORT=y

CONFIG_SERIO=y

CONFIG_SERIO_I8042=y

# CONFIG_SERIO_SERPORT is not set

# CONFIG_SERIO_CT82C710 is not set

# CONFIG_SERIO_PCIPS2 is not set

# CONFIG_SERIO_RAW is not set

#

# Input Device Drivers

#

CONFIG_INPUT_KEYBOARD=y

CONFIG_KEYBOARD_ATKBD=y

# CONFIG_KEYBOARD_SUNKBD is not set

# CONFIG_KEYBOARD_LKKBD is not set

# CONFIG_KEYBOARD_XTKBD is not set

# CONFIG_KEYBOARD_NEWTON is not set

# CONFIG_INPUT_MOUSE is not set

# CONFIG_INPUT_JOYSTICK is not set

# CONFIG_INPUT_TOUCHSCREEN is not set

# CONFIG_INPUT_MISC is not set

#

# Character devices

#

CONFIG_VT=y

CONFIG_VT_CONSOLE=y

CONFIG_HW_CONSOLE=y

CONFIG_INOTIFY=y

# CONFIG_SERIAL_NONSTANDARD is not set

#

# Serial drivers

#

# CONFIG_SERIAL_8250 is not set

#

# Non-8250 serial port support

#

CONFIG_UNIX98_PTYS=y

# CONFIG_LEGACY_PTYS is not set

#

# IPMI

#

# CONFIG_IPMI_HANDLER is not set

#

# Watchdog Cards

#

# CONFIG_WATCHDOG is not set

CONFIG_HW_RANDOM=m

# CONFIG_NVRAM is not set

CONFIG_RTC=y

# CONFIG_R3964 is not set

# CONFIG_APPLICOM is not set

# CONFIG_SONYPI is not set

#

# Ftape, the floppy tape device driver

#

CONFIG_AGP=y

# CONFIG_AGP_ALI is not set

# CONFIG_AGP_ATI is not set

# CONFIG_AGP_AMD is not set

# CONFIG_AGP_AMD64 is not set

# CONFIG_AGP_INTEL is not set

# CONFIG_AGP_INTEL_MCH is not set

# CONFIG_AGP_NVIDIA is not set

# CONFIG_AGP_SIS is not set

# CONFIG_AGP_SWORKS is not set

CONFIG_AGP_VIA=y

# CONFIG_AGP_EFFICEON is not set

CONFIG_DRM=y

# CONFIG_DRM_TDFX is not set

# CONFIG_DRM_R128 is not set

CONFIG_DRM_RADEON=y

# CONFIG_DRM_MGA is not set

# CONFIG_DRM_SIS is not set

# CONFIG_MWAVE is not set

# CONFIG_RAW_DRIVER is not set

CONFIG_HPET=y

# CONFIG_HPET_RTC_IRQ is not set

CONFIG_HPET_MMAP=y

# CONFIG_HANGCHECK_TIMER is not set

#

# I2C support

#

CONFIG_I2C=y

CONFIG_I2C_CHARDEV=m

#

# I2C Algorithms

#

CONFIG_I2C_ALGOBIT=y

# CONFIG_I2C_ALGOPCF is not set

# CONFIG_I2C_ALGOPCA is not set

#

# I2C Hardware Bus support

#

# CONFIG_I2C_ALI1535 is not set

# CONFIG_I2C_ALI1563 is not set

# CONFIG_I2C_ALI15X3 is not set

# CONFIG_I2C_AMD756 is not set

# CONFIG_I2C_AMD8111 is not set

# CONFIG_I2C_I801 is not set

# CONFIG_I2C_I810 is not set

CONFIG_I2C_ISA=m

# CONFIG_I2C_NFORCE2 is not set

# CONFIG_I2C_PARPORT_LIGHT is not set

# CONFIG_I2C_PIIX4 is not set

# CONFIG_I2C_PROSAVAGE is not set

# CONFIG_I2C_SAVAGE4 is not set

# CONFIG_SCx200_ACB is not set

# CONFIG_I2C_SIS5595 is not set

# CONFIG_I2C_SIS630 is not set

# CONFIG_I2C_SIS96X is not set

# CONFIG_I2C_STUB is not set

CONFIG_I2C_VIA=m

CONFIG_I2C_VIAPRO=m

# CONFIG_I2C_VOODOO3 is not set

# CONFIG_I2C_PCA_ISA is not set

#

# Hardware Sensors Chip support

#

CONFIG_I2C_SENSOR=m

# CONFIG_SENSORS_ADM1021 is not set

# CONFIG_SENSORS_ADM1025 is not set

# CONFIG_SENSORS_ADM1026 is not set

# CONFIG_SENSORS_ADM1031 is not set

# CONFIG_SENSORS_ASB100 is not set

# CONFIG_SENSORS_DS1621 is not set

# CONFIG_SENSORS_FSCHER is not set

# CONFIG_SENSORS_GL518SM is not set

# CONFIG_SENSORS_IT87 is not set

CONFIG_SENSORS_LM63=m

CONFIG_SENSORS_LM75=m

CONFIG_SENSORS_LM77=m

CONFIG_SENSORS_LM78=m

CONFIG_SENSORS_LM80=m

CONFIG_SENSORS_LM83=m

CONFIG_SENSORS_LM85=m

CONFIG_SENSORS_LM87=m

CONFIG_SENSORS_LM90=m

# CONFIG_SENSORS_MAX1619 is not set

# CONFIG_SENSORS_PC87360 is not set

# CONFIG_SENSORS_SMSC47M1 is not set

CONFIG_SENSORS_VIA686A=m

CONFIG_SENSORS_W83781D=m

CONFIG_SENSORS_W83L785TS=m

CONFIG_SENSORS_W83627HF=m

#

# Other I2C Chip support

#

# CONFIG_SENSORS_EEPROM is not set

# CONFIG_SENSORS_PCF8574 is not set

# CONFIG_SENSORS_PCF8591 is not set

# CONFIG_SENSORS_RTC8564 is not set

# CONFIG_I2C_DEBUG_CORE is not set

# CONFIG_I2C_DEBUG_ALGO is not set

# CONFIG_I2C_DEBUG_BUS is not set

# CONFIG_I2C_DEBUG_CHIP is not set

#

# Dallas's 1-wire bus

#

# CONFIG_W1 is not set

#

# Misc devices

#

# CONFIG_IBM_ASM is not set

#

# Multimedia devices

#

CONFIG_VIDEO_DEV=m

#

# Video For Linux

#

#

# Video Adapters

#

CONFIG_VIDEO_BT848=m

# CONFIG_VIDEO_CPIA is not set

# CONFIG_VIDEO_SAA5246A is not set

# CONFIG_VIDEO_SAA5249 is not set

# CONFIG_TUNER_3036 is not set

# CONFIG_VIDEO_STRADIS is not set

# CONFIG_VIDEO_ZORAN is not set

# CONFIG_VIDEO_SAA7134 is not set

# CONFIG_VIDEO_MXB is not set

# CONFIG_VIDEO_DPC is not set

# CONFIG_VIDEO_HEXIUM_ORION is not set

# CONFIG_VIDEO_HEXIUM_GEMINI is not set

# CONFIG_VIDEO_CX88 is not set

# CONFIG_VIDEO_OVCAMCHIP is not set

#

# Radio Adapters

#

# CONFIG_RADIO_GEMTEK_PCI is not set

# CONFIG_RADIO_MAXIRADIO is not set

# CONFIG_RADIO_MAESTRO is not set

#

# Digital Video Broadcasting Devices

#

# CONFIG_DVB is not set

CONFIG_VIDEO_TUNER=m

CONFIG_VIDEO_BUF=m

CONFIG_VIDEO_BTCX=m

CONFIG_VIDEO_IR=m

#

# Graphics support

#

CONFIG_FB=y

CONFIG_FB_MODE_HELPERS=y

# CONFIG_FB_TILEBLITTING is not set

# CONFIG_FB_CIRRUS is not set

# CONFIG_FB_PM2 is not set

# CONFIG_FB_CYBER2000 is not set

# CONFIG_FB_ASILIANT is not set

# CONFIG_FB_IMSTT is not set

# CONFIG_FB_VGA16 is not set

CONFIG_FB_VESA=y

# CONFIG_FB_VESA_STD is not set

CONFIG_FB_VESA_TNG=y

CONFIG_FB_VESA_DEFAULT_MODE="1280x1024@60"

CONFIG_VIDEO_SELECT=y

# CONFIG_FB_HGA is not set

# CONFIG_FB_RIVA is not set

# CONFIG_FB_I810 is not set

# CONFIG_FB_INTEL is not set

# CONFIG_FB_MATROX is not set

# CONFIG_FB_RADEON_OLD is not set

CONFIG_FB_RADEON=y

CONFIG_FB_RADEON_I2C=y

# CONFIG_FB_RADEON_DEBUG is not set

# CONFIG_FB_ATY128 is not set

# CONFIG_FB_ATY is not set

# CONFIG_FB_SAVAGE is not set

# CONFIG_FB_SIS is not set

# CONFIG_FB_NEOMAGIC is not set

# CONFIG_FB_KYRO is not set

# CONFIG_FB_3DFX is not set

# CONFIG_FB_VOODOO1 is not set

# CONFIG_FB_TRIDENT is not set

# CONFIG_FB_VIRTUAL is not set

#

# Console display driver support

#

CONFIG_VGA_CONSOLE=y

CONFIG_DUMMY_CONSOLE=y

CONFIG_FRAMEBUFFER_CONSOLE=y

# CONFIG_FONTS is not set

CONFIG_FONT_8x8=y

CONFIG_FONT_8x16=y

#

# Logo configuration

#

CONFIG_LOGO=y

# CONFIG_LOGO_LINUX_MONO is not set

# CONFIG_LOGO_LINUX_VGA16 is not set

CONFIG_LOGO_LINUX_CLUT224=y

# CONFIG_FB_SPLASH is not set

#

# Speakup console speech

#

# CONFIG_SPEAKUP is not set

CONFIG_SPEAKUP_DEFAULT="none"

#

# Sound

#

CONFIG_SOUND=m

#

# Advanced Linux Sound Architecture

#

CONFIG_SND=m

CONFIG_SND_TIMER=m

CONFIG_SND_PCM=m

CONFIG_SND_HWDEP=m

CONFIG_SND_RAWMIDI=m

CONFIG_SND_SEQUENCER=m

# CONFIG_SND_SEQ_DUMMY is not set

CONFIG_SND_OSSEMUL=y

CONFIG_SND_MIXER_OSS=m

CONFIG_SND_PCM_OSS=m

CONFIG_SND_SEQUENCER_OSS=y

CONFIG_SND_RTCTIMER=m

# CONFIG_SND_VERBOSE_PRINTK is not set

# CONFIG_SND_DEBUG is not set

#

# Generic devices

#

# CONFIG_SND_DUMMY is not set

# CONFIG_SND_VIRMIDI is not set

# CONFIG_SND_MTPAV is not set

# CONFIG_SND_SERIAL_U16550 is not set

# CONFIG_SND_MPU401 is not set

#

# PCI devices

#

CONFIG_SND_AC97_CODEC=m

# CONFIG_SND_ALI5451 is not set

# CONFIG_SND_ATIIXP is not set

# CONFIG_SND_ATIIXP_MODEM is not set

# CONFIG_SND_AU8810 is not set

# CONFIG_SND_AU8820 is not set

# CONFIG_SND_AU8830 is not set

# CONFIG_SND_AZT3328 is not set

CONFIG_SND_BT87X=m

# CONFIG_SND_BT87X_OVERCLOCK is not set

# CONFIG_SND_CS46XX is not set

# CONFIG_SND_CS4281 is not set

CONFIG_SND_EMU10K1=m

# CONFIG_SND_KORG1212 is not set

# CONFIG_SND_MIXART is not set

# CONFIG_SND_NM256 is not set

# CONFIG_SND_RME32 is not set

# CONFIG_SND_RME96 is not set

# CONFIG_SND_RME9652 is not set

# CONFIG_SND_HDSP is not set

# CONFIG_SND_TRIDENT is not set

# CONFIG_SND_YMFPCI is not set

# CONFIG_SND_ALS4000 is not set

# CONFIG_SND_CMIPCI is not set

# CONFIG_SND_ENS1370 is not set

# CONFIG_SND_ENS1371 is not set

# CONFIG_SND_ES1938 is not set

# CONFIG_SND_ES1968 is not set

# CONFIG_SND_MAESTRO3 is not set

# CONFIG_SND_FM801 is not set

# CONFIG_SND_ICE1712 is not set

# CONFIG_SND_ICE1724 is not set

CONFIG_SND_INTEL8X0=m

# CONFIG_SND_INTEL8X0M is not set

# CONFIG_SND_SONICVIBES is not set

# CONFIG_SND_VIA82XX is not set

# CONFIG_SND_VX222 is not set

#

# USB devices

#

# CONFIG_SND_USB_AUDIO is not set

# CONFIG_SND_USB_USX2Y is not set

#

# Open Sound System

#

# CONFIG_SOUND_PRIME is not set

#

# USB support

#

[b]CONFIG_USB=m[/b]

# CONFIG_USB_DEBUG is not set

#

# Miscellaneous USB options

#

# CONFIG_USB_DEVICEFS is not set

# CONFIG_USB_BANDWIDTH is not set

# CONFIG_USB_DYNAMIC_MINORS is not set

# CONFIG_USB_SUSPEND is not set

# CONFIG_USB_OTG is not set

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB_ARCH_HAS_OHCI=y

#

# USB Host Controller Drivers

#

[b]CONFIG_USB_EHCI_HCD=m[/b]

# CONFIG_USB_EHCI_SPLIT_ISO is not set

# CONFIG_USB_EHCI_ROOT_HUB_TT is not set

# CONFIG_USB_OHCI_HCD is not set

[b]CONFIG_USB_UHCI_HCD=m[/b]

# CONFIG_USB_SL811_HCD is not set

#

# USB Device Class drivers

#

# CONFIG_USB_AUDIO is not set

#

# USB Bluetooth TTY can only be used with disabled Bluetooth subsystem

#

# CONFIG_USB_MIDI is not set

# CONFIG_USB_ACM is not set

CONFIG_USB_PRINTER=m

#

# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information

#

CONFIG_USB_STORAGE=m

# CONFIG_USB_STORAGE_DEBUG is not set

# CONFIG_USB_STORAGE_RW_DETECT is not set

# CONFIG_USB_STORAGE_DATAFAB is not set

# CONFIG_USB_STORAGE_FREECOM is not set

# CONFIG_USB_STORAGE_ISD200 is not set

# CONFIG_USB_STORAGE_DPCM is not set

# CONFIG_USB_STORAGE_HP8200e is not set

# CONFIG_USB_STORAGE_SDDR09 is not set

# CONFIG_USB_STORAGE_SDDR55 is not set

# CONFIG_USB_STORAGE_JUMPSHOT is not set

#

# USB Input Devices

#

[b]CONFIG_USB_HID=m

CONFIG_USB_HIDINPUT=y[/b]

# CONFIG_HID_FF is not set

[b]CONFIG_USB_HIDDEV=y[/b]

#

# USB HID Boot Protocol drivers

#

# CONFIG_USB_KBD is not set

# CONFIG_USB_MOUSE is not set

# CONFIG_USB_AIPTEK is not set

# CONFIG_USB_WACOM is not set

# CONFIG_USB_KBTAB is not set

# CONFIG_USB_POWERMATE is not set

# CONFIG_USB_MTOUCH is not set

# CONFIG_USB_EGALAX is not set

# CONFIG_USB_XPAD is not set

# CONFIG_USB_ATI_REMOTE is not set

#

# USB Imaging devices

#

# CONFIG_USB_MDC800 is not set

# CONFIG_USB_MICROTEK is not set

# CONFIG_USB_HPUSBSCSI is not set

#

# USB Multimedia devices

#

# CONFIG_USB_DABUSB is not set

# CONFIG_USB_VICAM is not set

# CONFIG_USB_DSBR is not set

# CONFIG_USB_IBMCAM is not set

# CONFIG_USB_KONICAWC is not set

# CONFIG_USB_OV511 is not set

# CONFIG_USB_SE401 is not set

# CONFIG_USB_SN9C102 is not set

# CONFIG_USB_STV680 is not set

#

# USB Network Adapters

#

# CONFIG_USB_CATC is not set

# CONFIG_USB_KAWETH is not set

# CONFIG_USB_PEGASUS is not set

# CONFIG_USB_RTL8150 is not set

# CONFIG_USB_USBNET is not set

#

# USB port drivers

#

#

# USB Serial Converter support

#

# CONFIG_USB_SERIAL is not set

#

# USB Miscellaneous drivers

#

# CONFIG_USB_EMI62 is not set

# CONFIG_USB_EMI26 is not set

# CONFIG_USB_TIGL is not set

# CONFIG_USB_AUERSWALD is not set

# CONFIG_USB_RIO500 is not set

# CONFIG_USB_LEGOTOWER is not set

# CONFIG_USB_LCD is not set

# CONFIG_USB_LED is not set

# CONFIG_USB_CYTHERM is not set

# CONFIG_USB_PHIDGETKIT is not set

# CONFIG_USB_PHIDGETSERVO is not set

#

# USB ATM/DSL drivers

#

#

# USB Gadget Support

#

# CONFIG_USB_GADGET is not set

#

# MMC/SD Card support

#

# CONFIG_MMC is not set

#

# File systems

#

CONFIG_EXT2_FS=m

# CONFIG_EXT2_FS_XATTR is not set

CONFIG_EXT3_FS=y

# CONFIG_EXT3_FS_XATTR is not set

CONFIG_JBD=y

# CONFIG_JBD_DEBUG is not set

# CONFIG_REISERFS_FS is not set

# CONFIG_JFS_FS is not set

# CONFIG_XFS_FS is not set

# CONFIG_MINIX_FS is not set

# CONFIG_ROMFS_FS is not set

# CONFIG_QUOTA is not set

CONFIG_DNOTIFY=y

# CONFIG_AUTOFS_FS is not set

CONFIG_AUTOFS4_FS=m

#

# CD-ROM/DVD Filesystems

#

CONFIG_ISO9660_FS=m

CONFIG_JOLIET=y

# CONFIG_ZISOFS is not set

CONFIG_UDF_FS=m

CONFIG_UDF_NLS=y

#

# DOS/FAT/NT Filesystems

#

CONFIG_FAT_FS=m

CONFIG_MSDOS_FS=m

CONFIG_VFAT_FS=m

CONFIG_FAT_DEFAULT_CODEPAGE=850

CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"

CONFIG_NTFS_FS=m

# CONFIG_NTFS_DEBUG is not set

# CONFIG_NTFS_RW is not set

#

# Pseudo filesystems

#

CONFIG_PROC_FS=y

# CONFIG_PROC_KCORE is not set

CONFIG_SYSFS=y

# CONFIG_DEVFS_FS is not set

# CONFIG_DEVPTS_FS_XATTR is not set

CONFIG_TMPFS=y

# CONFIG_TMPFS_XATTR is not set

# CONFIG_HUGETLBFS is not set

# CONFIG_HUGETLB_PAGE is not set

CONFIG_RAMFS=y

#

# Miscellaneous filesystems

#

# CONFIG_ADFS_FS is not set

# CONFIG_AFFS_FS is not set

# CONFIG_HFS_FS is not set

# CONFIG_HFSPLUS_FS is not set

# CONFIG_BEFS_FS is not set

# CONFIG_BFS_FS is not set

# CONFIG_EFS_FS is not set

# CONFIG_CRAMFS is not set

# CONFIG_SQUASHFS is not set

# CONFIG_VXFS_FS is not set

# CONFIG_HPFS_FS is not set

# CONFIG_QNX4FS_FS is not set

# CONFIG_SYSV_FS is not set

# CONFIG_UFS_FS is not set

#

# Network File Systems

#

CONFIG_NFS_FS=m

# CONFIG_NFS_V3 is not set

# CONFIG_NFS_V4 is not set

# CONFIG_NFS_DIRECTIO is not set

# CONFIG_NFSD is not set

CONFIG_LOCKD=m

# CONFIG_EXPORTFS is not set

CONFIG_SUNRPC=m

# CONFIG_RPCSEC_GSS_KRB5 is not set

# CONFIG_RPCSEC_GSS_SPKM3 is not set

CONFIG_SMB_FS=m

CONFIG_SMB_NLS_DEFAULT=y

CONFIG_SMB_NLS_REMOTE="850"

CONFIG_CIFS=m

CONFIG_CIFS_STATS=y

# CONFIG_CIFS_XATTR is not set

# CONFIG_CIFS_EXPERIMENTAL is not set

# CONFIG_NCP_FS is not set

# CONFIG_CODA_FS is not set

# CONFIG_AFS_FS is not set

#

# Partition Types

#

# CONFIG_PARTITION_ADVANCED is not set

CONFIG_MSDOS_PARTITION=y

#

# Native Language Support

#

CONFIG_NLS=m

CONFIG_NLS_DEFAULT="iso8859-1"

CONFIG_NLS_CODEPAGE_437=m

# CONFIG_NLS_CODEPAGE_737 is not set

# CONFIG_NLS_CODEPAGE_775 is not set

CONFIG_NLS_CODEPAGE_850=m

# CONFIG_NLS_CODEPAGE_852 is not set

# CONFIG_NLS_CODEPAGE_855 is not set

# CONFIG_NLS_CODEPAGE_857 is not set

# CONFIG_NLS_CODEPAGE_860 is not set

# CONFIG_NLS_CODEPAGE_861 is not set

# CONFIG_NLS_CODEPAGE_862 is not set

# CONFIG_NLS_CODEPAGE_863 is not set

# CONFIG_NLS_CODEPAGE_864 is not set

# CONFIG_NLS_CODEPAGE_865 is not set

# CONFIG_NLS_CODEPAGE_866 is not set

# CONFIG_NLS_CODEPAGE_869 is not set

# CONFIG_NLS_CODEPAGE_936 is not set

# CONFIG_NLS_CODEPAGE_950 is not set

# CONFIG_NLS_CODEPAGE_932 is not set

# CONFIG_NLS_CODEPAGE_949 is not set

# CONFIG_NLS_CODEPAGE_874 is not set

# CONFIG_NLS_ISO8859_8 is not set

# CONFIG_NLS_CODEPAGE_1250 is not set

# CONFIG_NLS_CODEPAGE_1251 is not set

# CONFIG_NLS_ASCII is not set

CONFIG_NLS_ISO8859_1=m

# CONFIG_NLS_ISO8859_2 is not set

# CONFIG_NLS_ISO8859_3 is not set

# CONFIG_NLS_ISO8859_4 is not set

# CONFIG_NLS_ISO8859_5 is not set

# CONFIG_NLS_ISO8859_6 is not set

# CONFIG_NLS_ISO8859_7 is not set

# CONFIG_NLS_ISO8859_9 is not set

# CONFIG_NLS_ISO8859_13 is not set

# CONFIG_NLS_ISO8859_14 is not set

CONFIG_NLS_ISO8859_15=m

# CONFIG_NLS_KOI8_R is not set

# CONFIG_NLS_KOI8_U is not set

CONFIG_NLS_UTF8=m

#

# Profiling support

#

# CONFIG_PROFILING is not set

#

# Kernel hacking

#

# CONFIG_DEBUG_KERNEL is not set

# CONFIG_FRAME_POINTER is not set

CONFIG_EARLY_PRINTK=y

CONFIG_4KSTACKS=y

CONFIG_X86_FIND_SMP_CONFIG=y

CONFIG_X86_MPPARSE=y

#

# Security options

#

# CONFIG_KEYS is not set

# CONFIG_SECURITY is not set

#

# Cryptographic options

#

CONFIG_CRYPTO=y

# CONFIG_CRYPTO_HMAC is not set

# CONFIG_CRYPTO_NULL is not set

# CONFIG_CRYPTO_MD4 is not set

CONFIG_CRYPTO_MD5=m

# CONFIG_CRYPTO_SHA1 is not set

# CONFIG_CRYPTO_SHA256 is not set

# CONFIG_CRYPTO_SHA512 is not set

# CONFIG_CRYPTO_WP512 is not set

CONFIG_CRYPTO_DES=m

# CONFIG_CRYPTO_BLOWFISH is not set

# CONFIG_CRYPTO_TWOFISH is not set

# CONFIG_CRYPTO_SERPENT is not set

# CONFIG_CRYPTO_AES_586 is not set

# CONFIG_CRYPTO_CAST5 is not set

# CONFIG_CRYPTO_CAST6 is not set

# CONFIG_CRYPTO_TEA is not set

# CONFIG_CRYPTO_ARC4 is not set

# CONFIG_CRYPTO_KHAZAD is not set

# CONFIG_CRYPTO_ANUBIS is not set

# CONFIG_CRYPTO_DEFLATE is not set

# CONFIG_CRYPTO_MICHAEL_MIC is not set

CONFIG_CRYPTO_CRC32C=m

# CONFIG_CRYPTO_TEST is not set

#

# Library routines

#

CONFIG_CRC_CCITT=m

CONFIG_CRC32=y

CONFIG_LIBCRC32C=m

CONFIG_GENERIC_HARDIRQS=y

CONFIG_GENERIC_IRQ_PROBE=y

CONFIG_X86_SMP=y

CONFIG_X86_HT=y

CONFIG_X86_BIOS_REBOOT=y

CONFIG_X86_TRAMPOLINE=y

CONFIG_PC=y
```

/etc/conf.d/bluetooth

```

# Bluetooth configuraton file

# Start of hcid (allowed values are "true" and "false")

HCID_ENABLE=true

# Config file for hcid

HCID_CONFIG="/etc/bluetooth/hcid.conf"

# Start sdpd (allowed values are "true" and "false")

SDPD_ENABLE=true

# Start hidd (allowed values are "true" and "false")

HIDD_ENABLE=true

# Arguments to hidd

HIDD_OPTIONS=""

# Run hid2hci (allowed values are "true" and "false")

HID2HCI_ENABLE=true

# Bind rfcomm devices (allowed values are "true" and "false")

RFCOMM_ENABLE=true

# Config file for rfcomm

RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"

# Start dund (allowed values are "true" and "false")

DUND_ENABLE=true

# Arguments to dund

DUND_OPTIONS="--listen --persist"

# Start pand (allowed values are "true" and "false")

PAND_ENABLE=true

# Arguments to pand

PAND_OPTIONS="--listen --role NAP"
```

/etc/init.d/bluetooth

```
#!/sbin/runscript

# Copyright 1999-2004 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez-utils/files/2.10-r1/bluetooth.rc,v 1.3 2004/10/22 07:53:01 liquidx Exp $

UART_CONF="/etc/bluetooth/uart"

depend() {

   after hotplug

}

start_uarts() {

   [ -f /usr/sbin/hciattach -a -f ${UART_CONF} ] || return

   grep -v '^#' ${UART_CONF} | while read i; do

      /usr/sbin/hciattach $i

   done      

}

stop_uarts() {

   killall hciattach > /dev/null 2>&1

}

start() {

      ebegin "Starting Bluetooth"

   if [ "${HCID_ENABLE}" = "true" -a -x /usr/sbin/hcid ]; then

      if [ -f "${HCID_CONFIG}" ]; then

         ebegin "    Starting hcid"

         start-stop-daemon --start --quiet \

            --exec /usr/sbin/hcid -- -f $HCID_CONFIG

         eend $?

       else

         ewarn "Not enabling hcid because HCID_CONFIG is missing."

       fi

   fi

   

   if [ "${SDPD_ENABLE}" = "true" -a -x /usr/sbin/sdpd ]; then

      ebegin "    Starting sdpd"

      start-stop-daemon --start --quiet --exec /usr/sbin/sdpd

      eend $?

   fi

   

   if [ "${HIDD_ENABLE}" = "true" -a -x /usr/bin/hidd ]; then

      ebegin "    Starting hidd"

      start-stop-daemon --start --quiet \

         --exec /usr/bin/hidd -- ${HIDD_OPTIONS} --server

      eend $?

   fi

   if [ "${HID2HCI_ENABLE}" = "true" -a -x /usr/sbin/hid2hci ]; then

      ebegin "    Running hid2hci"

      /usr/sbin/hid2hci -0 -q    #be quiet

      eend $?

   fi

   if [ "${RFCOMM_ENABLE}" = "true" -a -x /usr/bin/rfcomm ]; then

      if [ -f "${RFCOMM_CONFIG}" ]; then

         ebegin "    Starting rfcomm"

         /usr/bin/rfcomm -f ${RFCOMM_CONFIG} bind all

         eend $?

      else

         ewarn "Not enabling rfcomm because RFCOMM_CONFIG does not exists"

      fi

   fi

   if [ "${DUND_ENABLE}" = "true" -a -x /usr/bin/dund ]; then

      if [ -n "${DUND_OPTIONS}" ]; then

         ebegin "    Starting dund"

         start-stop-daemon --start --quiet \

            --exec /usr/bin/dund -- ${DUND_OPTIONS}

         eend $?

      else

         ewarn "Not starting dund because DUND_OPTIONS not defined."

      fi

   fi

   if [ "${PAND_ENABLE}" = "true" -a -x /usr/bin/pand ]; then

      if [ -n "${PAND_OPTIONS}" ]; then

         ebegin "    Starting pand"

         start-stop-daemon --start --quiet \

            --exec /usr/bin/pand -- ${PAND_OPTIONS}

         eend $?

      else

         ewarn "Not starting pand because PAND_OPTIONS not defined."

      fi

   fi

   start_uarts

   eend 0

}

   

stop() {

   ebegin "Shutting down Bluetooth"

   if [ "${PAND_ENABLE}" = "true" -a -x /usr/bin/pand ]; then

      ebegin "    Stopping pand"

      start-stop-daemon --stop --quiet --exec /usr/bin/pand

      eend $?

   fi

   if [ "${DUND_ENABLE}" = "true" -a -x /usr/bin/dund ]; then

      ebegin "    Stopping dund"

      start-stop-daemon --stop --quiet --exec /usr/bin/dund

      eend $?

   fi

   if [ "${RFCOMM_ENABLE}" = "true" -a -x /usr/bin/rfcomm ]; then

      ebegin "    Stopping rfcomm"

      /usr/bin/rfcomm release all

      eend $?

   fi

   if [ "${HIDD_ENABLE}" = "true" -a -x /usr/bin/hidd ]; then

      ebegin "    Stopping hidd"

      start-stop-daemon --stop --quiet --exec /usr/bin/hidd

      eend $?   

   fi

   if [ "${SDPD_ENABLE}" = "true" -a -x /usr/sbin/sdpd ]; then

      ebegin "    Stopping sdpd"

      start-stop-daemon --stop --quiet --exec /usr/sbin/sdpd

      eend $?

   fi

   if [ "${HCID_ENABLE}" = "true" -a -x /usr/sbin/hcid ]; then

      ebegin "    Stopping hcid"

      start-stop-daemon --stop --quiet --exec /usr/sbin/hcid

      eend $?

   fi

      

   stop_uarts

   eend 0

}

restart() {

   svc_stop

   svc_start

}
```

/etc/bluetooth/hcid.conf

```
#

# HCI daemon configuration file.

#

# $Id: hcid.conf,v 1.6 2004/10/26 02:31:22 holtmann Exp $

#

# HCId options

options {

   # Automatically initialize new devices

   autoinit yes;

   # Security Manager mode

   #   none - Security manager disabled

   #   auto - Use local PIN for incoming connections

   #   user - Always ask user for a PIN

   #

   security user;

   # Pairing mode

   #   none  - Pairing disabled

   #   multi - Allow pairing with already paired devices

   #   once  - Pair once and deny successive attempts

   pairing multi;

   # PIN helper

   pin_helper /usr/bin/bluepin;

   # D-Bus PIN helper

   #dbus_pin_helper;

}

# Default settings for HCI devices

device {

   # Local device name

   #   %d - device id

   #   %h - host name

   name "BlueZ (%d)";

   # Local device class

   class 0x3e0100;

   # Default packet type

   #pkt_type DH1,DM1,HV1;

   # Inquiry and Page scan

   iscan enable; pscan enable;

   # Default link mode

   #   none   - no specific policy 

   #   accept - always accept incoming connections

   #   master - become master on incoming connections,

   #            deny role switch on outgoing connections

   #

   #lm accept,master;

   #

   lm accept;

   # Default link policy

   #   none    - no specific policy

   #   rswitch - allow role switch

   #   hold    - allow hold mode

   #   sniff   - allow sniff mode

   #   park    - allow park mode

   #

   #lp hold,sniff;

   #

   lp rswitch,hold,sniff,park;

   # Authentication and Encryption

   auth disable;

   #encrypt enable;

}
```

/etc/bluetooth/rfcomm.conf

```
#

# HCI daemon configuration file.

#

# $Id: hcid.conf,v 1.6 2004/10/26 02:31:22 holtmann Exp $

#

# HCId options

options {

   # Automatically initialize new devices

   autoinit yes;

   # Security Manager mode

   #   none - Security manager disabled

   #   auto - Use local PIN for incoming connections

   #   user - Always ask user for a PIN

   #

   security user;

   # Pairing mode

   #   none  - Pairing disabled

   #   multi - Allow pairing with already paired devices

   #   once  - Pair once and deny successive attempts

   pairing multi;

   # PIN helper

   pin_helper /usr/bin/bluepin;

   # D-Bus PIN helper

   #dbus_pin_helper;

}

# Default settings for HCI devices

device {

   # Local device name

   #   %d - device id

   #   %h - host name

   name "BlueZ (%d)";

   # Local device class

   class 0x3e0100;

   # Default packet type

   #pkt_type DH1,DM1,HV1;

   # Inquiry and Page scan

   iscan enable; pscan enable;

   # Default link mode

   #   none   - no specific policy 

   #   accept - always accept incoming connections

   #   master - become master on incoming connections,

   #            deny role switch on outgoing connections

   #

   #lm accept,master;

   #

   lm accept;

   # Default link policy

   #   none    - no specific policy

   #   rswitch - allow role switch

   #   hold    - allow hold mode

   #   sniff   - allow sniff mode

   #   park    - allow park mode

   #

   #lp hold,sniff;

   #

   lp rswitch,hold,sniff,park;

   # Authentication and Encryption

   auth disable;

   #encrypt enable;

}
```

/etc/modules.autoload.d/kernel-2.6

```
# /etc/modules.autoload.d/kernel-2.6:  kernel modules to load when system boots.

# $Header: /var/cvsroot/gentoo-src/rc-scripts/etc/modules.autoload.d/kernel-2.6,v 1.1 2003/07/16 18:13:45 azarah Exp $

#

# Note that this file is for 2.6 kernels.

#

# Add the names of modules that you'd like to load when the system

# starts into this file, one per line.  Comments begin with # and

# are ignored.  Read man modules.autoload for additional details.

# For example:

# 3c59x

e100

#uhci-hcd

#usbhid

bluetooth

#l2cap

sco

rfcomm

bnep

hidp

#hci_usb
```

output from dmesg

```
Linux version 2.6.10-gentoo-r7-djnauk-b02 (root@jonathan) (gcc version 3.3.5 (Gentoo Linux 3.3.5-r1, ssp-3.3.2-3, pie-8.7.7.1)) #4 SMP Mon Feb 14 19:37:20 GMT 2005

BIOS-provided physical RAM map:

 BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)

 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)

 BIOS-e820: 0000000000100000 - 000000001fff0000 (usable)

 BIOS-e820: 000000001fff0000 - 000000001fff3000 (ACPI NVS)

 BIOS-e820: 000000001fff3000 - 0000000020000000 (ACPI data)

 BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)

 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)

 BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)

511MB LOWMEM available.

On node 0 totalpages: 131056

  DMA zone: 4096 pages, LIFO batch:1

  Normal zone: 126960 pages, LIFO batch:16

  HighMem zone: 0 pages, LIFO batch:1

DMI 2.2 present.

ACPI: RSDP (v000 VIA694                                ) @ 0x000f7290

ACPI: RSDT (v001 VIA694 AWRDACPI 0x42302e31 AWRD 0x00000000) @ 0x1fff3000

ACPI: FADT (v001 VIA694 AWRDACPI 0x42302e31 AWRD 0x00000000) @ 0x1fff3040

ACPI: DSDT (v001 VIA694 AWRDACPI 0x00001000 MSFT 0x0100000d) @ 0x00000000

Built 1 zonelists

Kernel command line: root=/dev/hda2 video=radeonfb:1280x1024@60 quiet

Found and enabled local APIC!

mapped APIC to ffffd000 (fee00000)

Initializing CPU#0

CPU 0 irqstacks, hard=c0371000 soft=c0369000

PID hash table entries: 2048 (order: 11, 32768 bytes)

Detected 1734.930 MHz processor.

Using tsc for high-res timesource

Console: colour VGA+ 80x25

Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)

Memory: 515808k/524224k available (1715k kernel code, 7880k reserved, 536k data, 188k init, 0k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay loop... 3416.06 BogoMIPS (lpj=1708032)

Mount-cache hash table entries: 512 (order: 0, 4096 bytes)

CPU: After generic identify, caps: 0383fbff c1c3fbff 00000000 00000000

CPU: After vendor identify, caps:  0383fbff c1c3fbff 00000000 00000000

CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)

CPU: L2 Cache: 256K (64 bytes/line)

CPU: After all inits, caps:        0383fbff c1c3fbff 00000000 00000020

Intel machine check architecture supported.

Intel machine check reporting enabled on CPU#0.

Enabling fast FPU save and restore... done.

Enabling unmasked SIMD FPU exception support... done.

Checking 'hlt' instruction... OK.

ACPI: setting ELCR to 0200 (from 1e80)

CPU0: AMD Athlon(tm) XP 2100+ stepping 01

per-CPU timeslice cutoff: 731.70 usecs.

task migration cache decay timeout: 1 msecs.

SMP motherboard not detected.

Brought up 1 CPUs

CPU0:

 domain 0: span 01

  groups: 01

  domain 1: span 01

   groups: 01

NET: Registered protocol family 16

spurious 8259A interrupt: IRQ7.

PCI: PCI BIOS revision 2.10 entry at 0xfb640, last bus=1

PCI: Using configuration type 1

mtrr: v2.0 (20020519)

ACPI: Subsystem revision 20041105

ACPI: Interpreter enabled

ACPI: Using PIC for interrupt routing

ACPI: PCI Root Bridge [PCI0] (00:00)

PCI: Probing PCI hardware (bus 00)

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]

ACPI: PCI Interrupt Link [LNKA] (IRQs 1 3 4 5 6 7 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKB] (IRQs 1 3 4 5 6 7 10 11 *12 14 15)

ACPI: PCI Interrupt Link [LNKC] (IRQs 1 3 4 5 6 *7 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKD] (IRQs 1 3 4 5 6 7 *10 11 12 14 15)

ACPI: PCI Interrupt Link [ALKA] (IRQs 16 17 18 19 20 21 22 23) *0, disabled.

ACPI: PCI Interrupt Link [ALKB] (IRQs 16 17 18 19 20 21 22 23) *0, disabled.

ACPI: PCI Interrupt Link [ALKC] (IRQs 22) *0, disabled.

ACPI: PCI Interrupt Link [ALKD] (IRQs 21) *0, disabled.

PCI: Using ACPI for IRQ routing

** PCI interrupts are no longer routed automatically.  If this

** causes a device to stop working, it is probably because the

** driver failed to call pci_enable_device().  As a temporary

** workaround, the "pci=routeirq" argument restores the old

** behavior.  If this argument makes the device work again,

** please email the output of "lspci" to bjorn.helgaas@hp.com

** so I can fix the driver.

Initializing Cryptographic API

inotify device minor=63

Real Time Clock Driver v1.12

Linux agpgart interface v0.100 (c) Dave Jones

agpgart: Detected VIA KT266/KY266x/KT333 chipset

agpgart: Maximum main memory to use for agp memory: 439M

agpgart: AGP aperture is 64M @ 0xe8000000

ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11

PCI: setting IRQ 11 as level-triggered

ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 11 (level, low) -> IRQ 11

[drm] Initialized radeon 1.11.0 20020828 on minor 0: 

ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 11 (level, low) -> IRQ 11

radeonfb: Found Intel x86 BIOS ROM Image

radeonfb: Retreived PLL infos from BIOS

radeonfb: Reference=27.00 MHz (RefDiv=60) Memory=183.00 Mhz, System=183.00 MHz

radeonfb: PLL min 12000 max 35000

radeonfb: No connector info table detected

radeonfb: Monitor 1 type CRT found

radeonfb: EDID probed

Console: switching to colour frame buffer device 160x64

radeonfb: ATI Radeon QD  DDR SGRAM 64 MB

vesafb: ATI Technologies Inc., RG6 , 01.00 (OEM: ATI RAGE128)

vesafb: VBE version: 2.0

vesafb: protected mode interface info at c000:483c

vesafb: pmi: set display start = c00c48d0, set palette = c00c491c

vesafb: pmi: ports = 9010 9016 9054 9038 903c 905c 9000 9004 90b0 90b2 90b4 

vesafb: monitor limits: vf = 0 Hz, hf = 0 kHz, clk = 0 MHz

vesafb: scrolling: redraw

vesafb: cannot reserve video memory at 0xe0000000

vesafb: framebuffer at 0xe0000000, mapped to 0xe1900000, using 2560k, total 65536k

fb1: VESA VGA frame buffer device

serio: i8042 AUX port at 0x60,0x64 irq 12

serio: i8042 KBD port at 0x60,0x64 irq 1

mice: PS/2 mouse device common for all mice

input: AT Translated Set 2 keyboard on isa0060/serio0

io scheduler noop registered

io scheduler cfq registered

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx

VP_IDE: IDE controller at PCI slot 0000:00:11.1

ACPI: PCI interrupt 0000:00:11.1[A] -> GSI 11 (level, low) -> IRQ 11

VP_IDE: chipset revision 6

VP_IDE: not 100% native mode: will probe irqs later

VP_IDE: VIA vt8233a (rev 00) IDE UDMA133 controller on pci0000:00:11.1

    ide0: BM-DMA at 0xb400-0xb407, BIOS settings: hda:DMA, hdb:DMA

    ide1: BM-DMA at 0xb408-0xb40f, BIOS settings: hdc:DMA, hdd:DMA

Probing IDE interface ide0...

hda: Maxtor 6B200P0, ATA DISK drive

hdb: TDK CDRW241040B, ATAPI CD/DVD-ROM drive

elevator: using cfq as default io scheduler

ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

Probing IDE interface ide1...

hdc: Maxtor 6Y080P0, ATA DISK drive

hdd: _NEC DVD_RW ND-2510A, ATAPI CD/DVD-ROM drive

ide1 at 0x170-0x177,0x376 on irq 15

Probing IDE interface ide2...

ide2: Wait for ready failed before probe !

Probing IDE interface ide3...

ide3: Wait for ready failed before probe !

Probing IDE interface ide4...

ide4: Wait for ready failed before probe !

Probing IDE interface ide5...

ide5: Wait for ready failed before probe !

hda: max request size: 1024KiB

hda: 398297088 sectors (203928 MB) w/8192KiB Cache, CHS=24792/255/63, UDMA(133)

hda: cache flushes supported

 hda: hda1 hda2 hda3 hda4

hdc: max request size: 128KiB

hdc: 160086528 sectors (81964 MB) w/7936KiB Cache, CHS=65535/16/63, UDMA(133)

hdc: cache flushes supported

 hdc: hdc1 hdc2 hdc3

hdb: ATAPI 40X CD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)

Uniform CD-ROM driver Revision: 3.20

hdd: ATAPI 40X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(33)

NET: Registered protocol family 2

IP: routing cache hash table of 4096 buckets, 32Kbytes

TCP: Hash tables configured (established 32768 bind 32768)

NET: Registered protocol family 1

NET: Registered protocol family 17

ACPI wakeup devices: 

PCI0 USB0 USB1 

ACPI: (supports S0 S1 S4 S5)

kjournald starting.  Commit interval 5 seconds

EXT3-fs: mounted filesystem with ordered data mode.

VFS: Mounted root (ext3 filesystem) readonly.

Freeing unused kernel memory: 188k freed

Adding 1204864k swap on /dev/hdc3.  Priority:-1 extents:1

EXT3 FS on hda2, internal journal

e100: Intel(R) PRO/100 Network Driver, 3.2.3-k2-NAPI

e100: Copyright(c) 1999-2004 Intel Corporation

ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 10

PCI: setting IRQ 10 as level-triggered

ACPI: PCI interrupt 0000:00:0b.0[A] -> GSI 10 (level, low) -> IRQ 10

e100: eth0: e100_probe: addr 0xef020000, irq 10, MAC addr 00:02:B3:87:89:03

[b]Bluetooth: Core ver 2.7

NET: Registered protocol family 31

Bluetooth: HCI device and connection manager initialized

Bluetooth: HCI socket layer initialized

Bluetooth: SCO (Voice Link) ver 0.4

Bluetooth: SCO socket layer initialized

Bluetooth: L2CAP ver 2.7

Bluetooth: L2CAP socket layer initialized

Bluetooth: RFCOMM ver 1.5

Bluetooth: RFCOMM socket layer initialized

Bluetooth: RFCOMM TTY layer initialized

Bluetooth: BNEP (Ethernet Emulation) ver 1.2

Bluetooth: BNEP filters: protocol multicast

Bluetooth: HIDP (Human Interface Emulation) ver 1.1-mh1[/b]

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hda3, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

EXT3-fs warning: maximal mount count reached, running e2fsck is recommended

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hda4, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

EXT3-fs warning: maximal mount count reached, running e2fsck is recommended

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hdc1, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

EXT3-fs warning: maximal mount count reached, running e2fsck is recommended

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hdc2, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

[b]usbcore: registered new driver hub[/b]

EXT3 FS on hda2, internal journal

e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex

ACPI: PCI interrupt 0000:00:09.0[A] -> GSI 11 (level, low) -> IRQ 11

ISO 9660 Extensions: Microsoft Joliet Level 3

ISO 9660 Extensions: RRIP_1991A

[b]Bluetooth: HCI USB driver ver 2.8

usbcore: registered new driver hci_usb

USB Universal Host Controller Interface driver v2.2[/b]

ACPI: PCI interrupt 0000:00:10.0[A] -> GSI 10 (level, low) -> IRQ 10

uhci_hcd 0000:00:10.0: UHCI Host Controller

uhci_hcd 0000:00:10.0: irq 10, io base 0xac00

uhci_hcd 0000:00:10.0: new USB bus registered, assigned bus number 1

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 12

PCI: setting IRQ 12 as level-triggered

ACPI: PCI interrupt 0000:00:10.1[B] -> GSI 12 (level, low) -> IRQ 12

uhci_hcd 0000:00:10.1: UHCI Host Controller

uhci_hcd 0000:00:10.1: irq 12, io base 0xb000

uhci_hcd 0000:00:10.1: new USB bus registered, assigned bus number 2

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 2 ports detected

ACPI: PCI interrupt 0000:00:11.2[D] -> GSI 10 (level, low) -> IRQ 10

uhci_hcd 0000:00:11.2: UHCI Host Controller

uhci_hcd 0000:00:11.2: irq 10, io base 0xb800

uhci_hcd 0000:00:11.2: new USB bus registered, assigned bus number 3

hub 3-0:1.0: USB hub found

hub 3-0:1.0: 2 ports detected

ACPI: PCI interrupt 0000:00:11.3[D] -> GSI 10 (level, low) -> IRQ 10

uhci_hcd 0000:00:11.3: UHCI Host Controller

uhci_hcd 0000:00:11.3: irq 10, io base 0xbc00

uhci_hcd 0000:00:11.3: new USB bus registered, assigned bus number 4

hub 4-0:1.0: USB hub found

hub 4-0:1.0: 2 ports detected

usb 3-2: new full speed USB device using uhci_hcd and address 2

usb 4-1: new full speed USB device using uhci_hcd and address 2

hub 4-1:1.0: USB hub found

hub 4-1:1.0: 4 ports detected

usb 4-2: new full speed USB device using uhci_hcd and address 3

hub 4-2:1.0: USB hub found

hub 4-2:1.0: 2 ports detected

drivers/usb/class/usblp.c: Disabling reads from problem bidirectional printer on usblp0

drivers/usb/class/usblp.c: usblp0: USB Unidirectional printer dev 2 if 0 alt 1 proto 2 vid 0x03F0 pid 0x1104

usbcore: registered new driver usblp

drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver

usb 4-2.1: new low speed USB device using uhci_hcd and address 4

usbcore: registered new driver hiddev

[b]input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:11.3-2.1

input,hiddev96: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:11.3-2.1

usbcore: registered new driver usbhid[/b]

drivers/usb/input/hid-core.c: v2.0:USB HID core driver
```

output from /var/log/everything/current

```
Feb 16 15:28:23 [kernel] Linux version 2.6.10-gentoo-r7-djnauk-b02 (root@jonathan) (gcc version 3.3.5 (Gentoo Linux 3.3.5-r1, ssp-3.3.2-3, pie-8.7.7.1)) #4 SMP Mon Feb 14 19:37:20 GMT 2005

Feb 16 15:28:24 [kernel] ACPI: PCI interrupt 0000:00:09.0[A] -> GSI 11 (level, low) -> IRQ 11

[b]Feb 16 15:28:26 [hcid] Bluetooth HCI daemon

Feb 16 15:28:26 [sdpd] Bluetooth SDP daemon_

Feb 16 15:28:26 [hidd] Bluetooth HID daemon

Feb 16 15:28:26 [dund] Bluetooth DUN daemon version 2.12

Feb 16 15:28:26 [pand] Bluetooth PAN daemon version 2.12[/b]

  (cut)

[b]Feb 16 15:30:47 [kernel] Bluetooth: HCI USB driver ver 2.8[/b]

Feb 16 15:31:53 [kernel] USB Universal Host Controller Interface driver v2.2

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:10.0: irq 10, io base 0xac00

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:10.0: new USB bus registered, assigned bus number 1

Feb 16 15:31:53 [kernel] hub 1-0:1.0: USB hub found

Feb 16 15:31:53 [kernel] hub 1-0:1.0: 2 ports detected

Feb 16 15:31:53 [kernel] ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 12

Feb 16 15:31:53 [kernel] PCI: setting IRQ 12 as level-triggered

Feb 16 15:31:53 [kernel] ACPI: PCI interrupt 0000:00:10.1[B] -> GSI 12 (level, low) -> IRQ 12

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:10.1: UHCI Host Controller

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:10.1: irq 12, io base 0xb000

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:10.1: new USB bus registered, assigned bus number 2

Feb 16 15:31:53 [kernel] hub 2-0:1.0: USB hub found

Feb 16 15:31:53 [kernel] hub 2-0:1.0: 2 ports detected

Feb 16 15:31:53 [kernel] ACPI: PCI interrupt 0000:00:11.2[D] -> GSI 10 (level, low) -> IRQ 10

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.2: UHCI Host Controller

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.2: irq 10, io base 0xb800

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.2: new USB bus registered, assigned bus number 3

Feb 16 15:31:53 [kernel] hub 3-0:1.0: USB hub found

Feb 16 15:31:53 [kernel] hub 3-0:1.0: 2 ports detected

Feb 16 15:31:53 [kernel] ACPI: PCI interrupt 0000:00:11.3[D] -> GSI 10 (level, low) -> IRQ 10

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.3: UHCI Host Controller

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.3: irq 10, io base 0xbc00

Feb 16 15:31:53 [kernel] uhci_hcd 0000:00:11.3: new USB bus registered, assigned bus number 4

Feb 16 15:31:53 [kernel] hub 4-0:1.0: USB hub found

Feb 16 15:31:53 [kernel] hub 4-0:1.0: 2 ports detected

Feb 16 15:31:54 [kernel] usb 3-2: new full speed USB device using uhci_hcd and address 2

Feb 16 15:31:54 [kernel] usb 4-1: new full speed USB device using uhci_hcd and address 2

Feb 16 15:31:54 [kernel] hub 4-1:1.0: USB hub found

Feb 16 15:31:54 [kernel] hub 4-1:1.0: 4 ports detected

Feb 16 15:31:55 [kernel] usb 4-2: new full speed USB device using uhci_hcd and address 3

Feb 16 15:31:55 [kernel] hub 4-2:1.0: USB hub found

Feb 16 15:31:55 [kernel] hub 4-2:1.0: 2 ports detected

Feb 16 15:31:55 [kernel] drivers/usb/class/usblp.c: Disabling reads from problem bidirectional printer on usblp0

Feb 16 15:31:55 [kernel] drivers/usb/class/usblp.c: usblp0: USB Unidirectional printer dev 2 if 0 alt 1 proto 2 vid 0x03F0 pid 0x1104

Feb 16 15:31:55 [kernel] usb 4-2.1: new low speed USB device using uhci_hcd and address 4

Feb 16 15:31:56 [hal.hotplug] DEVPATH is not set

Feb 16 15:31:56 [kernel] usbcore: registered new driver hiddev

[b]Feb 16 15:31:56 [kernel] input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:11.3-2.1[/b]

Feb 16 15:31:56 [hal.hotplug] DEVPATH is not set

[b]Feb 16 15:31:56 [kernel] input,hiddev96: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:11.3-2.1[/b]
```

Someone please tell me how to sort it out?? I'm stuck.

----------

## djnauk

OK. I've fixed it now!  :Smile: 

I added all the bluetooth and usb stuff directly into the kernel (not as modules, but i think the bit that did it was added usbfs to the kernel - i'd never used it, so never installed it). Seams that usbfs may be a requirement to using hid/hci?

I'll post my .config up for anyone if they want it?

----------

## djnauk

I was a bit premature on that last reply!  :Smile: 

It seams that the devices won't come out of boot-protocl mode once they've gone into HCI. I've recently upgraded the kernel (now 2.6.11-gentoo) and patched with the patch-2.6.11-mh1.gz patch from bluez.org. Kernel compiles and runs fine, and I can type away to my hearts contents.

Bluethooth is working fine. I can get my phones to talk back and fore to the system without a problem. I just can't use the extra buttons (or the scrollwheel) on the mouse, and any of the side 'extra' buttons don't work and the F-Lock key doesn't work. If the keyboard doesn't have it lit when it's booting, you can't use any of the Fx keys!  :Sad: 

Anyone have any idea on how to tell the system to setup the keyboard so it's not in boot-protocol any more?

----------

## Treo

Hi,

I just got my diNovo and everything is working really nice, bluetooth mode is on, kernel is all set, I can talk to my PDA phone, my keyboard works with the PDA phone (which is awesome by the way)... the mouse had some problems, the settings you have with ZAxis being 7 and 8 didn´t work, 4 5 work though. The only major problem I am having is with the keyboard, the special keys are not recognized at all, neither on the keyboard nor on the media pad. xev shows no event whatsoever. I´ve tried around with kernel options, no change. The strange thing is though that it works fine in USB mode, just like my old Logitech iTouch. I did all the mods to the xorg files, but that didn´t help. I use kde so I set it there, nothing either. I´ve even tried lineakd, didn´t work either... well, I kinda though so after xev wouldn´t show anything. I don´t know what to try from here... anyone else with this problem? Any solutions? Idea?

Thanks, Treo

----------

## djnauk

I think you've got the same problem as me. When you run hidd (no options) on the command line, do you get three entires saying 'Boot Protocol'? I can't show you mine atm, as I'm running in HID mode, not HCI.

----------

## Treo

Hi,

jap... got the same exact problem...

 *Quote:*   

> 
> 
> 00:07:61:1D:3E:C3 HID Boot Device [046d:b001] connected [boot-protocol]
> 
> 00:07:61:1C:EA:04 HID Boot Device [046d:b303] connected [boot-protocol]
> ...

 

The question is how to change that... at least manually for now... I tried 2.6.10-r6 and now 2.6.11-r4, neither one works properly...

I´ve searched google but I didn´t find anything useful... any ideas?

Treo

----------

## djnauk

It's something that's been bugging me for a while as well. I've tried during and after booting switching it over - no effect. It's just ironic that in bluetooth mode it'll work great with everything except that which is came and was designed to work with!  :Confused: 

----------

## Treo

Well, in the hopes of thinking it might be the logitech proprietary transmitter, I tried my Anycom 240 (pretty much the best USB Bluetooth dongle you can buy), same outcome... I upgraded everything to 2.15 from 2.10... nothing... I come to think that this might be a kernel issue... what kernel are you using? I run gentoo-dev-sources-2.6.11-r4 without the extra -mh patch from bluez.org... seems to be already in it anyways...

I´ll see if I can submit something to them directly... hopefully they can fix it...

Treo

----------

## djnauk

I'm currently using the 2.6.11-gentoo kernel, although I have tried the 2.6.10-gentoo-r{7,8} version before that, all with the mh patch applied (versions 1 and 4 respectivley). I've look around on the web myself, but can't seam to find anything about boot-protocol toubles in hci mode.

----------

## Treo

I just posted to their mailinglist... hopefully someone their knows something... the only step up from that would be the developers ML... but I´ll only go there once everything else fails.

Treo

----------

## Treo

Hi,

I got a solution, directly from the developer. Apparently, mode discovery was disabled in the previous patches, now -mh2 is available on www.bluez.org, released just a couple of minutes ago. Download it, apply it, recompile the kernel and enjoy... you might have to reconnect the devices, but once that´s done, you are good.

There is still an issue with the ¨F-Lock¨ key and my ¨´¨... the first doesn´t work at all, for the second to appear I have to hit the key twice... and it isn´t the regular apostrophe either. But that might be more of a mapping issue...

Treo

----------

## djnauk

 *Treo wrote:*   

> I got a solution, directly from the developer. Apparently, mode discovery was disabled in the previous patches, now -mh2 is available on www.bluez.org, released just a couple of minutes ago. Download it, apply it, recompile the kernel and enjoy... you might have to reconnect the devices, but once that´s done, you are good.
> 
> There is still an issue with the ¨F-Lock¨ key and my ¨´¨... the first doesn´t work at all, for the second to appear I have to hit the key twice... and it isn´t the regular apostrophe either. But that might be more of a mapping issue...

 

Brilliant!  :Very Happy:  It's working like a charm. I can now send/recieve files to and from my phones all the while controlling the volumne via my keyboard. Not much to ask for really?  :Very Happy: 

I don't have the ¨´¨ key, so I can't backup ur problem (My model is a UK layout), but the `, ' and " keys all work fine  :Smile:  Also, F-Lock doesn't switch, but that's only a minor issue. I don't use their 'extra' buttons, so as long as the F-Lock is on, there's no problem  :Smile: 

For reference, the responce from hidd now says:

```
jwright@jonathan jwright $ sudo hidd

00:07:61:22:6x:xx Logitech Bluetooth Mediapad [046d:b3e1] connected

00:07:61:22:4y:yy Logitech Bluetooth Keyboard [046d:b303] connected

00:07:61:22:5z:zz Logitech Bluetooth Mouse [046d:b001] connected
```

Although one down site - gnome-phone-manage refuses to connect to my phone now! :-/ Well, they said you can't have everything.

----------

## Treo

Ok, worked out the F-lock issue... as well as the apostrophe... that was a problem with the keymap... the F-lock is working, but the Hub LED doesn't update... oh well, I can live with that.

Everything else works GREAT... I have all the media keys assigned, this is really awesome. If only A2DP would work... but that will take some more time...

I submitted a request through bugzilla to incorporate the new patch into the next dev kernel.

Hell, this is one great day for me... besides getting all this working, I won a Dean's Scholarship which will almost fully cover my college cost for the next 5 years... I hope I am not just dreaming this  :Smile: 

The only thing that I have to get working now is the LCD... but I doubt that this is even supported yet.

Treo

----------

## sibov

Hi Neskweek,

I think there is a typo in your HowTo in 3. Xorg Configuration ....

...

KDE:

/etx/X11/xorg.conf:

 *Quote:*   

> 
> 
>     Section "InputDevice"
> 
>     Identifier "Keyboard0"
> ...

 

I think it should be 

Option "XkbModel" "logidmd"

instead of "logicdmd" or shouldn't it????

 :Wink: 

Never the less, i cannot get my special keys working in xorg 6.8, xev doesn't recognize the special keyboard keys.

showkey on console, also do not deliver any hint of the additonal buttons.

Thanks in advance for some tips.

PS: Great HowTo! stay tuned!

----------

## djnauk

 *sibov wrote:*   

> Never the less, i cannot get my special keys working in xorg 6.8, xev doesn't recognize the special keyboard keys.
> 
> showkey on console, also do not deliver any hint of the additonal buttons.

 

Yeah, a few of us had similiar problems for a while. The latest kernel patch from www.bluez.org fixed this, however, what kernel are you running and what's the output from hidd?

----------

## sibov

Hi djnauk,

i am running on 2.6.11-nitro2, but the bluetooth stuff is working fine in hidd2hci mode.

kdebluetooth is working.

At the moment i cannot post my hidd output, because i am in the office. I will post it asap when

i am back on my home pc. (Maybe i find time 2 wake the box up - wakeonlan rulez  :Wink: 

Thanx for your response.  :Very Happy: 

----------

## djnauk

 *sibov wrote:*   

> Hi djnauk,
> 
> i am running on 2.6.11-nitro2, but the bluetooth stuff is working fine in hidd2hci mode.

 

Yeah, the problems we were having is that the bluetooth modules weren't running mode discovery on the items, and therefore the keyboard was only running in boot mode. Running hidd will tell you how the keyboard/mouse/mediapad are running. If they all say boot mode, then you will need to get the latest patch (at least 2.6.11-mh2) from www.bluez.org and patch it against the kernel: cd /usr/src/linux && patch -p1 -i patch_file.

----------

## sibov

 *djnauk wrote:*   

>  *sibov wrote:*   Hi djnauk,
> 
> i am running on 2.6.11-nitro2, but the bluetooth stuff is working fine in hidd2hci mode. 
> 
> Yeah, the problems we were having is that the bluetooth modules weren't running mode discovery on the items, and therefore the keyboard was only running in boot mode. Running hidd will tell you how the keyboard/mouse/mediapad are running. If they all say boot mode, then you will need to get the latest patch (at least 2.6.11-mh2) from www.bluez.org and patch it against the kernel: cd /usr/src/linux && patch -p1 -i patch_file.

 

u are right, 

hidd --show

00:07:61:19:6B:27 HID Boot Device [046d:b001] connected [boot-protocol]

00:07:61:18:7C:0C HID Boot Device [046d:b303] connected [boot-protocol]

i ll try to patch my current kernel with the latest bluez patch set

thanx

----------

## djnauk

 *sibov wrote:*   

> i ll try to patch my current kernel with the latest bluez patch set

 

np. AFAIK, there's nothing new in the patches. It just updates what's there, so you should just be able to patch, clean, compile and reload (or reboot if the modules are built it).  :Smile: 

----------

## basramm

First I want to say: great howto, it helped me a lot and i am now happily using my Logitech diNovo.

But I still have a question. Is it possible to somehow read the keyboards battery status and maybe issue a warning if the power is getting low? I saw something alike on an Ibook with an Apple Wireless Keyboard.

----------

## sPOiDar

 *xannor wrote:*   

> 
> 
> <snip>
> 
> With this code installed, everytime you plug in (or the system otherwise recognises) your adaptor it will run hid2hci so it is in hci mode.
> ...

 

Firstly, very nice idea using udev to convert the device - I like it a lot, will try it out once I go home and steal a keyboard from one of the other boxen... as for converting back to HID on reboot, that should be very easy - just adding:

/etc/local.stop

```
/usr/sbin/hid2hci --tohid
```

or, this might be a sensible change to the bluetooth init script:

/etc/init.d/bluetooth

```
--- bluetooth   2005/05/08 05:05:25     1.1

+++ bluetooth   2005/05/08 05:07:39

@@ -96,6 +96,12 @@

        ebegin "Shutting down Bluetooth"

 

 

+       if [ "${HID2HCI_ENABLE}" = "true" -a -x /usr/sbin/hid2hci ]; then

+               ebegin "    Reverting hid2hci"

+               /usr/sbin/hid2hci -1 -q    #be quiet

+               eend $?

+       fi

+

        if [ "${PAND_ENABLE}" = "true" -a -x /usr/bin/pand ]; then

                ebegin "    Stopping pand"

                start-stop-daemon --stop --quiet --exec /usr/bin/pand
```

And you'd think that would be that... but I've just done a quick test via ssh and it seems that the '--tohid' option is not working for me... (I just get a message saying "No devices in HID mode", whereas it should output the device id).  I'll test when actually at the box, but if anyone else has info on whether --tohid works that would be handy

----------

## julioromano

Hi everybody, I bought yesterday a Dinovo Cordless Desktop for Notebooks (the wireless model without bluetooth).

I though the configuration scripts for xorg would be the same for having the media keys working, it seems I was wrong.

And for what I've checked it seems that pressing the media keys on the keyboard doesn't even generate an event for any of the /dev/input/event* devices.

Has anyone some suggestions?

Thanks and bye,

Marco

----------

## tagwar

Is there any progress with the LCD? I'm thinking about buying a DiNovo, but I wouldn't want to have something sitting on my desk that's so god damn proprietary that I cant get it to work...  :Wink: 

Guess I'll have to bug Logitech about that....?

Edit: Have started buggin them... 

question: Will there be development on a driver from Logitechs side, or is it possible to get a specification of the protocoll used, so the community can create a driver themselves.

answer for now: Logitech is not going to develop a linux driver, cause all our customers use Windows or MacOS...

 :Sad:  so far... will report back if I get any news... the other way would be reverse engineering I think... anyone know how to, or if it is possible?

Second Edit: I got another answer from someone at Logitech somewhere "up the ladder"... 

 *Quote:*   

> Leider handelt es sich hierbei um Firmeninterne Technologien, die nicht öffentlich zur Verfügung gestellt werden.
> 
> Auch ist dies nicht geplant. Die Grund ist folgender:
> 
> Eine Entwicklung solcher Treiber für Linux oder eine Unterstützung anderer Entwickler wäre nicht das Problem. Problematisch wäre die Technische Unterstützung, wenn bei den Usern Schwierigkeiten auftreten. Linux zu supporten ist sehr aufwendig (jede Distribution ist im Prinzip ein eigenes Betriebssystem). Daher wird dieses Betriebssystem von unserer Seite wohl auf absehbarer Zeit nicht unterstützt. 
> ...

 

for those who don't speak german, it says that the technology used in DiNovo is "internal" and won't be made public. Second sentence says that helping developers create a driver or create one themselves wouldn't be a problem, but Logitech is not going to support linux in any way, because there are so many different distris out there and every single one of them is like a different OS.... Is it only me, or does the second sentence not fit with the first? 

Sorry, but I realy dont like this answer.. so, as long as noone has reverse engineered the needed information and built a driver themselves, i'm not going to buy a dinovo.. I might repeat myself, but I'm not going to have proprietary stuff sitting on my desk, that doesnt work with my system.

Greets

Tom

----------

## Diavolo

Thank you for that HowTo - it helped me to install my new diNovo Set.

I have managed to set all special keys, only the first key on the left side (the one with the moon) does not work.

Here is my "inet" entry:

   key <I63>    {        [ XF86Sleep            ]       };

   key <I02>    {        [ XF86HomePage         ]       };

   key <I6C>    {        [ XF86Mail             ]       };

   key <I07>    {        [ Undo                 ]       };

   key <K67>    {        [ XF86MyComputer       ]       };

   key <I22>    {        [ XF86AudioPlay, XF86AudioPause ]       };

   key <I24>    {        [ XF86AudioStop        ]       };

   key <I10>    {        [ XF86AudioPrev        ]       };

   key <I17>    {        [ XF86Search           ]       };

   key <I19>    {        [ XF86AudioNext        ]       };

   key <I30>    {        [ XF86AudioRaiseVolume ]       };

   key <I2E>    {        [ XF86AudioLowerVolume ]       };

   key <I20>    {        [ XF86AudioMute        ]       };

   key <XFER>   {        [ XF86AudioMedia       ]       };

   key <I6A>    {        [ XF86Back             ]       };

   key <I69>    {        [ XF86Forward          ]       };

   key <FK17>   {        [ XF86Search           ]       };

Another thing: What are the entries Undo, XF86MyComputer, XF86Back and XF86Forward? I don't have such keys on my keyboard.

How can I add functionality to the F-Keys when F1-F12 are not active. On Windows they are set up with different actions. Is there a possibility to activate the "F-Key" as default?

And does anyone know how to adjust the mouse buttons on my MX900?

Thank you!

----------

## javac16

 *sibov wrote:*   

>  *djnauk wrote:*    *sibov wrote:*   Hi djnauk,
> 
> i am running on 2.6.11-nitro2, but the bluetooth stuff is working fine in hidd2hci mode. 
> 
> Yeah, the problems we were having is that the bluetooth modules weren't running mode discovery on the items, and therefore the keyboard was only running in boot mode. Running hidd will tell you how the keyboard/mouse/mediapad are running. If they all say boot mode, then you will need to get the latest patch (at least 2.6.11-mh2) from www.bluez.org and patch it against the kernel: cd /usr/src/linux && patch -p1 -i patch_file. 
> ...

 

I recently purchased the dinovo desktop and have the keyboard and mouse "basically" working but am having the same problem as above.  No media keys work and I seem to be stuck in this "boot" mode.  I looked at the bluez website but they only had a 2.6.13 patch.  I am currently running 2.6.12-gentoo-r9, so I am guessing that patch may not apply.  I am also assuming that this should include the patch that everyone here installed and had success with.  Any other ideas of where I could look for a bad setting?

```
# hidd

00:07:61:24:2E:0F HID Boot Device [046d:b3e1] connected [boot-protocol]

00:07:61:24:0B:EC HID Boot Device [046d:b303] connected [boot-protocol]

00:07:61:23:CE:A7 HID Boot Device [046d:b001] connected [boot-protocol]

```

Thanks!

(Edited to add hidd result)

----------

## javac16

If I click on the connect button on the media pad and run hcitool I get the following:

```
etc # hcitool scan

Scanning ...

        00:07:61:24:2E:0F       Logitech Mediapad

```

However I can't seem to actually get this to connect, with 

```
hictool cc 00:07:61:24:2E:0F
```

I get no response back, but the media pad does not connect - button presses do nothing except bring up "No Network" in the LCD.

It is definitely driving me crazy that I can't set up the media buttons but everyone here seems to be having success...

----------

## Meeuw

 *javac16 wrote:*   

> However I can't seem to actually get this to connect, with 
> 
> ```
> hictool cc 00:07:61:24:2E:0F
> ```
> ...

 

No, don't do that  :Wink: 

try:

1) hit the connect button on your mediapad

2) hidd --search

if this doesn't work remove the link key from /var/lib/bluetooth/*/linkkeys

you could also try removing the batteries en try to reconnect.

you should enable auth and encrypt to enchance security and configure a proper pinhelper in hcid.conf:

...

security user;

...

pin_helper /usr/bin/bluepin;

...

auth enable;

encrypt enable;

...

BTW I'm using a hacked bluepinstub:

```
#!/bin/bash

if [ "${1}" == "out" ] ; then

        case ${2} in

                "00:07:61:24:XX:XX") # replace with your mouse address

                        echo "PIN:0000"

                        exit

                        ;;

                "00:07:61:24:XX:XX") # replace with your keyboard address

                        PIN="${RANDOM}"

                        echo "PIN:${PIN}"

                        wall "PIN:${PIN}" &>/dev/null

                        flite "$(echo -n "pin. "

                                i=1

                                while [ $i -le $(echo ${PIN}|wc -m) ] ; do

                                        echo -n "$(echo ${PIN}|cut -c${i}) "

                                        i=$(($i + 1))

                                done)" -o /dev/stdout|aplay &

                        echo "${1} Pairing ${2} with pin: ${PIN}" > /dev/console                        exit

                        ;;

        esac

fi

bluepin ${*}
```

This code shouts the pin over all your consoles (wall) and out of your speakers using flite, quite effective  :Smile: 

----------

## javac16

I tried a number of things based on your suggestions (thank you for them).  Should I be running hidd --search as root or a user?  I seem to get the same response either way, but I was curious.

I did remove the link key from /var/lib/bluetooth/<device address>/linkkeys

After removing the lines from this file, moving the mouse results in a prompt for the pin.  I don't know what it is but have tried "0000" and "" and "1234" with no success.

With auth enabled I get the following when trying to connect the media pad (press connect and then type the search command):

```

$ hidd --search

Searching ...

        Connecting to device 00:07:61:24:2E:0F

Can't get device information: Function not implemented

```

A box does pop up prompting me for a bin...but I honestly have no idea what the pin is for the mouse, media pad or keyboard.

With auth disabled I get this, with no prompt.

```

tim@morpheus ~ Searching ...

        Connecting to device 00:07:61:24:2E:0F

HID create error 13 (Permission denied)

```

When I use your script for the pin (/usr/bin/bluepinstub) with my mods to addresses (note: there isn't one for the media pad?)

```
               

                "00:07:61:23:CE:A7") # replace with your mouse address

                        echo "PIN:0000"

                        exit

                        ;;

                "00:07:61:24:0B:EC") # replace with your keyboard address

```

Initially the keyboard was attached but still in "boot mode" like before:

```

morpheus bin # hidd

00:07:61:24:0B:EC HID Boot Device [046d:b303] connected [boot-protocol]

```

When I pushed connect on the keyboard and then did an hidd --search I got:

```
morpheus bin # hidd --search

Searching ...

        Connecting to device 00:07:61:24:0B:EC

Can't get device information: Invalid exchange

```

and a prompt did show up, which I thought was odd...

Anytime I move my mouse right now I get a prompt...so confused...  :Crying or Very sad: 

----------

## javac16

Played around a little more.  It seems "0000" is working for the mouse now, when I actually push connect and then do a hidd --search.  It didn't work when I just entered it after doing some mouse movement.

I also realized that when I tried to connect the media pad that a prompt shows up on the LCD, so I could put in the same pin on both places and get it connected.

I then followed that pattern for the keyboard.  I entered a pin into the prompt and then typed it on the keyboard.  Now I am back to where I started.  

```

# hidd

00:07:61:24:0B:EC HID Boot Device [046d:b303] connected [boot-protocol]

00:07:61:24:2E:0F HID Boot Device [046d:b3e1] connected [boot-protocol]

00:07:61:23:CE:A7 HID Boot Device [046d:b001] connected [boot-protocol]

```

I did all the above as root.    :Crying or Very sad: 

----------

## Loial

I found that editing /etc/conf.d/bluetooth and /etc/bluetooth/hcid.conf was about all that was needed to get the keyboard and mouse working in full mode, i.e. not in bootprotocol mode

I'm not sure exactly what I changed in those files, but here they are:

```
# cat /etc/conf.d/bluetooth

# Bluetooth configuraton file

# Start of hcid (allowed values are "true" and "false")

HCID_ENABLE=true

# Config file for hcid

HCID_CONFIG="/etc/bluetooth/hcid.conf"

# Start sdpd (allowed values are "true" and "false")

SDPD_ENABLE=true

# Start hidd (allowed values are "true" and "false")

#HIDD_ENABLE=false

HIDD_ENABLE=true

# Arguments to hidd

HIDD_OPTIONS=""

# Run hid2hci (allowed values are "true" and "false")

#HID2HCI_ENABLE=false

HID2HCI_ENABLE=true

# Bind rfcomm devices (allowed values are "true" and "false")

RFCOMM_ENABLE=true

# Config file for rfcomm

RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"

# Start dund (allowed values are "true" and "false")

#DUND_ENABLE=false

DUND_ENABLE=true

# Arguments to dund

DUND_OPTIONS="--listen --persist"

# Start pand (allowed values are "true" and "false")

#PAND_ENABLE=false

PAND_ENABLE=true

# Arguments to pand

PAND_OPTIONS="--listen --role NAP"
```

and

```
# cat /etc/bluetooth/hcid.conf

#

# HCI daemon configuration file.

#

# $Id: hcid.conf,v 1.7 2004/12/13 14:16:03 holtmann Exp $

#

# HCId options

options {

        # Automatically initialize new devices

        autoinit yes;

        # Security Manager mode

        #   none - Security manager disabled

        #   auto - Use local PIN for incoming connections

        #   user - Always ask user for a PIN

        #

        security user;

        # Pairing mode

        #   none  - Pairing disabled

        #   multi - Allow pairing with already paired devices

        #   once  - Pair once and deny successive attempts

        pairing multi;

        # PIN helper

        #pin_helper /usr/bin/bluepin;

        #pin_helper /usr/bin/kbluepin;

        pin_helper /usr/lib/kdebluetooth/kbluepin;

        # D-Bus PIN helper

        #dbus_pin_helper;

}

# Default settings for HCI devices

device {

        # Local device name

        #   %d - device id

        #   %h - host name

        name "Loial BlueZ";

        # Local device class

        class 0x3e0100;

        # Default packet type

        #pkt_type DH1,DM1,HV1;

        # Inquiry and Page scan

        iscan enable; pscan enable;

        # Default link mode

        #   none   - no specific policy

        #   accept - always accept incoming connections

        #   master - become master on incoming connections,

        #            deny role switch on outgoing connections

        lm accept,master;

        # Default link policy

        #   none    - no specific policy

        #   rswitch - allow role switch

        #   hold    - allow hold mode

        #   sniff   - allow sniff mode

        #   park    - allow park mode

        lp rswitch,hold,sniff,park;

        # Authentication and Encryption (Security Mode 3)

        #auth enable;

        auth disable;

        #encrypt enable;

}

```

Oh and don't forget /etc/bluetooth/pin. You should set it to something nice and use that whenever your pc asks you. (Should be only once)

now a simple 

```
rc-update add bluetooth default
```

 and upon reboot all should be well

there is no need to keep doing stuff like hcitool cc <address> because your keyboard and mediapad should already be connected. IIRC the hcitool cc command is not intended to be used like that.

----------

## javac16

I did have some differences from you in my configs so I changed them...

auth to disabled and lm accept,master (I didn't have the master).

This still didn't work for me.  I still come up in boot mode only.  I am currently using 2.6.9-r10 (gentoo-sources).  Is this what you are using?  I am also using 2.19 of bluez-utils.

Thanks for the suggestions.

----------

## Loial

the master isn't needed, it can be used to allow other machines to make network connections to your pc over bluetooth...I wanted to play with this, but it does nothing for your keyboard/mouse

i'm using 2.6.12-gentoo-r10, the latest stable for x86. I did apply the bluetooth patch from http://www.bluez.org/patches.html But 2.6.9 should work just fine, I've used it successfully also. That was also with the patch from bluez.org. Unfortunately on bluez.org the older 2.6 patches are hidden. Just edit the URL for the latest 2.6 patch and make it 2.6.12-mh3 or whatever you want

I'm using bluez-utils-2.19 and bluez-libs-2.19.

I'm not sure what can fix it. Maybe you have not compiled your kernel with the right config. Here is part of my config:

```
# grep -i bt .config

CONFIG_BT=m

CONFIG_BT_L2CAP=m

CONFIG_BT_SCO=m

CONFIG_BT_RFCOMM=m

CONFIG_BT_RFCOMM_TTY=y

CONFIG_BT_BNEP=m

# CONFIG_BT_BNEP_MC_FILTER is not set

# CONFIG_BT_BNEP_PROTO_FILTER is not set

CONFIG_BT_HIDP=m

CONFIG_BT_HCIUSB=m

CONFIG_BT_HCIUSB_SCO=y

CONFIG_BT_HCIUART=m

# CONFIG_BT_HCIUART_H4 is not set

# CONFIG_BT_HCIUART_BCSP is not set

CONFIG_BT_HCIBCM203X=m

CONFIG_BT_HCIBPA10X=m

CONFIG_BT_HCIBFUSB=m

CONFIG_BT_HCIVHCI=m

CONFIG_VIDEO_BT848=m

CONFIG_VIDEO_BTCX=m

# CONFIG_SND_BT87X is not set

# CONFIG_USB_KBTAB is not set

```

I autoload usbhid upon boot (add usbhid to /etc/modules.autoload, which points to /etc/modules.autoload.d/kernel-2.6 )

Please tell me if this changed anything for you.

----------

## javac16

What a horrible mis-type by myself - I meant I am using 2.6.12-r10 (I was thinking 2.6.9 because that is what the tutorial states to use), I haven't applied the patch on bluez yet, so I will try that when I get home later tonight.  I will also check my config (which I am 98% sure is correct -- I've definitely read it over enough times) and see if autoloading the one module helps.  I will report back after trying these things out.  Thanks again!

----------

## javac16

Loial --THANK YOU!

I found the patches on the bluez website by changing the url like you suggested and was able to get the mh3 patch for 2.6.12.  Once I recompiled the kernel and what not I am up and running!

```

00:07:61:24:2E:0F Logitech Bluetooth Mediapad [046d:b3e1] connected

00:07:61:24:0B:EC Logitech Bluetooth Keyboard [046d:b303] connected

00:07:61:23:CE:A7 Logitech Bluetooth Mouse [046d:b001] connected

```

Thanks again, you really helped me out.

----------

## trevorj

I just got a Logitech DiNovo Media Desktop Laser. Difference is you get a bluetooth MX1000 laser mouse, a usb 2.0 usb bluetooth dongle, and the mouse charger is used only for well... charging  :Wink: 

It works fine in HID mode, but it's a new dongle not yet recognized by bluez, so I couldn't turn it into an HCI device. I had to hack hid2hci as well as the kernel's hci_usb driver to include the new dongle's id.

This is ONLY for the Logitech DiNovo Media Desktop Laser !

I'll have to send a post with the patch to the bluez mailing list.. It's just a couple one-liners though.

```
# Kernel patch

--- drivers/bluetooth/hci_usb.orig      2005-10-21 23:37:25.000000000 -0400

+++ drivers/bluetooth/hci_usb.c 2005-10-21 22:11:02.000000000 -0400

@@ -119,6 +119,9 @@

        /* Kensington Bluetooth USB adapter */

        { USB_DEVICE(0x047d, 0x105d), .driver_info = HCI_RESET },

+       /* Logitech DiNovo Media Desktop Laser Transceiver for Bluetooth 2.0 */

+        { USB_DEVICE(0x046d, 0xc709), .driver_info = HCI_RESET },

+       

        /* ISSC Bluetooth Adapter v3.1 */

        { USB_DEVICE(0x1131, 0x1001), .driver_info = HCI_RESET },
```

```
# bluez-utils patch against CVS ( Oct 21 '05 )

--- tools/hid2hci.c.orig        2005-10-21 23:40:20.000000000 -0400

+++ tools/hid2hci.c     2005-10-21 23:52:49.000000000 -0400

@@ -226,6 +226,7 @@

        { HCI, 0x046d, 0xc703, switch_logitech },

        { HCI, 0x046d, 0xc704, switch_logitech },

        { HCI, 0x046d, 0xc705, switch_logitech },

+       { HCI, 0x046d, 0x0b02, switch_logitech },

        { -1 }

 };
```

----------

## mgorbach

Can someone help me out? When i enable bluetooth on my dinovo ... the fn keys dont work anymore!

I cant toggle the f-lock?

What can i do to fix this?

----------

## chojin

 *trevorj wrote:*   

> I just got a Logitech DiNovo Media Desktop Laser. Difference is you get a bluetooth MX1000 laser mouse, a usb 2.0 usb bluetooth dongle, and the mouse charger is used only for well... charging 
> 
> It works fine in HID mode, but it's a new dongle not yet recognized by bluez, so I couldn't turn it into an HCI device. I had to hack hid2hci as well as the kernel's hci_usb driver to include the new dongle's id.
> 
> This is ONLY for the Logitech DiNovo Media Desktop Laser !
> ...

 

I also recently bought a diNovo Media Desktop Laser with the laser mouse, the mini USB bluetooth receiver and the charging-only cradle.

I applied the patches to both the kernel and the bluez-utils package (using a portage overlay). Now i do get a result with hid2hci. But thats everything:

```
 # hid2hci

Switching device 046d:0b02 to HCI mode was successful
```

So this looks good, but I thought it to be strange that I didn't notice the keyboard or mouse reconnecting.. so I checked if the hci device really came up, but it seems that it didn't:

```
 # udevinfo -ap /sys/class/bluetooth/hci0 

couldn't get the class device

 # hcitool inq 

Inquiring ...

Inquiry failed.: No such device

# hcitool scan

Device is not available: No such device

# hcitool dev

Devices:

```

This is what I get with lsusb

```
# lsusb 

Bus 003 Device 001: ID 0000:0000  

Bus 002 Device 008: ID 046d:c70c Logitech, Inc. 

Bus 002 Device 007: ID 046d:c70b Logitech, Inc. 

Bus 002 Device 006: ID 046d:0b02 Logitech, Inc. 

Bus 002 Device 002: ID ffa1:0201  

Bus 002 Device 001: ID 0000:0000  

Bus 001 Device 001: ID 0000:0000  

```

I also don't find the device 0x046d, 0xc709 mentioned in the kernel patch.. maybe my version has another id? How can I find this id? is it one of the above (lsusb output) ?

some more info:

```
 # cat /proc/bus/usb/devices 

T:  Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 3

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.14-gentoo-r5-mh2 ohci_hcd

S:  Product=OHCI Host Controller

S:  SerialNumber=0000:00:02.1

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 3

B:  Alloc=  6/900 us ( 1%), #Int=  4, #Iso=  0

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.14-gentoo-r5-mh2 ohci_hcd

S:  Product=OHCI Host Controller

S:  SerialNumber=0000:00:02.0

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 4

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=ffa1 ProdID=0201 Rev= 1.10

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=255ms

T:  Bus=02 Lev=02 Prnt=02 Port=03 Cnt=01 Dev#=  6 Spd=12  MxCh= 3

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=0b02 Rev=40.00

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=255ms

T:  Bus=02 Lev=03 Prnt=06 Port=01 Cnt=01 Dev#=  7 Spd=12  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=c70b Rev=40.00

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

S:  SerialNumber=00076141F580

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=01 Driver=usbhid

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

T:  Bus=02 Lev=03 Prnt=06 Port=02 Cnt=02 Dev#=  8 Spd=12  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=c70c Rev=40.00

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

S:  SerialNumber=00076141F580

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=usbhid

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=5ms

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 6

B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.14-gentoo-r5-mh2 ehci_hcd

S:  Product=EHCI Host Controller

S:  SerialNumber=0000:00:02.2

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=256ms

```

Anyone has an idea why this isn't working?

----------

## davez

I received a diNovo Laser as a replacement for a defective diNovo "Standard" yesterday...  Now I have excactly the same problem like chojin   :Sad:  I patched kernel + bluez-utils as described from trevorj..  But the USB dongle just doesn't get recognized by hcitool and co. 

Are there any solutions?

----------

## sibov

 :Confused: 

I'm currently on kernel 2.6.15-gentoo-r1 but the good old

patch-2.6.14-mh2.gz seems to fail on that kernel source.

Does anybody have a clue what's going on  :Question: 

My Dinovo devices are currently only in boot-protocol mode   :Laughing: 

Regards,

SiboV  :Wink: 

----------

## javac16

I haven't upgreaded to 2.6.15 yet, but I noticed today that bluez.org has put a patch up on their site for the 2.6.15 kernel.  Are you using that patch?

----------

## sibov

 :Razz:  thx i'll try it out.   :Laughing: 

----------

## javac16

I'm really interested to know if it works out, so post your results if you get a chance.  Whether the dinovo works or not on the new kernel is the only thing keeping me from upgrading (that and I haven't had the time).

----------

## sibov

 *javac16 wrote:*   

> I'm really interested to know if it works out, so post your results if you get a chance.  Whether the dinovo works or not on the new kernel is the only thing keeping me from upgrading (that and I haven't had the time).

 

Hi javac16,

today i tried the latest bluez kernel patch (3 or more times).

Every time the bootprocess is going to make the hid2hci command i get a kernel panic.

I think i'll have to wait for a second release of the bluez patch.

 :Sad: 

Kind regards,

Sibov

----------

## javac16

 :Crying or Very sad:   Man...I'll try upgrading to 2.6.15 (plus patch) and let you know if I have any luck.

----------

## sibov

 :Razz:  NEW bluez-patch patch-2.6.15-mh2.gz available for download at http://www.bluez.org/patches.html

maybe this will fix the kernel panic   :Wink: 

----------

## javac16

I nevered tried p1, but I patched 2.6.15-r1 with p2 and am having no problems (no panics and dinovo is working).

```

$ uname -a

Linux morpheus 2.6.15-gentoo-r1 #1 SMP PREEMPT Thu Feb 16 09:47:56 EST 2006 i686 Intel(R) Xeon(TM) CPU 2.00GHz GenuineIntel GNU/Linux

$ hidd

00:07:61:23:CE:A7 Logitech Bluetooth Mouse [046d:b001] connected

00:07:61:24:0B:EC Logitech Bluetooth Keyboard [046d:b303] connected

```

Hope you have similar luck with p2.

----------

## sibov

 :Razz:   :Razz:   I'm lucky too. The new bluez.org patch-2.6.15-mh2.gz fixed it   :Wink: 

```
hidd --show

00:07:61:24:5A:7D Logitech Bluetooth Mouse [046d:b001] connected

00:07:61:23:E4:2E Logitech Bluetooth Keyboard [046d:b303] connected
```

----------

## javac16

That is great  :Very Happy: 

Thanks for giving me the kick to take the time to upgrade to 2.6.15.

----------

## red-wolf76

Ho-hum... I've got a problem with my diNovo. It will connect using bluetooth, I'm typing on it right now, but for the love of God won't do so upon boot and in the GDM login screen. I actually have to connect a regular Keyboard and fiddle about, work a little voodoo and restart bluetooth to make it connect...

Anyone got a clue? Here's my relevant data:

rc-update -s:

```
               acpid |      default

           alsasound | boot

                apmd |

  bittorrent-tracker |

           bluetooth |      default

               boinc |

            bootmisc | boot

             bttrack |

             checkfs | boot

           checkroot | boot

               clock | boot

            coldplug | boot

         consolefont |

         crypto-loop |

               cupsd |      default

                dbus |      default

          domainname |      default

              esound |      default

                famd |      default

                 gpm |

                hald |      default

              hdparm | boot

            hostname | boot

             hotplug | boot

             keymaps | boot

          lm_sensors |      default

               local |      default nonetwork

          localmount | boot

             modules | boot

            net.eth0 |      default

              net.lo | boot

            netmount |      default

            net.ppp0 |

                nscd |

          ntp-client |

                ntpd |      default

             numlock |      default

             portmap |

           rmnologin | boot

              rsyncd |

               samba |      default

              serial | boot

               slapd |

              slurpd |

               spamd |

                sshd |      default

           syslog-ng |      default

            timidity |

             urandom | boot

          vixie-cron |      default

                 xdm |      default
```

/etc/bluetooth/hcid.conf:

```
#

# HCI daemon configuration file.

#

# HCId options

options {

        # Automatically initialize new devices

        autoinit yes;

        # Security Manager mode

        #   none - Security manager disabled

        #   auto - Use local PIN for incoming connections

        #   user - Always ask user for a PIN

        #

        security user;

        # Pairing mode

        #   none  - Pairing disabled

        #   multi - Allow pairing with already paired devices

        #   once  - Pair once and deny successive attempts

        pairing multi;

        # PIN helper

        #pin_helper /usr/bin/bluepin;

        # D-Bus PIN helper

        dbus_pin_helper;

}

# Default settings for HCI devices

device {

        # Local device name

        #   %d - device id

        #   %h - host name

        name "BlueZ at %h (%d)";

        # Local device class

        class 0x3e0100;

        # Default packet type

        #pkt_type DH1,DM1,HV1;

        # Inquiry and Page scan

        iscan enable; pscan enable;

        # Default link mode

        #   none   - no specific policy

        #   accept - always accept incoming connections

        #   master - become master on incoming connections,

        #            deny role switch on outgoing connections

        #

        #lm accept,master;

        #

        lm accept;

        # Default link policy

        #   none    - no specific policy

        #   rswitch - allow role switch

        #   hold    - allow hold mode

        #   sniff   - allow sniff mode

        #   park    - allow park mode

        lp rswitch,hold,sniff,park;

        # Authentication and Encryption (Security Mode 3)

        #auth enable;

        #auth disable;

        #encrypt enable;

}
```

/etc/conf.d/bluetooth:

```
# Bluetooth configuraton file

# Start of hcid (allowed values are "true" and "false")

HCID_ENABLE=true

# Config file for hcid

HCID_CONFIG="/etc/bluetooth/hcid.conf"

# Start sdpd (allowed values are "true" and "false")

SDPD_ENABLE=true

# Start hidd (allowed values are "true" and "false")

HIDD_ENABLE=true

# Arguments to hidd

HIDD_OPTIONS=""

# Run hid2hci (allowed values are "true" and "false")

HID2HCI_ENABLE=true

# Bind rfcomm devices (allowed values are "true" and "false")

RFCOMM_ENABLE=true

# Config file for rfcomm

RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"

# Start dund (allowed values are "true" and "false")

DUND_ENABLE=true

# Arguments to dund

DUND_OPTIONS="--listen --persist"

# Start pand (allowed values are "true" and "false")

PAND_ENABLE=true

# Arguments to pand

PAND_OPTIONS="--listen --role NAP"
```

----------

## sibov

Hi red-wolf76,

have you already edit the /etc/init.d/bluetooth init-script ?

Do you have dual boot with MiCro$oft OS?

Does it only fails with gdm? Then give kdm a try!

Kind regards,

Sibov

----------

## javac16

 *Quote:*   

> I actually have to connect a regular Keyboard and fiddle about, work a little voodoo and restart bluetooth to make it connect... 

 

What's the vodoo you have to perform?

----------

## javac16

Not sure when this occured but I have noticed the following issues lately:

F1-F12 - not working

suspend, home, email, finder, volume-up, volume-down, mute - not working

media key - works

play/pause, skip, back, stop - work

Anyone else seeing this problem?

Edit: Okay, I figured out that the F-Lock key is now working so I can switch between F1-F12 and the New-My Music functionality.  However, the other keys mentioned abover are still not working.  Although they do appear properly in Gnome Keyboard Shortcuts -- pressing the Email key when setting a shortcut brings up XF86Mail.  This makes me think I broke something somewhere, but I am having some difficulty figuring out where to look.

Edit #2: It seems this isn't a problem with the keyboard.  I assigned other keys to volume up/down, etc. actions in Gnome and they are not able to control the settings either.  Also setting mute button to "Open Panel" works fine...

----------

## red-wolf76

 *javac16 wrote:*   

>  *Quote:*   I actually have to connect a regular Keyboard and fiddle about, work a little voodoo and restart bluetooth to make it connect...  
> 
> What's the vodoo you have to perform?

 The usual chicken-waving. Restarting bluetooth and performing a hid2hci and hidd --search does things it should have already done.  :Rolling Eyes: 

And technically I dual boot with Win2K, but I haven't done so for rather a longish time. No need to  :Laughing:  Besides, it doesn't work either.  :Embarassed: 

It doesn't matter whether it's GDM or not. I've tried booting into console only - no dice. There was something in this thread about making some udev rules that I haven't looked into yet. But I think it has something to do with the recent update I ran. Something changed in the bluetooth stuff, I think and it worked before...

----------

## javac16

I am not seeing the issues you are having - here is what I am running for comparison:

```

net-wireless/bluez-libs-2.25

net-wireless/bluez-utils-2.25

sys-kernel/gentoo-sources-2.6.15-r1 (with the second 2.6.15 patch from the bluez website)

sys-fs/udev-079-r1

```

Did you recently turn encryption or authentication on?  Any issues with the PIN (do you have to enter it)?

----------

## red-wolf76

 *javac16 wrote:*   

> I am not seeing the issues you are having - here is what I am running for comparison:
> 
> Did you recently turn encryption or authentication on?  Any issues with the PIN (do you have to enter it)?

 

That's another thing, I've not quite fathomed. I dont have to fiddle with the PIN. Never did have to. I'm not at my box and it's not running (damn you, Swine German Energy Companies!  :Mad: ) but I'll let you know which versions I'm running.

What I know I have, is the device tarball turned on and no special udev-rule. Do you have one of those? That might explain why I have to do a search before the Receiver will pick up stuff (devnode not created on boot).

I think I'll try that first thing this evening. Turning off the tarball!

----------

## javac16

I don't have any special udev rules for the dinovo setup.  Customation that I have done:

Using meeuw's modified bluepinstub (for PIN -- see page 3)...although I currently don't have auth or encryption turned on.

Whenever I modify items with the keyboard I tend to get it messed up for a couple reboots, but I usually reread this thread and follow this procedure to get it working where it autoconnects:

- reboot and ssh into my workstation

- click the connect button on the mouse

- run hidd --search

-- the mouse starts working

- repeat this process for the keyboard and media pad

if things get really whacky I delete the following files (you may just want to mv the files just in case):

/var/lib/bluetooth/<your-hub's-bluetooth-address>/*

I then repeat the procedure outlined above.

----------

## red-wolf76

I'll look into that tonight. Interestingly, I think I don't even have to press any buttons on the devices themselves, I just do a hidd --search and they're all there, waving at me!  :Laughing: 

----------

## red-wolf76

Ho hum. I thought wrongly, it appears.

Voodoo consists of:

running hid2hci

hidd --search

pressing the buttonsAfter that, the keyboard works - and keeps working.   :Confused: 

----------

## sibov

 *red-wolf76 wrote:*   

> Ho hum. I thought wrongly, it appears.
> 
> Voodoo consists of:
> 
> running hid2hci
> ...

 

Hi Red-Wolf76,

please double check your /etc/init.d/bluetooth   script it must have the line

```
--exec /usr/bin/hidd -- ${HIDD_OPTIONS} --server
```

maybe there 's a typo within the line or above  :Wink: 

regards,

Sibov

----------

## red-wolf76

 *sibov wrote:*   

> please double check your /etc/init.d/bluetooth   script it must have the line
> 
> ```
> --exec /usr/bin/hidd -- ${HIDD_OPTIONS} --server
> ```
> ...

 Hey, Sibov. Just went to check and it's in there, as required.

I think I fixed it, however. I changed to

```
# Security Manager mode

#   none - Security manager disabled

#   auto - Use local PIN for incoming connections

#   user - Always ask user for a PIN

#

security auto;
```

in /etc/bluetooth/hcid.conf and surely enough after an /etc/init.d/bluetooth restart keyboard and mouse came to life. The MediaPad will go to sleep, but automatically connect, when prodded with a pointy stick.

Now, I'll check whether that solved the boot-up problem as well...

----------

## red-wolf76

Bloody 'Ell!

I have to boot with an extra keyboard and restart bluetooth from the console before everything will work.  :Mad:  I'm stumped...

----------

## derelm

hi, i fixed these problems be deactivating dbus pin helper.

i noticed that when setting dbus pin helper the hcid won't get started by the init script. commenting the line it started without a problem.

hope that helps

edit:

just noticed that the problem with dbus is, that dbus is started *after* bluetooth is started because it doesn't depend on dbus. so maybe the easy fix is to edit /etc/init.d/bluetooth like so:

```

depend() {

        after coldplug dbus

}

```

edit2:

removed need dbus in favour of after dbusLast edited by derelm on Mon Mar 13, 2006 8:34 pm; edited 1 time in total

----------

## red-wolf76

Hey, that could explain it. I think I'll try that tonight at the box.

I'll let you know.

EDIT: Duh... Didn't do anything but now it works. Didn't even update the script like you said...  :Rolling Eyes:  Help! My Gentoo is Windowsifying itself!   :Shocked: 

----------

## freeman01

for me it was necessary to set the sleep-time in the bluetooth init-script from 1 to 2 seconds....

with the defaultsetting (sleep 1 second after hid2hci command) the hidd and the sdpd fails.

----------------------------

i use kernel 2.6.15 with newest bluetoothpatch

----------

## chojin

I finaly have hid2hci find my dongle and it seems the bluetooth functionality works.. Thanks to an update on linux.yes.nu containing a patch for hid2hci for dinovo laser support. 

But I now can't get my keyboard, -pad nor mouse connected. 

I followed al instructions on linux.yes.nu and on this forum, including the 2.6.15-mh2 patch. 

But now when I try to use my keyboard, every key I pres I get this error in my /var/log/messages:

hidd: HID create error 2 (No such file or directory)

since I have no Idea what file or directory isn't found, I ran

# strace hidd -n -server

which showed me this at the time of the error:

open("/var/lib/bluetooth/00:07:61:41:F5:80/hidd", O_RDONLY) = -1 ENOENT (No such file or directory)

I checked and indeed there is no /var/lib/bluetooth directory, so I created it, but still no difference.

Does anyone know what this means? why it isn't working and how I have to get it working?

----------

## Diavolo

I installed my diNovo Media Desktop using this Tutorial: http://linux.yes.nu/diNovo/

Now with x11 7.0, the special keys don't seem to work. Any idea?  :Sad: 

----------

## red-wolf76

Chances are, you overwrote your X keyboard config files when you upgraded, or they may alternatvely have moved.

There's a section here on including the diNovo amongst the keyboards you can pick. Try re-doing that.

----------

## Diavolo

No, the edited files have not been overwritten...

----------

## Diavolo

I can't even select the keyboard layout, but it is included xorg.xml. Or did the files move to a different place? I had edited the files in /etc/X11.

----------

## red-wolf76

Have they moved for modular X?

----------

## lawcorn

With new X.orgR7, my /etc/X11/xkb was a dead link....

I've found the files to be modified in /usr/share/X11/xkb.

Follow the how-to provided (http://linux.yes.nu/diNovo/) to modify these files. There are some minor change, but nothing difficult (some lines don't exist anymore, so no change required).

and tadaaa ! My extra keys work again !

----------

## Diavolo

Thank you for your answer. I edited the files in /usr/shaer/X11/skb and changed the symlink /etc/X11/xkb to that folder. Now I can select the Keyboard Layout in my KDE Control Center, but the extra keys are not working  :Sad: 

Any idea? Did you change something else?

----------

## scoon

Hey all, 

I use the logi cordless elite w/ bt.  Not as fancy as the dinuvo but, it works well enough for me.  I use the patch from the bluez site but am wondering what is the bluez-kernel ebuild about ?  What is it used for ?  I am wondering if there is an all portage solution so that I won't have to spend time patching vanilla kernels.  Anyone have an idea ?

-scoon

----------

## red-wolf76

Greetings all.

Just to mention for people using non-vanilla or -gentoo kernels... I found that over the last few kernel releases I used (ck-sources and - lately - mm-sources), certainly for the 2.6.16 and 2.6.17 releases, the source didn't require the patch for my bluetooth to work (maybe those patchsets already having the bluez stuff incorporated)...   :Cool: 

----------

## scoon

 *red-wolf76 wrote:*   

> Greetings all.
> 
> Just to mention for people using non-vanilla or -gentoo kernels... I found that over the last few kernel releases I used (ck-sources and - lately - mm-sources), certainly for the 2.6.16 and 2.6.17 releases, the source didn't require the patch for my bluetooth to work (maybe those patchsets already having the bluez stuff incorporated)...  

 

And you are using some flavor of logitech BT keyboards ?  That'd be pretty f'ing hot if this is the case.

-scoon

[edit] somehow i bet you are just registereing with the Boot proto.  If so, then none of the multimedia keys prolly work.

----------

## Diavolo

 *lawcorn wrote:*   

> With new X.orgR7, my /etc/X11/xkb was a dead link....
> 
> I've found the files to be modified in /usr/share/X11/xkb.
> 
> Follow the how-to provided (http://linux.yes.nu/diNovo/) to modify these files. There are some minor change, but nothing difficult (some lines don't exist anymore, so no change required).
> ...

 

Still not working...could you help?  :Sad: 

----------

## scoon

 *Diavolo wrote:*   

> 
> 
> Still not working...could you help? 

 

Are you using the patch from the  bluez site ?  They currently only have one for 2.6.15 kernels.  

Also, have you tried using xev to check that the keys are not really working ?  And by working I mean that they are actually sending key code events when used. 

-scoon

----------

## Diavolo

 *scoon wrote:*   

>  *Diavolo wrote:*   
> 
> Still not working...could you help?  
> 
> Are you using the patch from the  bluez site ?  They currently only have one for 2.6.15 kernels.  
> ...

 

What Patch?  :Smile: 

The keys don't send any code...I tried xev.

----------

## scoon

http://www.bluez.org/patches.html

You should notice that without this patch, when the bluetooth system gets init'd that the kernel will report keyboard and mice as boot proto.  With the patch, your keyboard and mouse as Logitech proto.  (At least for me, I use the cordless elite setup). 

-scoon

----------

## Diavolo

I am using Kernel 2.6.16 and with Xorg 6.9 my extra keys were working...

----------

## scoon

hmmmm.  Not really sure what to suggest from here.  I am currently using x7.0 with kernel patch and all my keys are working.  I have tried w/o patch and 2.6.16 and my extra keys did not work. 

-scoon

----------

## Diavolo

The keyboard is working perfectly, only the extra keys don't work. xev does not get any signal...

----------

## scoon

 *Diavolo wrote:*   

> The keyboard is working perfectly, only the extra keys don't work. xev does not get any signal...

 

And what about the patch from bluez ?  Have you tried that just to see if it'd help ?

-scoon

----------

## Diavolo

No I don't have tried it. My keyboard worked perfectly with xorg 6.9. Or do you think something has changed with kernel 2.6.16?

----------

## scoon

I have been using my kdeyboards since early 2.6 and the extra multimedia keys NEVER worked for me without  the bluez patch.  I have tried using a 2.6.16 without the bluez patch and my extra keys did NOT work.  I am currently running a 2.6.15 kernel with the bluez patch and all my keys are working fine.  I am running xorg7.0 with the patch and my keyboards work just as they did in older Xorg.  

I don't know what all has changed btwn old and new Xorg but all I can say is TITS (Try It To See).

-scoon

----------

## Diavolo

Could you send me your config files for xorg? Do you have ICQ?  :Smile: 

----------

## scoon

 *Diavolo wrote:*   

> Could you send me your config files for xorg? Do you have ICQ? 

 

It is time for me to get ready for work but here are the relevant parts of my xorg.conf.

```

# **********************************************************************

# Input devices

# **********************************************************************

# **********************************************************************

# Core keyboard's InputDevice section

# **********************************************************************

Section "InputDevice"

    Identifier  "Keyboard1"

    Driver      "kbd"

    Option "AutoRepeat" "500 30"

    Option "XkbRules"   "xorg"

    Option "XkbModel"   "pc105"

    Option "XkbLayout"  "en_US"

    Option "XkbVariant" "Logitech Cordless Elite Keyboard"

EndSection

# **********************************************************************

# Core Pointer's InputDevice section

# **********************************************************************

Section "InputDevice"

# Identifier and driver

    Identifier  "Mouse1"

    Driver      "mouse"

    Option "Protocol"    "Auto" # Auto detect

    Option "Device"      "/dev/input/mice"

    Option "ZAxisMapping"   "4 5 6 7"

EndSection

```

Like I said before, TITS.

-scoon

----------

## scoon

One more question for you ?  You say how your mm keys worked before but not now, where you using bluetooth before ?  Becuase these kb's can do either IR or BT, but not both at the same time.  If you were using IR before, that would explain why your mm keys worked with now bluez kernel patch.

-scoon

----------

## Diavolo

I changed nothing, only updated xorg.

----------

## scoon

 *Diavolo wrote:*   

> I changed nothing, only updated xorg.

 

But from my above post: Where you already using bluetooth ?

-scoon

----------

## Diavolo

Yes

----------

## scoon

 *Diavolo wrote:*   

> Yes

 

I don't have any other suggestions.  

-scoon

----------

## Moze

Does anyone know how to crete the pathches. It allways takes quite a while until the patch for a new kernel appears on bluez.org... 

Ok - One way would to mail the maintainer, but it has to been in the git-repositories. 

I installed cognito and pulled the bluez-kernel but I can't make much sense out of git. I can easily live with not updating to 2.6.16, so I give up. But may be someone with more knowledge of git, kernel-pathes or both wants to give it a try....

----------

## scoon

 *Moze wrote:*   

> Does anyone know how to crete the pathches. It allways takes quite a while until the patch for a new kernel appears on bluez.org... 
> 
> Ok - One way would to mail the maintainer, but it has to been in the git-repositories. 
> 
> I installed cognito and pulled the bluez-kernel but I can't make much sense out of git. I can easily live with not updating to 2.6.16, so I give up. But may be someone with more knowledge of git, kernel-pathes or both wants to give it a try....

 

I felt the same way and for kicks thought to try the 2.6.15-mh2 patch on a 2.6.16 kernel.  It has been working for me for over a week now with no odd behavior.  I doubt it matters but I also patch with the -ck set.

-scoon

----------

## Moze

that worked well for a while... but with the newer 2.6.16-releases they were too diffrent  :Sad: 

now there is patch-2.6.16-mh1  :Smile: 

but updating to gentoo-sources-2.6.16-r9 made my mouse jumpy  :Sad: 

----------

## scoon

I haven't checked in a while since I am still kicking here with the older patch.

-scoon

----------

## Diavolo

Any News?  :Sad: 

----------

## scoon

 *Diavolo wrote:*   

> Any News? 

 

I have been using mh1 with 2.6.17 and haven't had any problems with it so far.

-scoon

----------

## Diavolo

I used my diNovo with older kernels without patch. Perhaps I will try that patch with 2.16.17. Is there an ebuild for it?

----------

## Moze

Dont know what it was.. Icould easily live with the older kernel, but had an loose eye on the kernel-updates.

Today a gave 2.6.17-gentoo-r2 (with patch-2.6.17-mh2) a try. Mouse works fine, no problems anymore.

Can't say what fixed it because in the mean time a lot of packages were updated and I've also switched to the modular-X...

----------

## gabo

Hi,

I tried for several hours now to make my linux system recognize the logitech bluetooth receiver. I failed  :Smile: 

I also posted this on bluez-users mailing list as I don't know if  it's a gentoo or a bluez related problem.

First of all, here's what I've done :

- patched my gentoo 2.6.17 kernel with the patch given on the bluez site.

- recompiled my kernel with everything bluetooth related enabled

Rebooted and tried hid2hci : 

```
muadib gaboo # hid2hci

Switching device 046d:0b02 to HCI mode was successful
```

But hciconfig returns nothing.

Then I tried to apply this patch :

```
--- drivers/bluetooth/hci_usb.orig      2005-10-21 23:37:25.000000000 -0400

+++ drivers/bluetooth/hci_usb.c 2005-10-21 22:11:02.000000000 -0400

 <at>  <at>  -119,6 +119,9  <at>  <at> 

        /* Kensington Bluetooth USB adapter */

        { USB_DEVICE(0x047d, 0x105d), .driver_info = HCI_RESET },

+       /* Logitech diNovo Media Desktop Laser Transceiver for Bluetooth 2.0 */

+        { USB_DEVICE(0x046d, 0xc709), .driver_info = HCI_RESET },

+

        /* ISSC Bluetooth Adapter v3.1 */

        { USB_DEVICE(0x1131, 0x1001), .driver_info = HCI_RESET },
```

Rebooted, hid2hci, hciconfig : nothing.

My system is an up to date gentoo :

uname -a : Linux muadib 2.6.17-gentoo-r4-mh5 #1 SMP PREEMPT Mon Jul 31 01:27:43 CEST 2006 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ GNU/Linux

bluez version :

```
muadib gaboo # equery list bluez

[ Searching for package 'bluez' in all categories among: ]

 * installed packages

[I--] [  ] net-wireless/bluez-firmware-1.1 (0)

[I--] [  ] net-wireless/bluez-libs-2.25 (0)

[I--] [  ] net-wireless/bluez-utils-2.25-r1 (0)
```

I checked that bluez-utils/tools/hid2hci.c contains :   "{ HCI, 0x046d, 0x0b02, switch_logitech },       /* Logitech diNovo Media Desktop Laser */"

And here is my /proc/bus/usb/devices  (I don't think hid2hci changed something because hid2hci -1 telle me : "No devices in HID mode found")

```
T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh=10

B:  Alloc=  6/900 us ( 1%), #Int=  3, #Iso=  0

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.17-gentoo-r4-mh5 ohci_hcd

S:  Product=OHCI Host Controller

S:  SerialNumber=0000:00:02.0

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=12  MxCh= 3

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=0b02 Rev=40.02

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=255ms

T:  Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#=  3 Spd=12  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=c70b Rev=40.02

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

S:  SerialNumber=00076141F47E

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=01 Driver=usbhid

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

T:  Bus=02 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#=  4 Spd=12  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=046d ProdID=c70c Rev=40.02

S:  Manufacturer=Logitech

S:  Product=Logitech BT Mini-Receiver

S:  SerialNumber=00076141F47E

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=usbhid

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=5ms

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh=10

B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.17-gentoo-r4-mh5 ehci_hcd

S:  Product=EHCI Host Controller

S:  SerialNumber=0000:00:02.1

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=256ms
```

Do you know what are the  ProdID=c70c and  ProdID=c70b product ?

Maybe I could try to change the hid2hci patch with these product ids ?

And maybe this can be useful:

```
muadib tools # dmesg |grep -i bluetooth

Bluetooth: Core ver 2.10

Bluetooth: HCI device and connection manager initialized

Bluetooth: HCI socket layer initialized

Bluetooth: HCI USB driver ver 2.9

Bluetooth: HCI UART driver ver 2.2

Bluetooth: HCI H4 protocol initialized

Bluetooth: HCI BCSP protocol initialized

Bluetooth: L2CAP ver 2.8

Bluetooth: L2CAP socket layer initialized

Bluetooth: HIDP (Human Interface Emulation) ver 1.1-mh1

Bluetooth: RFCOMM socket layer initialized

Bluetooth: RFCOMM TTY layer initialized

Bluetooth: RFCOMM ver 1.8
```

So, do you have any idea ? It seems it should work, but I cannot manage to find what's wrong.

Thanks !Last edited by gabo on Mon Jul 31, 2006 12:49 am; edited 1 time in total

----------

## gabo

Some useful references :

http://thread.gmane.org/gmane.linux.bluez.user/9598/focus=9598

http://thread.gmane.org/gmane.linux.bluez.devel/6242/focus=6242

http://www.holtmann.org/linux/kernel/debian.html

http://linux.yes.nu/diNovo/?Page=cGFnZTE5

http://thread.gmane.org/gmane.linux.bluez.user/9384/focus=9395

----------

## DaveT

Will this work for the Logitech X5

----------

## red-wolf76

Any news on 2.6.18-kernels? I've tried in the past, patching them with the latest 2.6.17-bluez patch but kernel compilation went frak on bluetooth. Does 2.6.18 already incorporate the bluez stuff perhaps?

Latest patch on www.bluez.org is 2.6.17-mh5, I believe.

----------

## scoon

Hey All, 

Just wanted to re-visit the idea of not using the bluez patches.  I have tried gentoo-sources w/o the patch and none of my MM keys register whatsoever.  With the patch, just about all my keys work as expected.

Anyone have any luck with MM keys and no bluez patch ?

-scoon

----------

## jkomar

I just bought a diNovo Media Desktop Laser and am trying to work my way through the tutorial. I seem to be hung up fairly early on.

I patched with 2.6.17-mh6 on gentoo-sources-2.6.17-r8 and I got a Makefile patching error which I was expecting. The error was on patching l2cap.h:

```
patching file include/net/bluetooth/l2cap.h

patching file Makefile

Hunk #1 FAILED at 1.

1 out of 1 hunk FAILED -- saving rejects to file Makefile.rej
```

I then set things in the kernel config as per the howto, but my kernel wouldn't compile, presumably due to the failed patch:

```
 CC      net/bluetooth/l2cap.o

net/bluetooth/l2cap.c: In function `l2cap_retransmission_timer':

net/bluetooth/l2cap.c:74: sorry, unimplemented: inlining failed in call to 'l2cap_do_send_rfc': function body not available

net/bluetooth/l2cap.c:143: sorry, unimplemented: called from here

make[2]: *** [net/bluetooth/l2cap.o] Error 1

make[1]: *** [net/bluetooth] Error 2

make: *** [net] Error 2
```

If anyone has any ideas for me to try, I'm wide open. I spent a lot of time searching the forums and Googling, but found no solutions.

Thanks,

Jason

----------

## red-wolf76

For me, any kernel after 2.6.17-mm5 (so that'd be mm-sources, yes!) barfs on the patch. Unpatched, I only get "boot-mode", which I presume is what you're experiencing.

Have you tried vanilla-sources yet?

----------

## jkomar

Haven't tried vanilla sources yet. Thanks for the suggestion. I guess that's a project for this evening. I really want to get this working well. It's for my MythTV box and right now I'm using an old beast of a keyboard.

Jason

----------

## jkomar

 *red-wolf76 wrote:*   

> Have you tried vanilla-sources yet?

 

Tried vanilla-sources. That bombed with the same error.

Jason

----------

## jkomar

I see there is a 2.6.18 bluez patch available. Has anyone had any luck with the 2.6.18 kernel?

Thanks,

Jason

----------

## jkomar

 *jkomar wrote:*   

> I see there is a 2.6.18 bluez patch available. Has anyone had any luck with the 2.6.18 kernel?

 

In answer to my own question, I tried the 2.6.18-mh7 patch with the 2.6.18-r1 gentoo-sources with the same errors. If anyone has any other suggestions, I would be most grateful.

Thanks,

Jason

----------

## red-wolf76

I would, too. I don't see any significant reason why people should be locked to an old 2.6.17 kernel just because of something like this.

Maybe bluez-development has halted?

----------

## tcostigl

Hi, I am using kernel 2.6.17 with -mh6 patch and my dmesg output is flooded:

```
l2cap_data_channel: sk f611e600 len 14 mode 0x00

l2cap_recv_acldata: conn f5c16300 len 14 flags 0x2

l2cap_recv_frame: len 10, cid 0x0041

l2cap_data_channel: sk f611e600 len 14 mode 0x00

l2cap_recv_acldata: conn f5c16300 len 14 flags 0x2

l2cap_recv_frame: len 10, cid 0x0041

l2cap_data_channel: sk f611e600 len 14 mode 0x00

...

```

I guess I am in a debugging mode but I can't find where to turn it off. Any ideas?

----------

## red-wolf76

Did you compile anything with "debug" in the USE flags?

----------

## tcostigl

Here are the relavent packages, am I missing anything?

```
fibonacci ~ # emerge bluez-utils bluez-libs kdebluetooth usbutils -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R   ] net-wireless/bluez-utils-2.25-r1  USE="alsa cups dbus udev -gtk -pcmcia" 0 kB

[ebuild   R   ] net-wireless/bluez-libs-2.25  0 kB

[ebuild   R   ] net-wireless/kdebluetooth-1.0_beta1-r2  USE="arts -debug -irmc -xinerama (-xmms)" 0 kB

[ebuild   R   ] sys-apps/usbutils-0.71-r1  0 kB

Total size of downloads: 0 kB

```

I have also tried to compile l2cap statically and as module, no change. I can't seem to find anything re: this on google.

----------

## tcostigl

I upgraded to 2.6.18 with -mh7 and the l2cap messages are gone. However there was this in dmesg at startup:

"net/bluetooth/hidp/hid.c: event field not found"

Does anyone know what this is?

----------

## Zubzub

does anyone know where I can get a 2.6.15 patch, Im running 2.6.15-gentoo-r8 because of acpi problems in higher versions, bluez site only has a patch for .18.

I already did everything from the outdated tutorial, except for the kernel patch and I still get Switching device 046d:0b02 to HCI mode failed (No such file or directory) when I run hid2hci so I guess patching the kernel is the last thing I need to do. ( I use a new dinovo laser version btw)

----------

## scoon

Hey there, 

I have 2.6.13-mh2.  If you want to try that, post back.

-scoon

----------

## Zubzub

yes that would be nice, you can send it to DeRijcke.Erik@Gmail.com if you like.

----------

## ColiverHB

Has anyone gotten their Logitech diNovo Media Desktop Lazer Bluetooth dongle to actually use Bluetooth?

I've been trying for days and cant quite seem to get it to work, If anyone has, could you tell me how?

It just doesn't seem to show up in hciconfig after I run hid2hci, and its getting very frustrating.

Thanks in advance.

----------

## Persona

The way to get the Logitech diNovo Media Desktop Laser to operate in bluetooth mode is to build bluez-utils with the dinovo mdl patch as seen here.

Fortunately, for us, we do not have to generate and ebuild for this or try to patch it ourselves.

ebuild+patch (set the dinovo-mdl flag)

It is recommended that you use a portage overlay for this.

It is also recommended that you still patch your kernel.

This also may help. (I am not sure, but I have done it myself)

 *trevorj wrote:*   

> 
> 
> This is ONLY for the Logitech DiNovo Media Desktop Laser !
> 
> ```
> ...

 

----------

## red-wolf76

Kernel compilation after patching with the bluez-patch fails miserably already with sources newer than 2.6.17-5 (mm-sources)... I've confirmed this with gentoo-sources as well, so it doesn't appear to be a problem related to any particular kernel patchset.

Does this dinovo-mdl-patch work on the older v2.0 dinovo MediaDesktops (the ones without the laser mouse) as well? This

 *Quote:*   

> This is ONLY for the Logitech DiNovo Media Desktop Laser !

 

appears to put a wrench in it...

----------

## Persona

red-wolf76 check where /usr/src/linux links to. On my machine I noticed that I was linking to the oldest gentoo-sources (not 2.6.18-r6) I had that is what caused the patch to go so horribly(2.6.18 patch).

As for the patches mentioned the dinovo-mdl patch should not do anything since its is just telling the program the device names that it should be looking for to switch modes as for the kernel patch from trevorj I have no idea if that affects anything.

Just to be safe use the dinovo laser patches if you have it, otherwise disregard them.

----------

## Neskweek

Hi

It has been a long time since I didn't dropped by  :Razz: 

I must confessed that I moved my system to Kubuntu for a year before going back on my beloved Gentoo  :Smile: 

Yeah Why I tell you this ?

Because it makes 2 years since I wrotte this HOWTO but I've managed to get all my buttons works since only 3 days :/

So I've added my solution to the Howto on the first page and made some minor ajustment to the HOWTO.

I currently use :

2.6.18-gentoo-r6 kernel

2.6.18-mh8 patch from Bluez

bluez-libs 3.9

bluez-utils 3.9

I hope it will help  :Smile: 

I'd just like to say two other things :

- the button part might work using the default bluez-libs/bluez-utils ebuilds. But if not, it works on my computer using the latest bluez sources (version 3.9)

- It seems that a patch had been realeased for bluez. This patch may allow sending text to the mediapad LCD. I didn't tried it yet (more info : http://linux.yes.nu/diNovo/ )

----------

## red-wolf76

 *Persona wrote:*   

> red-wolf76 check where /usr/src/linux links to. On my machine I noticed that I was linking to the oldest gentoo-sources (not 2.6.18-r6) I had that is what caused the patch to go so horribly(2.6.18 patch).
> 
> As for the patches mentioned the dinovo-mdl patch should not do anything since its is just telling the program the device names that it should be looking for to switch modes as for the kernel patch from trevorj I have no idea if that affects anything.
> 
> Just to be safe use the dinovo laser patches if you have it, otherwise disregard them.

 Hi Persona,

I did change the symlink to point to the newest sources but the patch would fail anyways. Besides, I'm using ~x86 mm-sources, so that may have something to do with it as well. Usually, latest installed kernel sources besides the .17 one I'm running is about one version ahead of the bluez patches, so I'm bound to be sort of piffled anyways...

I'll disregard the laser patches for now. As long as it works...

@Neskweek: Hi, and welcome back!  :Smile: 

----------

## Neskweek

Well turns out I was too confident in my udev rules :/

Xorg doesn't like symlinks : it can't use them  :Mad: 

I have to find a better udev rule. I must find a way to create a real node /dev/input/mx900 (or /dev/mx900)

If you have any ideas ...  :Razz: 

At that point I can create symlink(SYMLINK+="/dev/input/mx900"), but udev refuses to create a second node (NAME="/dev/input/mx900") pointing to the /class/input/inputNN/eventX device :/ . It seems he don't want to create a second node for an event.

----------

## Neskweek

Here are some info on the mouse :

cat /proc/bus/input/device

 *Quote:*   

> 
> 
> I: Bus=0005 Vendor=046d Product=b001 Version=2200
> 
> N: Name="Logitech Bluetooth Mouse"
> ...

 

udevinfo -n /dev/input/event9 -a

 *Quote:*   

> 
> 
> Udevinfo starts with the device specified by the devpath and then
> 
> walks up the chain of parent devices. It prints for every device
> ...

 

vi /dev/.udev/db/class@input@input64@event9

 *Quote:*   

> 
> 
> N:input/event9
> 
> S:input/by-path/pci-0000:00:1d.0-usb-0:acl000761087CE8-event-
> ...

 

Using this rule :

KERNEL=="event*", ATTRS{uniq}=="00:07:61:08:7C:E8" , NAME="input/mx900"

the udevtest gives :

udevtest /class/input/input64/event9

 *Quote:*   

> 
> 
> This program is for debugging only, it does not create any node,
> 
> or run any program specified by a RUN key. It may show incorrect results,
> ...

 

----------

## Neskweek

Ok I've spend some time this week end trying to create a real mx900 node. And I've succeed by adding this line in this file :

/etc/udev/rules.d/50-udev.rules

 *Quote:*   

> 
> 
> # input devices
> 
> KERNEL=="mice",         NAME="input/%k", MODE="0644"
> ...

 

each time I connect the mouse now, I've got this node pointing to the mouse devices (and it works : cat /dev/input/mx900 produces the same event as the old /dev/input/eventX when I move the mouse or when I press buttons and all the info I've putted in my precedent post are just the same)

But (and this is a big but ...) Xorg can't use it :/ 

I get a :

/var/log/Xorg.0.log

 *Quote:*   

> 
> 
> (II) evdev brain: Rescanning devices (1).
> 
> (EE) PreInit returned NULL for "MX900"
> ...

 

o_O

So at this point I'm kind of stuck  :Sad: 

I have no idea how to make Xorg (or the evdev brain  :Razz: ) using this node correctly ... 

If I doesn't mistake, the mx900 node I've created should work just as the old eventX, or I missed something between the moment the node is created and the moment it is used by Xorg.

PS: Ok after some surfing I've found that https://forums.gentoo.org/viewtopic-t-465797-highlight-logitech+preinit+returned+null.html

In this thread it is explain that, just as I feared, evdev only checks devices that match the name event* :/

One way to pass this problem for the MX900 (I suppose) is to create a /dev/input/eventM (M standing for M  :Smile:  for Mouse). Hopping this should trick the evdev driver. Or even freaky : create the mx900 node and simlink a /dev/event0 (what a pity  :Razz: )

If asking, using Option "Dev Name" "Logitech Bluetooth Mouse"  in the Xorg Mouse section didn't worked in my previous attempt  :Sad: 

I'll try again ... but with Option "Name" "Logitech Bluetooth Mouse" instead

We'll see but already I can tell that's an awful soution for our mouse : if the mouse hasn't been moved or paired before Xorg activation, Xorg will fail to start ... even with Option "AllowMouseOpenFail"  "true"  (odd)

Then there is one problem I anticipate :/ : this is the mx900 power saving mode... 

How does Xorg will react ? 

All I can tell for now is that even if the mouse is reactivated on the same event file (/dev/inpu/event6) after it went down , xorg fail to use it :/ you'll have to reboot X server ...

----------

## red-wolf76

<professor-farnsworth>

Good news, everyone!

</professor-farnsworth>

Seems like the current 2.6.19-patch works with the latest 2.6.20-mm-rc6-mm3-sources! My DiNovo (v2.0 non-laser) boots fine in HCI. Without the patch, it was boot-protocol only. I'm no longer locked to a 2.6.17-kernel. Yay!

I wish I could help you, Neskweek, but I haven't much delved into evdev yet.  :Sad: 

----------

## Neskweek

 *red-wolf76 wrote:*   

> 
> 
> I wish I could help you, Neskweek, but I haven't much delved into evdev yet. 

 

Don't worry old thing  :Wink: 

I've made it last evening  :Smile:   :

So :

- Option "Name" "Logitech Bluetooth Mouse" :

This Option doesn't work AT ALL with our mouse => it returned a NULL Preinit in Xorg log...   I suppose this option search the "Logitech Bluetooth Mouse" string using some sort of USB-related retreiving mecanism. Obviously it can't work with bluetooth mouse since they don't appear clearly on usb BUS. That's also why lomoco and other logitech based programs doesn't work with the mx900 : the device doesn't appear clearly on USB bus

-Option "Dev Name" "Logitech Bluetooth Mouse"

Here there is some interesting output (I'll put the /var/log//var/log/Xorg.0.log later I'm not at home) 

Clearly, evdev finds several events related to our mouse. Here the problem is that evdev can't state which one to use ( or what to do with them ). The result is that no Pointer is returned and X crash ...

So here we are back on the udev rules  that's our only hope: 

We know now that :

- we must launch our rules BEFORE the udev general rules (/etc/udev/rules.d/50-udev.rules) => we create a file called /etc/udev/rules.d/40-dinovo.rules

- Our rules described before work ! That's granted. I mean we are able to create a node which is associated with the correct device we want to use and it product the good result... except for Xorg evdev driver, which is waiting for a node called /dev/input/eventX where X is an integer between 0 and 9 (yep tested ... X=10 oddly works when the system create a such devices but not working when you create it with a udev rule ... oO).

- symlinking the device doesn't work :  

create a /dev/input/mx900 and symlink a /dev/input/eventX to it => Preinit NULL (odd)

create a symlink /dev/input/mx900 linked to a /dev/input/eventX generated automaticaly by udev general rules doesn't work 

Considering all that, here is the rules I've made last evening :

/etc/udev/rules.d/40-dinovo.rules

 *Quote:*   

> 
> 
> KERNEL=="event*", ATTRS{uniq}=="00:07:61:05:9a:b4" , NAME="input/event7", MODE="0644", SYMLINK+="input/keyboard"
> 
> KERNEL=="event*", ATTRS{uniq}=="00:07:61:06:8A:E1" , NAME="input/event8", MODE="0644", SYMLINK+="input/mediapad"
> ...

 

Here before udev.rules catch kernel events, we define our rules using MAC adresses of our devices, (they are written on the back of the mx900, keyboard and mediapad it's the numbers like 00:07:61:05:9a:b4).

As Xorg WANT nodes called /dev/input/eventX we gave him what it wants : we create 3 node : one per device. 

Why ? 

Because if we only do that for the mouse, if keyboard, mediapad & mx900 disconnect (power save mode) when they'll be reconnected we can't garanted that the keyboard, which had connect first hasn't use the event9 we have chosen to be the mx900 event :/

To counter that we decide to assign event to our keyboard and mediapad, to be sure they won't stole the mx900 node.

Oh why the symlink ? 

It is just a visual help : a simple "ll /dev/input/*" will show which event are linked to which device (they can be ommited if you like)

Then, type 

 *Quote:*   

> 
> 
> udevstart
> 
> 

 

to make the changes effective

All we need to do next is to change our device line in /etc/X11/xorg.conf 

 *Quote:*   

> 
> 
> Section "InputDevice"
> 
>         Identifier "MX900"
> ...

 

Now restart your Xorg server and miracle it works !

Even better :

While your Xorg server is active try a :

 *Quote:*   

> 
> 
> hidd --unplug [Mouse MAC Adress]                      # Unplug totaly the mouse 
> 
> 

 

look in the /dev/input directory : you don't have a /dev/input/event9 => yeah that's normal  :Wink: 

move the mouse : It's freezed ! => yeah that's normal too  :Wink: 

Now reestablish a connection with your mouse :

 *Quote:*   

> 
> 
> hidd --connect [Mouse MAC Adress]                      # Connect the mouse 
> 
> 

 

look in the /dev/input directory : you have a /dev/input/mx900 linking to a /dev/input/event9 node  :Smile: 

And the result waited for : move the mouse : it work !

Unpluging the mouse while Xorg and reconnecting it later works perfectly : the Xorg server hold steady  :Smile:  To make it clearer (I don't know if my last sentence was clear enough :p) : The Power saving mode won't be a problem  :Smile: 

I've tested those changes last evening for 5 hours => putting the mouse on dongle for battery recharging and take it back doesn't make the Xorg server loose the mouse.

Wait one hour until the mouse go to power saving mode doesn't make Xorg loose the mouse  :Smile: 

That's a great step  :Smile:  I'll make the changes in the howto on the first page  :Smile: 

But there is still one thing annoying : at PC boot time : the mouse isn't connected ... and Xorg don't start, even with the 

Option "AllowMouseOpenFail" "true"

 :Sad: 

----------

## uagent

I have the Dell Bluetooth Wireless Keyboard and Mouse Bundle, and I've tried editing the hci_usb.c and hid2hci.c code to try and get it to pick up on my dongle's id's, but have had no success. I've read through this thread, and there doesn't seem to be much documentation on what to do when hid2hci and hidd don't pick up on the device.

What I think the issue is for those who aren't getting the patches to pick up on their devices is that there is a 4th device that isn't being picked up by the Gentoo kernel for whatever reason. The reason why I say this is that this is the lsusb from my Gentoo installation:

```

ssh linux # lsusb

Bus 002 Device 004: ID 046d:c70a Logitech, Inc. 

Bus 002 Device 003: ID 046d:c70e Logitech, Inc. 

Bus 002 Device 002: ID 046d:0b02 Logitech, Inc. 

Bus 002 Device 001: ID 0000:0000  

Bus 001 Device 001: ID 0000:0000  

```

Now, the same box, from the Ubuntu 7.04 Feisty Fawn Live DVD:

```

ssh linux # lsusb

Bus 002 Device 005: ID 046d:c709 Logitech, Inc.

Bus 002 Device 004: ID 046d:c70a Logitech, Inc. 

Bus 002 Device 003: ID 046d:c70e Logitech, Inc. 

Bus 002 Device 002: ID 046d:0b02 Logitech, Inc. 

Bus 002 Device 001: ID 0000:0000  

Bus 001 Device 001: ID 0000:0000  

```

I also noticed that hci_usb picked up on the "hidden" device in Ubuntu just fine (according to their buglists, they seem to have integrated the patch into their sources, which is fine, I don't mind adding one line). I'm just wondering how I can go about getting the kernel to pick up on the 4th device. I'm convinced at this point that the lack of detection is why my bluetooth dongle isn't working.

----------

## djnauk

I've just re-installed my system and following instructions, and in HCI mode with the kbd driver I have the following symbol map (kernel 2.6.20-gentoo-r7 and xorg-7.1). This was manually created with xev and the keycodes DB:

// Logitech diNovo Media Desktop

partial alphanumeric_keys

xkb_symbols "dinovo" {

    key <I2E> { [ XF86AudioLowerVolume ] };

    key <I20> { [ XF86AudioMute ] };

    key <I30> { [ XF86AudioRaiseVolume ] };

    key <I29> { [ XF86AudioMedia ] };

    key <I24> { [ XF86AudioStop ] };

    key <I10> { [ XF86AudioPrev ] };

    key <I19> { [ XF86AudioNext ] };

    key <I22> { [ XF86AudioPlay, XF86AudioPause ] };

    key <I5F> { [ XF86Standby ] };

    key <I02> { [ XF86WWW ] };

    key <I6C> { [ XF86Mail ] };

    key <FK17> { [ XF86Search ] };

};

----------

## red-wolf76

Grah! That'll teach me to upgrade packages!

Just upgraded all the bluez stuff to version 3.10 and I'm back in bluetooth hell! As far as I can tell, none of the scripts got plastered by the update, but it's still not working.

Remotely logging in through ssh and connecting stuff via hidd --search and pressing the buttons will work, but the bastard won't keep it on through a reboot.

I shallowly recall having to delete the device entries from /var/lib/bluetooth/*/hidd. Might that be it?

----------

## djnauk

 *red-wolf76 wrote:*   

> 
> 
> Remotely logging in through ssh and connecting stuff via hidd --search and pressing the buttons will work, but the bastard won't keep it on through a reboot.

 

IIRC, you can add '--connect bt:ad:dr:es:s1 --connect bt:ad:dr:es:s2 --connect bt:ad:dr:es:s3' to the HIDD command in the init script and it'll force the bluetooth subsystem to reconnect with the devices on login.

Note: I've never tried it, and only something I've seen written in passing (as I worked to get mine running), so it may or may not work, but could help!  :Smile: 

----------

## red-wolf76

Ho-hum... For the time being, I reverted back to Version 2.25 of bluez-libs and bluez-utils and things are back to working again, boot-mode only though. I will try your suggestion and see if I can make it work.

After doing an hidd --search I've even seen them connect directly in bluetooth mode yesterday while fiddling about. Not reproducably, though... It's a horrid mess!  :Mad: 

Also, I seem to have more dice using mm-sources-2.6.21-mm2 but that breaks my nvidia module. Crud!

----------

## djnauk

 *red-wolf76 wrote:*   

> Ho-hum... For the time being, I reverted back to Version 2.25 of bluez-libs and bluez-utils and things are back to working again, boot-mode only though. I will try your suggestion and see if I can make it work.

 

Have you applied the bluez-patches to the kernel? Your keyboard should could out of boot mode then.

----------

## red-wolf76

Bluez-patches are currently at V2.6.20 whilst my latest kernel (mm-sources) is already at 2.6.21-r2. The old kernel I reverted to has the patches, I believe.

The funny thing is, that I've had it working under mm-sources without patches - and in bluetooth mode! Plus, when I tried an earlier patch on old sources I had lying around in a slot, it complained a lot about changes being already in there...

Unfortunately I'm nowhere near knowledgeable enough to check the source code myself. More of a "dumb user", I am...

----------

## Persona

New version of net-wireless/bluez-utils which is currently at 3.11.

Problems encountered: 

when using the hid2hci command with a Logitech BT dongle causes kernel oops (I can confirm that for the Dinovo Laser set, as for the others I do not know about)

http://www.ussg.iu.edu/hypermail/linux/kernel/0703.3/0188.html

Also it has changed the way daemons/services are run.

check the ebuild for more info

http://gentoo-portage.com/AJAX/Ebuild/46592/View

I would suggest waiting a little longer until the bugs are worked out before upgraded to the newest version of bluez-utils. Since it is only a few days old at this point.

----------

## red-wolf76

You can compile bluez-utils-3.10.1 with the USE flages "old-daemons" for the time being and it will retain HIDD and so forth.  Maybe that'll work on 3.11 too... Since those are deprecated however, it may be necessary to make a brand-new HOWTO for the new architecture in time.

Interestingly, when the devices have _not_ been paired (using HIDD), I can see and connect them under Gnome with bluez-gnome, but I can click on the authorization button all I want it won't authorize and I don't get to put in a PIN. (This happened both with my MediaPad and the MX900 Mouse! I needed the keyboard paired to get into gnome and had another wired mouse connected).

I am missing "input" in the services list of the dongle, though.   :Crying or Very sad:  Maybe that's what's causing all this. Also, before bluez-gnome gets started, I guess it's going to be a pain to get the devices to work in boot-mode.

Why is Logitech making such great keyboards and then sucking up (effectively) to Mickey$haft by failing to provide any Linux stuff at all. Hell, even if they made only a debian RPM, someone could work with that and spread the goodness!

----------

## red-wolf76

Has anyone grokked the new bluez-dbus-API to the extent of getting things working yet?

I'll recompile stuff using old-daemons on sunday, since without HIDD, my setup's currently a dud and I can only use the diNovo stuff as expensive paperweights until I get this working.

EDIT: Ok, update time... I recompiled stuff with -old_daemons and used hidd --search to connect my devices  (and they work in bluetooth mode) but with the keyboard, weirdness ensues! First of all, it's no longer reacting to the shift key, I have to engage CAPS_LOCK to receive upper case letters, but apparently the number row remains unaffected. Since I'm using special characters in my mail password, I can't check my mail! WTF?

Also, the keyboard and the mouse experience rather severe repetitions of keypresses and/or mousebutton clicks.

*groan*

----------

## Diavolo

I have switched to bluetooth and everything seems to be connected fine. A hcitool scan finds Mouse and Keyboard but they don't work.

# hidd --search

bash: hidd: command not found

Any idea? What did I miss? I scanned with the command hcitool scan.

----------

## red-wolf76

 *Diavolo wrote:*   

> I have switched to bluetooth and everything seems to be connected fine. A hcitool scan finds Mouse and Keyboard but they don't work.
> 
> # hidd --search
> 
> bash: hidd: command not found
> ...

 

Did you compile with USE="old-daemons"? Because hidd isn't (among others) included in the package by default any longer.

Incidentally, both keyboard, mouse and keypad of my suite are now working smoothly under Gnome with its resident bluetooth tool, but I still need to switch the receiver into hci-mode manually using a terminal in Gnome. The devices won't automagically connect if HID2HCI is called during boot, so I have to leave that turned off for stuff to work in GDM.

----------

## Diavolo

Thank you for your answer.

Do I need hidd to use bluetooth? I would recompile if yes.

When I switch manually with hid2hci or If I restart bluetooth, keyboard and mouse don't work any more. That's my problem...

 *red-wolf76 wrote:*   

>  *Diavolo wrote:*   I have switched to bluetooth and everything seems to be connected fine. A hcitool scan finds Mouse and Keyboard but they don't work.
> 
> # hidd --search
> 
> bash: hidd: command not found
> ...

 

----------

## red-wolf76

 *Diavolo wrote:*   

> Thank you for your answer.
> 
> Do I need hidd to use bluetooth? I would recompile if yes.
> 
> When I switch manually with hid2hci or If I restart bluetooth, keyboard and mouse don't work any more. That's my problem...

 

Actually, you don't need hidd if you have a bluetooth manager in your desktop environment. I only use Gnome with net-wireless/gnome-bluetooth, and for kde theres net-wireless/kdebluetooth.

So when I need bluetooth for other stuff (the keyboard performs well enough in boot-protocol) I just whip open a terminal in gnome and manually sudo hid2hci. The devices connect automatically, but I think I had to use hcitool scan and press the connect button on each device at least once before so the device keys got saved.

I'm not at my box right now, so I can't post my configs, but I'll try sunday evening (CEST).

----------

## Diavolo

Thank you  :Smile: 

----------

## dpetka2001

sorry for digging up such an old topic but i was wandering if the same guide can be 

applied for Logitech DiNovo Mini...has anyone tried it or has a DiNovo Mini in his 

posession? i would like to share some opinions because i'm thinking of buying it...

thanks in advance...

----------

## s34get

could someone post how to get the bluetooth connection working with bluez-4.x , please.

----------

