This repository has been archived by the owner. It is now read-only.
DEPRECATED - Python library for accessing and controlling bluetooth 2 capable Lovense sex toys (Max and Nora Only)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
examples chore: Update example Jul 23, 2016
lovesense
tests
.bandit.yml
.gitignore
.travis.yml
CHANGES.rst
LICENSE
MANIFEST.in
README.rst
setup.cfg
setup.py
tox.ini

README.rst

lovesense-py - DEPRECATED

Deprecated: This library has been deprecated, and further development has been moved to the Buttplug Project <http://github.com/metafetish/buttplug>. Please see the README there for more information. Note that this library does not support Lovense Bluetooth LE toys. Support for those is included in the Buttplug library.

docs Documentation Status
tests Travis CI build status Code health Code coverage
package Latest PyPI version Latest PyPI version Latest PyPI version

lovesense is a library for controlling Lovense sex toys, such as the Max and Nora. The library allows users to control all aspects of the toy (vibration/rotation/inflation, depending on the toy), as well as retrieving information like device type, status, battery level, and accelerometer readings.

The library is currently available in the following languages:

If you need an implementation in a language not currently supported by lovesense, please file an issue on the github tracker of the relevant project.

Please note that this project has no direct relation to the Lovense company. These drivers have been developed/supported by the open source community. Lovense has had no direct participation in this project and most likely will not be able to answer questions or provide support for any of the Lovesense drivers.

If you require commercial support for programming for Lovense products, it is recommended you go through the Official Lovense Developer Program.

Requirements

To install the library, use either setup.py or pip. lovesense is a pypi hosted library, and can be installed by running:

$ pip install lovesense

The library is built to abstract the raw toy protocols from the communication medium, so it can pass packets for each toy over whatever medium you like. For instance, you could create a network class that talks to a daemon that communicates with a serial port, if needed.

Development

lovesense-py uses the Tox library for test environment setup, test execution, documentation building, and other automated tasks.

To run project tests:

$ tox --skip-missing-interpreters

To create documentation:

$ tox -e docs

Protocol Explanation

Protocol documentation is available at the lovesense-docs site on readthedocs.org.

The protocol documentation repository is available at metafetish/lovesense-docs on github.

Thanks

Thanks to PenTest Partners for documenting their work in their blog..

Disclaimer

The Lovesense project is in no way affiliated with Lovense or any of its partners. The documentation and libraries here have been produced via clean room reverse engineering methods, and are provided with no guarantees, as outlined by the license agreement. Usage of these libraries and information is in no way condoned by Lovense and may void the warranty of your toy.

License

tl;dr: BSD License

Copyright (c) 2016, Metafetish Project All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the authors nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY The Authors ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL The Authors BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE