Export to GitHub

aceracpi - issue #8

Internal Bluetooth socket not activating in aspire 3610


Posted on Aug 10, 2007 by Grumpy Dog

What steps will reproduce the problem? 1. fresh boot 2. login 3. modprobe acer_acpi (as root) 4. echo 1 > /proc/acpi/acer/bluetooth (as root) 5. no activation of CSR bluecore 4 module plugged into motherboard.

What is the expected output? What do you see instead? 1. I was expecting the light on the front of the laptop to light (like it does when the wireless card is activated via "echo 1 > /proc/acpi/acer/wireless".
2. There is also a LED on the module which does not light up. 3. 'lsusb' shows nothing...nor does 'hcitool -dev'

What version of acer_acpi are you using? On which distribution and kernel version? acer_acpi 0.6 and 0.7 produce the same result.
Linux biggirl 2.6.22.1-41.fc7 #1 SMP Fri Jul 27 18:10:34 EDT 2007 i686 i686 i386 GNU/Linux

Please provide any additional information below. This is not an Acer original module but was tested under winxp and uses the CSR bluecore4 chipset which is supported by bluez.

Is there any info available on which pins on the socket should be active for power (if testing with a voltmeter would help at all) or is there any way via CLI to see if this module is active in any way? I'll gladly write up something for the wiki after all is said in done if it'll help anyone else.

Comment #1

Posted on Aug 11, 2007 by Grumpy Bird

The good news is that you are the first to test the WMID bluetooth code :-)

Can you:

1) Load acer_acpi with "debug=2"

2) Check the output of dmesg and see what acer_acpi does when you run "echo 1

/proc/acpi/acer/bluetooth"

3) Check the output of "cat /proc/acpi/acer/bluetooth" before and after

Comment #2

Posted on Aug 11, 2007 by Grumpy Dog

"The good news"...what fun!

$modprobe acer_acpi debug=2 *******dmesg********************* acer_acpi: Acer Laptop ACPI Extras version 0.7 acer_acpi: Detected Acer AMW0 interface acer_acpi: Finding quirks acer_acpi: Looking for quirks acer_acpi: No quirks known for this laptop acer_acpi: Initialising interface acer_acpi: Commandline args: mailled(0) wireless(0) bluetooth(0) brightness(-1) acer_acpi: Doing _SB_.AMW0.WMAB( 1, 1, [16-byte buffer] ) acer_acpi: Execution status: 0 acer_acpi: Result: 0 bytes acer_acpi: Args: 0x00009610 0x00000031 0xffffffda 0xc0428092 acer_acpi: Doing _SB_.AMW0.WMAB( 1, 1, [16-byte buffer] ) acer_acpi: Execution status: 0 acer_acpi: Result: 0 bytes acer_acpi: Args: 0x00009610 0x00000035 0xffffffda 0xc0428092 acer_acpi: Doing _SB_.AMW0.WMAB( 1, 1, [16-byte buffer] ) acer_acpi: Execution status: 0 acer_acpi: Result: 0 bytes acer_acpi: Args: 0x00009610 0x00000034 0xffffffda 0xc0428092 acer_acpi: Driver registered


$echo 1 > /proc/acpi/acer/bluetooth *********dmesg******************** acer_acpi: Doing _SB_.AMW0.WMAB( 1, 1, [16-byte buffer] ) acer_acpi: Execution status: 0 acer_acpi: Result: 0 bytes acer_acpi: Args: 0x00009610 0x00000134 0x00005f2c 0x00000001


The output of "cat /proc/acpi/acer/bluetooth" is just like wireless and mailled: 0 when the acer_acpi is loaded and 1 afterward.

Comment #3

Posted on Aug 11, 2007 by Grumpy Bird

You have AMW0 - my mistake (and given I had the DSDT up for this the other day as well...). In which case, 'cat /proc/acpi/acer' is irrelevant, since I don't yet know how to read the 'real' value for bluetooth on any AMW0 laptop.

You are the first to install your own bluetooth module and try to get it working on Linux ;-)

AFAIK, it should work, since unlike Acer, we don't know how to tell if you have bluetooth or not yet, so we just try to enable anyway.

Unfortunately, I have no information on the pin layouts for connectors on Acer
laptops (and I don't have bluetooth on my laptop, so don't know what you should see).

Does the bluetooth button work properly under Windows then with this chip installed (turns on/ off, flashes blue)? If this is the case, then as a next step, we can start tracing ACPI calls on Windows and see if it's doing something different from what we expect.

Comment #4

Posted on Aug 11, 2007 by Grumpy Dog

I've been thinking that setting up a dual boot with windows might the next thing to do. I don't have any experience in driver developement although I do, at least, understand communication busses in digital systems since I like to tinker with microcontrollers.

What version of Windows is best for this kind of work? I have windows 2000 and XP home (that came with the laptop).

btw: If you have the button, I bought my module from "Oldegg wireless", an ebay store. The guy seemed to have a lot of good reviews and specializes in wireless accessories for laptops. I might, in the near future, dump the broadcom 4318 wifi card and go with an intel pro or something else that is fully supported by the kernel...tinkering with ndiswrapper every time I install and dealing with the instability of trying to make a connection has been getting tiring...especially at the office when people see this as a big reason not to try linux.

Comment #5

Posted on Aug 12, 2007 by Grumpy Bird

XP should be fine - there's not much in the way of driver development to do. If Windows can turn it on, then it's quite easy to poke about with the Windows kernel debugger and see what happens in ACPI.

How difficult was this to install anyway (i.e. dismantling the laptop, installing and then putting back together)? It looks like I can get it shipped to the UK if I decide to go through with it (although at three times the price of an external USB dongle, it's a little pricey for bluetooth ;-)

Comment #6

Posted on Aug 13, 2007 by Grumpy Dog

XP it is then...I might not be able to do this for a couple days as I use the computer for work. Maybe I can track down another hdd and that way I can keep my F7 install intact. Then again, if I decide to pick up the "perfect wifi card" from the oldegg (any idea which one that would be? I've heard good things about Intel Pro) then I might reinstall anyway...<sigh>

If you look at the item (assuming you're looking at 'oldegg wireless depot') there are some installation instructions that show you where the plug is on the motherboard but they don't say much about cover removal. For me it was the small cover just above the keyboard that has the power, mail, web, e and P buttons on it. Other models are under the keyboard but they all look like this top cover needs to be removed. No screws needed to be removed. It was a bit tough to remove and required a thin metal ruler that I had to slide under the cover from the side and then push up to unhook some little clips along it's top edge that otherwise can't be pryed apart. Most went fairly well but a couple (above the buttons) were a bit tough to get to. It was a bit of an exporation since I didn't know at first if the cover was held with screws but not that bad if I ever have to redo it. If you'd like I can send a couple close up pics of what the clips look like...maybe your model would look the same.

So all that aside...how exactly does one "poke about" at the windows kernel? You mention a debugger so it's some sort of software? I guess this must spit out some sort of code like dmesg or /var/log/messages

Comment #7

Posted on Aug 13, 2007 by Grumpy Bird

The Windows Kernel debugger - http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx - boot Windows in debug mode, attach the debugger to the local kernel, and you can then "dump" Windows ACPI log (i.e. find out which methods are called) and get the contents of ACPI buffers (we can dump the data buffers for the AMW0 methods that are called). This should tell us if Windows is doing anything different - I'll give you a more detailed set of instructions for what exactly to do later.

My laptop is one with pictures (Aspire 5020), but of course my Chinese is rather non-existant, so the captions aren't much use (it looks simple enough though...). From what I can see, the connector is fairly easy to get at, but I can't see clearly where the bluetooth module itself is supposed to be permanently installed.

Is this basically what you ordered? : http://cgi.ebay.co.uk/Acer-Laptop-Internal-Bluetooth-2-0-Module-8pin1-05cm-S_W0QQitemZ180140236992QQihZ008QQcategoryZ44999QQcmdZViewItem

As for the wireless card, the BCM4318 is going to be useful soon with the reverse engineered Broadcom wireless drivers (they've managed to solve the transmission problems now) (I have no experience with other wireless cards, so can't really give any advice).

Comment #8

Posted on Aug 13, 2007 by Grumpy Dog

The module itself goes in the side of the optical drive bay and the plug is a big 8pin deal and is about an inch above the F12 key. If you open the drive the disk tray is cut away under the upper most part of the disk; the space free'd up by this missing bit of drive tray is where the module goes. I haven't fished it in yet, I've just been plugging it in and letting it dangle above the keyboard for now. The module is really compact so I think it'll be a question of trying to fold the wires away so they don't get stuck behind th drive when I push it back in.

There's one screw in the bottom (right next to the two screws for the memory cover) that retains the optical drive. Then pull the drive out.

Thanks for the link to MS...I'll read up and see if I can get XP installed over the next couple days.

Comment #9

Posted on Aug 18, 2007 by Grumpy Bird

I've just installed my own bluetooth module now and it worked out of the box with acer_acpi - you might just have a dead module?

Comment #10

Posted on Aug 18, 2007 by Grumpy Dog

great news...and bad news. Now I HAVE to install windows to test it (I was trying to see if something like a VMware install of windows might suffice). "Out of the box" meaning you turned off the machine, plugged it in and turned it back on or did you have to reinstall or do something to make it look for new hardware?

Is there any difference between the 5020 and the 3610? Internally they look the same. Could you describe your module? I know that these kinds of chipsets need 4 connections, Vcc, ground, 2 for comm. Mine has 5...two of them are connected to the same spot on the module pcb (so two pings from the 8pin plug on the mobo are connected). The struck me as a little odd as the pics in the instructions show 4 wires and I positive this kind of a chipset would never draw enough current to require more.

Thanks for the heads up. I'll test with windows and replace the module if needed.

Comment #11

Posted on Aug 18, 2007 by Grumpy Bird

Plugged in, turned on laptop, loaded acer_acpi and ran "echo 1

/proc/acpi/acer/bluetooth" - bluetooth light came on, light appeared, entry appears in lsusb (but only when turned on, apparently).

My module is the one in this photo - http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&item=180140236992

Unfortunately, I've already installed it into the laptop, so don't really want to take the laptop to pieces again to get at it.

My module does have five wires as well though (picture of it installed coming when my camera is charged) - from top to bottom: red, black, red, black, red, empty x 3.

Comment #12

Posted on Aug 18, 2007 by Grumpy Dog

A few posts back you said "You have AMW0"...I'm not sure what this implies but is yours the same?

Could the distro have anything to do with it? I'm on F7.

We're hosting a bbq this afternoon so I'll be busy but if I need to test the module and send it back I'll do it tonight. We have received more workstations at the office so I don't need to take the laptop anymore. Hopefully I can exchange it. I had to cut through the shrink wrap to see what chipset was inside. I did it very carefully so I know I didn't touch anything. Anyway, if not it was my bad and I'll just order another.

thanks

Comment #13

Posted on Aug 18, 2007 by Grumpy Bird

Yes, both our laptops are AMW0 (this means the older Acer ACPI interface).

Attached is a photo showing the bluetooth connected on my laptop (it's not very clear, but my camera seems to be going a bit funny today, as per usual...)

Attachments

Comment #14

Posted on Oct 17, 2007 by Grumpy Bird

Kris,

Did you get any further with the bluetooth on your laptop, or should I just close this bug?

Comment #15

Posted on Oct 18, 2007 by Grumpy Dog

Sorry for not getting back. I decided to wait until just before Fedora 8 to reinstall windows...this way I don't have to worry about reinstalling more than I need to.

Please leave it open for another week. Once F8 is close to coming out I'll start playing with it.

What distro are you using? Would this have any affect? Are there any services made to detect new hardware? I've turned off some services to improve boot time (as per several webpages' recommendations) so maybe I've shut something off.

Thanks for your patience.

Kristofor

Comment #16

Posted on Oct 19, 2007 by Grumpy Bird

I use Slamd64 (an unofficial port of Slackware to x86-64). Detecting the bluetooth is a kernel thing, and unrelated to user space daemons - if I run dmesg after enabling bluetooth through acer_acpi, it shows that it has detected a new USB device, and that it is bluetooth.

Comment #17

Posted on Oct 19, 2007 by Grumpy Dog

I pulled the cover off the module again and compared it with a usb dongle (external memory-key-like) and saw that the internal that we're installing really is just a usb key with the wires soldered to the pads on the pcb where a male-A usb plug would go.

Tonight I'm going to test if the plug on the motherboard is powering up (since I now know where I can probe to do so. If the module is getting power then I'm going to put a male plug on it and plug it into a regular usb port...maybe take the external one and attach it to the internal plug (since I know that module works).

One way or another I'm going to figure out what's going on here! I'll soon know if it's a dead module or perhaps the plug on the mobo. I should look into whatever firmware upgrades there might be available.

Kris

Comment #18

Posted on Nov 9, 2007 by Grumpy Dog

This issue can be closed I think.

The module doesn't work under windows either. Since the module on the end of the wires is just a usb dongle with a fully plug on the end of a 5" harness I'm just going to have to get dirty and check if the socket is providing voltage to the module. If it is I'll swap the module with another out of a usb dongle I have that works. This way I'll be able to figure out if it's the module or the socket.

Thanks for the time you've spent on this.

ttfn Kris

Comment #19

Posted on Nov 9, 2007 by Grumpy Bird

Thanks Kris, closing bug.

Status: Invalid

Labels:
Type-Defect Priority-Medium