Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scan crashes if a device around is not broadcasting its name properly #12

Closed
Betree opened this issue Feb 26, 2017 · 8 comments
Closed
Labels
Milestone

Comments

@Betree
Copy link
Owner

Betree commented Feb 26, 2017

ERROR:magicblue.magicblueshell:Unexpected error with command "ls": 'NoneType' object has no attribute 'split'

Probably comes from this line :
dev_name = dev.getValueText(9).split('\x00')[0]

@Betree Betree added the bug label Feb 26, 2017
@Betree Betree changed the title ERROR:magicblue.magicblueshell:Unexpected error with command "ls": 'NoneType' object has no attribute 'split' Scan crashes if a device around is not broadcasting it's name properly Feb 26, 2017
@Betree Betree changed the title Scan crashes if a device around is not broadcasting it's name properly Scan crashes if a device around is not broadcasting its name properly Mar 1, 2017
@Betree
Copy link
Owner Author

Betree commented Mar 1, 2017

It should be fixed by 32fc061

@IzzyWizzy666
Not merged with master, please install from develop branch :

pip3 install --upgrade git+https://github.com/Betree/pyMagicBlue.git@develop 

Also I can't guarantee your bulb will work as this could be a symptom for an incompatible bulb (if you have a new version for example)

@Betree Betree added this to the 0.3 milestone Mar 1, 2017
@IzzyWizzy666
Copy link

IzzyWizzy666 commented Mar 2, 2017 via email

@IzzyWizzy666
Copy link

IzzyWizzy666 commented Mar 2, 2017 via email

@Betree
Copy link
Owner Author

Betree commented Mar 13, 2017

Ok so first problem is fixed as some devices around you aren't broadcasting their names properly.

The second problem that you have is a bit more complicate to diagnose, have you tried following this : How-to-use-manually-with-Gatttool ? It could really help to see if it works with it.

You can also try using bluetoothctl command to send request manually.

@Betree Betree closed this as completed Mar 13, 2017
@IzzyWizzy666
Copy link

IzzyWizzy666 commented Mar 13, 2017 via email

@Betree
Copy link
Owner Author

Betree commented Mar 14, 2017

There's still two things we can try :

  • Connect with gattool using a public address type instead of random (replace MAC_ADDRESS by your bulb mac address like you did in How-to-use-manually-with-Gatttool) :
    sudo gatttool -t public -b MAC_ADDRESS -I

  • (And / Or) Try a different handle to change the color (0x0b instead of the usual 0x0c):
    char-write-req 0x000b 56FFFFFF00f0aa to set white
    char-write-req 0x000b 56FF000000f0aa to set red

Most plausible cause is difference in bulbs protocol. I've never tried v8 (yours) nor ever heard of someone who did but v9 needed a special patch that may be required for v8 as well (see #7).

If that works for you the update could be pretty easy 🤞

@IzzyWizzy666
Copy link

IzzyWizzy666 commented Mar 14, 2017 via email

@Betree
Copy link
Owner Author

Betree commented Mar 14, 2017

Thank you very much for trying all of this 👍

Unfortunately I think your bulb version (v8) is currently incompatible. I created an issue specific to discussions about this version #13 and updated the README to state of this incompatibility.

Now if you need this to work you'll have to dig by yourself, I can help you with the basics but not having this bulb I won't be able to study its protocol.
A start would be to get a sniffer, Wireshark on Linux is doing a great job but you may be able to do it by directly logging bluetooth from your Android. You'll then need to see which handle is called and with which values when you change a color.
Finally you can try again using manually with Gatttool with the new values you've got and if it works then fixing magicblue will be as easy as 1-2-3 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants