With microSD with fresh 2014-10-07 image + apt-get update + apt-get dist-upgrade as of yestarday
Linux ev3dev 3.16.1-4-ev3dev #2 PREEMPT Sun Sep 28 19:57:58 CDT 2014 armv5tejl GNU/Linux
Both internal BT (hci1) and USB BT4.0 (hci0) show as down (with other microSD wich I've been using for 3-4 months both show as up).
root@ev3dev:~# hciconfig -a
hci1: Type: BR/EDR Bus: UART
BD Address: 00:17:EC:02:91:B7 ACL MTU: 1021:4 SCO MTU: 180:4
DOWN
RX bytes:570 acl:0 sco:0 events:28 errors:0
TX bytes:883 acl:0 sco:0 commands:28 errors:0
Features: 0xff 0xff 0x2d 0xfe 0x9b 0xff 0x79 0x83
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
hci0: Type: BR/EDR Bus: USB
BD Address: 00:19:0E:14:B7:2F ACL MTU: 1021:8 SCO MTU: 64:1
DOWN
RX bytes:1128 acl:0 sco:0 events:58 errors:0
TX bytes:716 acl:0 sco:0 commands:58 errors:0
Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH SNIFF
Link mode: SLAVE ACCEPT
root@ev3dev:~# hciconfig hci0 up
Can't init device hci0: Operation not possible due to RF-kill (132)
brickman was running, didn't remember to stop it to see if it is locking Bluetooth.
Yes, I recently turned on RFKILL in the kernel so that those not using bluetooth can save a little power. I haven't really played with it yet though to see how it works.
Stopping brickman won't make a difference, but in brickman under networking, make sure Bluetooth is enabled. It think this should turn Bluetooth back on.
Yes, after set Bluetooth ON in Brickman both hci0 and hci1 show as UP.
BLE is back, thank you.
Minor question: if I disable Brickman, ev3dev will start with Bluetooth off, right? So if I want Bluetooth but not Brickman I will have to let it start and stop it manually after a while.
Unless there is a way to control RFKILL without Brickman?
RFKILL is controlled by ConnMan, not brickman. birckman just provides a user interface to ConnMan. And ConnMan should remember your settings after reboot, so Bluetooth should be enabled at boot unless you turn it back off. There is also connmanctl for controlling ConnMan from the command line, so connmanctl enable bluetooth is another way to enable it.
Great!
rfkill unblock all would allow you to start the devices, but rfkill is not installed by default, apt-get install rfkill takes care of that.
potential solution:
# Let's take a look at what rfkill's got goin on.
$ rfkill list:
0: hci0: Bluetooth
Soft blocked: yes
Hard blocked: no
...
..
.
# If you have other connections like a wireless LAN, they might show up here
#
# K so tell rfkill to unblock bluetooth nah
$ rfkill unblock bluetooth
# again, let's check out rfkill
$ rfkill list:
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
...
..
.
# that looks betta.
#
# reset the adapter quick
$ hciconfig hci0 reset
# list devices and status
$ hciconfig dev
hci0: Type: Primary Bus: Magical-School
BD Address: NU:MB:ER:SI:NH:EX.....<blahblah>
UP RUNNING #<--BOOM
RX by....<blah\nblah\nblah\nblah>
I'm not sure if the late commenters are using ev3dev, but the "correct" solution for ev3dev is to enable Bluetooth using Connman. If you are not using ev3dev, it would be more useful to post on a general information website.
Hi guys! Im a total newbie in Linux (3 days) but I will try to help. In my attempts to solve the problem I stumbled upon rfkill service. Not quite sure whats the purpose of this service but it blocks connections sometime for lan, wifi and bluetooth
You can check of what is blocked by this command:
rfkill list
My bluetooth was blocked. I used this command:
rfkill unblock bluetooth
So now "not enough handlers" error is gone and BT works as it should
Most helpful comment
potential solution: