LightBlue 0.1 review
DownloadLightBlue is a cross-platform Python Bluetooth API
|
|
LightBlue is a cross-platform Python Bluetooth API. It is available for Mac OS X, GNU/Linux and Nokia's Python for Series 60 platform for mobile phones.
Here are some key features of "LightBlue":
Device and service discovery (with and without end-user GUIs)
Standard socket interface for RFCOMM sockets
Sending and receiving files over OBEX
Advertising of RFCOMM and OBEX services
Local device information
Limitations:
findservices() and selectservice() on Python For Series 60 returns only RFCOMM and OBEX services
Avoid threading on Mac OS X, as the underlying IOBluetooth and IOBluetoothUI frameworks are not thread-safe
No cross-platform set of socket options
Sockets (the native PyS60 API sockets are used, so their restrictions are inherited - but I haven't used PyS60 1.3.8 yet so I'm not sure about that)
sockets on Python For Series 60 cannot be created in one thread and used in another
fileno() raises NotImplementedError on Mac OS X and Python For Series 60
timeouts not supported on Python For Series 60: settimeout() raises NotImplementedError, gettimeout() returns None
non-blocking mode on PyS60 works for send() and recv but not accept() or connect()
No socket options on Mac OS X, and flags arguments (e.g. for recv) have no effect
socket security cannot be set (PyS60 implementation sets this to AUTH by default)
Error codes for exceptions are platform-independent. In particular, the Mac OS X implementation can return IOReturn error values from the IOKit framework, and OBEXError codes from for OBEX operations.
LightBlue 0.1 search tags