bluez 4.77
Hello,
I am trying to read data from Health Device, (blood pressure monitor) using bluetooth dongle. Here my environment:
Ubuntu 2.4.35.4
bluez 4.69 - 0ubuntu2
D-Bus 1.4.0
Python
I need to upgrage bluez 4.69 to 4.77.
Can anyone please tell me how to replace the package or from where I can get it.
Regards
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Ubuntu bluez Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- bushwalker
- Solved:
- Last query:
- Last reply:
Revision history for this message
|
#1 |
Are you *sure* you need to upgrade bluez to a higher version?
If you are not entirely sure of that, please provide the details that you believe indicate that this needs to be done.
If you are sure that bluez needs to be upgraded, does it have to be *exactly* that version? Could it be a higher version?
If you need to install that exact version, you would probably have to manually compile it from source and install it, though you could search through all these PPA's to see if any provide that version:
https:/
Please note that PPA's (with the exception of the occasional official PPA from Canonical) are unofficial.
If stability of your bluetooth system is a major concern, then you should not upgrade bluez--only the version you have has been well-tested in combination with your versions of your other packages. If stability is a a significant but not major concern, you could try installing a higher version. If stability is not a particularly significant concern, then the easiest solution (assuming you really need to upgrade bluez, and also assuming that any version higher than 4.77 would work) would probably be to use the version from Natty by manually installing the .deb file provided at https:/
Please feel free to post again for more information. If you're sure you need/want to upgrade bluez and you want further assistance with one of the methods here (or some other method), I can try and help you with that too.
Revision history for this message
|
#2 |
Thanks a lot for your mail.
My whole purpose is to read data from continua heal device through bluetooth. I have found a script here:
http://
According to it bluez 4.77 (or heigher) is required. I was able to read profile from blood pressure but could now create proxy object in python script. I am assuming i need to upgrade to 4.77. i could not find anywhere.
Hope i could explain. I am stuck here.
Revision history for this message
|
#3 |
That website says that a higher version than 4.77 will work too. Have you considered my suggestion about using version 4.85 from Ubuntu 11.04 Natty Narwhal?
Revision history for this message
|
#5 |
If you find that you need additional assistance installing version 4.85 from Natty, please feel free to post again.
Remember that, once you install this version, you'll have to manually keep it up to date (by manually downloading new .deb packages and installing them). If bluez from Natty requires that other Natty packages be downloaded and installed manually to fulfill dependencies, then you'll have to keep those up to date as well. While you don't have to upgrade every time a new version comes out, you should always look at what was changed in new versions that come out, since some may fix security vulnerabilities.
Revision history for this message
|
#6 |
i386 packages will work on heigher intel processoors?
Revision history for this message
|
#7 |
is there any sequence i should follow during installation of packages ....?
Revision history for this message
|
#8 |
"i386 packages will work on heigher intel processoors?"
The short answer is "no." The longer, more involved answer (which still pretty much comes down to "no") follows.
Generally speaking, packages for the i386 architecture will not work on other architectures like amd64/EM63T/x86_64 or IA-64, even if those other architectures are capable of executing i386 native code. There are architecture-
If you're manually installing BlueZ, you should install a package for your architecture. If your architecture is amd64, you should use that package version, and not the i386 version. However, when I say "your architecture", I mean the architecture that your operating system is compiled against. That could be your machine's actual architecture, or it could be some "lower" contained architecture. To find out what architecture this is, run:
uname -m
If the output is x86_64, then you are running Ubuntu amd64 and you should use the amd64 package. If the output is i686, then you are running Ubuntu i386 and you should use the i386 package. Other possible outputs that would indicate that you should use the i386 package are i386, i586, and IA-32 (I think that last one is a possible output of "uname -m"...I'm not actually sure about that).
If you want to use bluez-4.85-0ubuntu1 (the version in Ubuntu 11.04 Natty Narwhal that I discussed above, see https:/
https:/
And here's a direct link to download the amd64 package:
https:/
Revision history for this message
|
#9 |
"is there any sequence i should follow during installation of packages ....?"
Maybe. If you specify the method you have chosen to use for upgrading BlueZ (did you find a PPA, or are you using the version from Natty, or what?), and what the different steps are (as far as you know) that have to be put in sequence, then I might be able to give advice with respect to the order in which things should be done.
If you do manually install one or more packages (for example, if you follow my suggestion and use the version from Natty), then you should remember what packages you installed, or write it down somewhere, since it will be up to you to maintain them (i.e. to decide whether or not to update them, and to manually install the next version when you do decide to update them). You can certainly discover which packages are manually installed by examining your system, but it's easier to just keep the information. It's not necessary for you to remember the specific versions, because it's trivial to determine what version of a package is installed.
Revision history for this message
|
#10 |
https:/
goes to
http://
which i installed earlier but
dpkg -l | grep bluez - was shoiwing me 4.69.
now after insstalling .deb packages i am getting as follows:
dpkg -l | grep bluez
ii bluez 4.85-0ubuntu1 Bluetooth tools and daemons
ii bluez-alsa 4.85-0ubuntu1 Bluetooth ALSA support
ii bluez-audio 4.85-0ubuntu1 Transitional package
ii bluez-compat 4.85-0ubuntu1 BlueZ 3.x compatibility binaries
ii bluez-cups 4.85-0ubuntu1 Bluetooth printer driver for CUPS
ii bluez-gstreamer 4.85-0ubuntu1 Bluetooth GStreamer support
ii bluez-pcmcia-
ii bluez-utils 4.85-0ubuntu1 Transitional package
what are .tar files for? do i need to make them?
Revision history for this message
|
#11 |
i have taken .deb packages from:
https:/
and i have installed packages as following sequence:
bluetooth_
bluez_4.
bluez-utils_
libbluetooth3_
libbluetooth-
bluez_4.
bluez-alsa_
..audio ..deb
..compat ..deb
...cups..deb
..gsstream ...deb
..pcmcia ..deb
Revision history for this message
|
#12 |
I don't know what you mean when you say that https:/
Do you mean that when you open https:/
I am able to download https:/
ek@Apok:~$ wget https:/
--2011-01-24 12:18:41-- https:/
Resolving launchpad.net... 91.189.89.222, 91.189.89.223
Connecting to launchpad.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://
--2011-01-24 12:18:43-- http://
Resolving launchpadlibrar
Connecting to launchpadlibrar
HTTP request sent, awaiting response... 200 OK
Length: 470374 (459K) [application/
Saving to: `bluez_
100%[==
2011-01-24 12:18:51 (134 KB/s) - `bluez_
ek@Apok:~$
What was it that you installed earlier? The .deb package, or something from http://
The output of "dpkg -l | grep bluez" indicates that you are now running bluez-4.85-0ubuntu1 as provided in Natty. (Actually, you might need to restart some programs, or potentially even your computer, to ensure that everything using bluetooth on your computer is using the newly installed version.)
A .tar file is a common archive format, sort of like .zip, except that it preserves information about Unix-style file permissions, which makes it more appropriate for many uses on Unix-like systems. Another (actually, the primary) way in which .tar differs from .zip is that the .tar format does not implement compression. Instead, the .tar file can itself be compressed in some other format, for example, a .tar file compressed in GZip (which is not the same as .zip) format commonly has an additional .gz extension. That's why the files at http://
Those .tar.gz files from http://
Revision history for this message
|
#13 |
I had not seen your latest post when I composed and sent my previous post. I will reply to that shortly. It answers some questions that I asked in the most I just made; you don't have to answer those questions again. (In fact, from glancing at your latest post, I don't think you still need to answer any of the questions I asked in my previous post, but I'll have to get back to you about that.)
Revision history for this message
|
#14 |
Everything you did seems good to me, except for one thing:
bluez_4.
You should undo that. (Or undo everything else...my previous post explains the issues here, and why it is that I recommend going with the .deb packages rather than with compiling and installing from source. Also, if you decide to go with compiling and installing from source, then there's more to it than that, as there are Debian modifications-
Assuming you extracted that file, ran ./configure with no arguments, and then ran "make" and "make install", the effect was to install BlueZ 4.85 into /usr/local. The .deb packages, when you installed them, installed a special version of BlueZ, based on version 4.85 but modified specially to work right on Ubuntu, in /usr. This special version is "numbered" 4.85-0ubuntu1. Since they put their files in different places, installing the .deb packages shouldn't have interfered with the effects of running "make install", nor should running "make install" have interfered with the effects of installing the .deb packages.
Therefore, all you have to do to remove the version installed from bluez_4.
make uninstall
You probably ran "make install" with sudo--if so, you'll have to prefix "make uninstall" with sudo as well.
I still don't know what you meant when you said that https:/
Revision history for this message
|
#15 |
Sorry about redirection text. Thats my bad. There is no issue with it.
But after doing make unstall, hcitool is not working.
i started bluetooh with:
sudo /etc/init.
but still now working.
Revision history for this message
|
#16 |
"Sorry about redirection text. Thats my bad. There is no issue with it."
OK, no problem.
"But after doing make unstall, hcitool is not working."
Oh, yeah. I guess I should have thought about how uninstalling bluez from /usr/local wouldn't necessary stop that installation from running. I suppose it would have been prudent to examine what was running before performing the uninstallation. (In Unix-like systems, deleted files aren't really deleted until they are no longer running/open. This is just one of a few possibilities for the hcitool problems now.)
If you can reboot (I understand if you're busy with something that precludes that right now), then please do so, and see if the hcitool problem is resolved. That ought to make the software installed from the .deb packages take over completely. If you're not rebooting, please let me know, so I don't assume you did.
If that doesn't work, then please post a more thorough description (or complete output, if you are working on the command line) of how hcitool is not working. Since hcitool is a command-line program, I presume you are running it in a Terminal and can paste a complete log containing all the commands you have run and all the output. Please do that. (Unless rebooting fixes it, of course.)
Revision history for this message
|
#17 |
hcitool is working after reboot but
hcitool dev
does not show my bluetooth dongle, what was working before uninstall. it was showing hexa number of the dongle.
and for
hcitool scan
Output: Device is not available: No such device
Revision history for this message
|
#18 |
sudo /etc/init.
*bluetooth is not running
this is what i am getting now ..
Revision history for this message
|
#19 |
thought the status is showing ..
*bluetooth is not running
i can read profile
and
hcitool scan showing me few devices around me
Revision history for this message
|
#20 |
If the uninstallation worked properly (and there's no reason it wouldn't have, especially considering that you rebooted afterward, so no part of it could still be running), then the most likely explanation is that the version of BlueZ that you manually compiled from source and installed works (at least it recognizes your bluetooth adapter, that is), but the version installed with the .deb packages doesn't. I have no idea *why* this would be the case, but that is what seems to be happening.
To test this, we would revert all the packages back to the versions provided by Lucid; this hypothesis would be confirmed to a moderate degree of certainty if that caused your bluetooth adapter to be recognized again, and if your bluetooth adapter continued to be recognized after you then installed the version you compiled from source (this time, alongside the version provided by Lucid, rather than the version you currently have installed by the package manager, which is from Natty). If you wanted to know for sure if this was happening, you could uninstall the version of BlueZ installed by the package manager, instruct the package manager to pretend that it *is* installed (that later version, that is--the one corresponding roughly to the version you installed from source), and see if it still works.
However, rather than doing any of that, I have a different suggestion: Reinstall the version that you compiled from source (just run "make install" again), which should render your bluetooth adapter usable again. Test it with some bluetooth device that worked before, and provided that works, see if it works with the blood pressure monitor!
While the situation I am describing (having both versions installed alongside one another) is messy, it is one of the not-too-
Revision history for this message
|
#21 |
i have compiled source :
bluez_4.
so i can read profile again. i guess .deb packages did not work.
fyi:
uname -m
i686
Revision history for this message
|
#22 |
So bluetooth works (at least) as well as it did before we started this?
If so...then does it also work with the blood pressure monitor now?
Revision history for this message
|
#23 |
yes, my bluetooth dongle can read profile from surrounding devices. but the status shows:
*bluetooth is not running.
i am not sure this is the correct behaviour..
Revision history for this message
|
#24 |
i am trying to install natty itself and see how packages behave ...
Revision history for this message
|
#25 |
Upgrading to Natty from Maverick using the Update Manager is not yet supported, though you may be able to accomplish it Debian-style by editing /etc/apt/
Natty is very unstable compared to Lucid or Maverick, since it is still in alpha. You install and use it at your own risk.
If you do a fresh install (erasing and replacing your existing installation, or resizing your existing installation and installing alongside it), you might (potentially) get better results than by upgrading. If you do upgrade your existing system, you should remember to run "make uninstall" in the bluez-4.85 directory again. I recommend doing it first; conceivably the presence of that installation could disrupt BlueZ configuration when you install Natty. It probably wouldn't, but I'm not certain it wouldn't.
If it doesn't work in Natty and you want to try the version you built from source, you can run "make install" again. If that still doesn't work, you should run "make uninstall" and then run "make distclean" -- that takes it back to the way it was before you ran ./configure. Then you can configure and build again; this time the Natty toolchain will be used.
Revision history for this message
|
#26 |
Thank you again.
I downloaded 11.04 (natty) from
http://
natty-desktop-
i tried it twice. but halts at an error:
An error occured while installing packages:
E: Sub-process /usr/bin/dpkg returned an error code(1)
Tha following packages are in a broken state:
console-setup
This may be due to .......
Revision history for this message
|
#27 |
i will continue with my previous 10.x
any suggestion on:
sudo /etc/init.
*bluetooth is not running
Revision history for this message
|
#28 |
Thanks a lot Eliah Kagan for your prompt replies. That helped me a lot. I guess the issue i faced at the beginning has been solved though the effort now has taken a different direction.
Revision history for this message
|
#29 |
Thanks Eliah Kagan, that solved my question.
Revision history for this message
|
#30 |
It's not clear to me how your problem is solved, since what you were really trying to do was to get Ubuntu to use your blood pressure monitor via Bluetooth, which you have not yet succeeded at.
Please feel free, if you wish, to reopen this Question, or to start a new Question. You might even want to start two new Questions--one about your Bluetooth problem "*bluetooth is not running" and the other about your problem installing Natty.
Revision history for this message
|
#31 |
Thanks for your suggestion. I opened this question to find .deb bluez packages >4.77.
I have given up installing Natty because of time constraint. But could you pelase tell me steps to check the bluetooth stacks. I want to check each layer is working properly:
http://
(2.2 ARCHITECTURAL OVERVIEW - page 10)
L2CAP, MCAP. etc.
Writing script in python/C or somehow in commandline would be good.
Revision history for this message
|
#32 |
Here is my findings:
When I call sdp protocall (sdptool records 00:09:1F:80:07:E4) d-bus captures following signals from blood pressure monitor:
(assuming I am watching dbus events in a separate terminal)
vmplanet@ubuntu:~$ dbus-monitor --system
signal sender=
string ":1.77"
signal sender=:1.4 -> dest=(null destination) serial=513 path=/org/
string "Connected"
variant boolean false
signal sender=:1.4 -> dest=(null destination) serial=514 path=/org/
string "Devices"
variant array [
object path "/org/bluez/
]
signal sender=:1.4 -> dest=(null destination) serial=515 path=/org/
object path "/org/bluez/
signal sender=:1.4 -> dest=(null destination) serial=517 path=/org/
object path "/org/bluez/
signal sender=:1.4 -> dest=(null destination) serial=518 path=/org/
string "Devices"
variant array [
object path "/org/bluez/
object path "/org/bluez/
]
signal sender=:1.4 -> dest=(null destination) serial=519 path=/org/
string "Connected"
variant boolean true
signal sender=
string ":1.78"
string ""
string ":1.78"
signal sender=
string ":1.78"
string ":1.78"
string ""
signal sender=:1.4 -> dest=(null destination) serial=528 path=/org/
string "UUIDs"
variant array [
string "00001200-
string "00001401-
]
signal sender=:1.4 -> dest=(null destination) serial=536 path=/org/
string "Connected"
variant boolean false
signal sender=:1.4 -> dest=(null destination) serial=537 path=/org/
string "Devices"
variant array [
object path "/org/bluez/
]
signal sender=:1.4 -> dest=(null destination) serial=538 path=/org/
object path "/org/bluez/
-------
and then if I call methods of the objects
(qdbus --system org.bluez /org/bluez/
right away it shows following methods:
method QString org.freedesktop
method void org.bluez.
method void org.bluez.
signal void org.bluez.
signal void org.bluez.
method void org.bluez.
any suggestion?
Revision history for this message
|
#33 |
Nothing comes to mind at this time, but then I'm a bit out of my element now. Hopefully someone else will be able to lend a hand. I'll continue to monitor this question and help as I am able.
Revision history for this message
|
#34 |
I have installed bluez 4.85 on my Ubuntu and was expecting following Health Interfaces in service org.bluez:
Org.bluez.
Org.bluez.
Org.bluez.
Org.bluez.
I can see only org.bluez.Manager interface available. How could I get those interfaces.
I will appreciate any advice.
Revision history for this message
|
#35 |
plz see probable solution here:
https:/