{ "info": { "author": "Jeffrey Bush", "author_email": "jeff@coderforlife.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering", "Topic :: System :: Hardware" ], "description": "YARC: Yet Another Roomba Controller\n===================================\n\nThis is a Python library that allows you to control Roomba's and Create's from iRobot using the serial connection. This requires Python 3 and the pyserial library. This can run on many devices such as Raspberry Pis and regular PCs. Tested on the Create 2, some older devices may not support all operations or sensors.\n\nThis implements the Open Interface specification by iRobot: http://www.irobot.com/~/media/MainSite/PDFs/About/STEM/Create/create_2_Open_Interface_Spec.pdf\n\nThis library implements every single opcode in the specification and provides every sensor in an easy-to-use system. All single sensors are available as attributes on a `yarc.Roomba` object along with `all_sensors` which is a `namedtuple` of all of the sensors. Other groups can be obtained with the `sensor()` method and custom groups can be acquired with `query_list()` method. Single values are returned as `int`s or `bool`s, bit fields are returned as `IntFlag` types, and collections of values are returned as `namedtuple` instances.\n\nThis can be installed from source from the Github source or through pip: `pip install yarc`.\n\n\nExample\n-------\n\n```python\nimport yarc\n\n# Make the Roomba object\nbot = yarc.Roomba('/dev/ttyUSB0')\n\n# Start the OI connection - must be the first call\nbot.start()\n\n# Switch to 'safe' mode\n# In this mode we can completely control the robot unless it 'senses danger'\n# in which case it will switch back to 'passive' mode. Danger could be\n# detection of a cliff, detection of a wheel drop, or charger plugged in.\nbot.safe()\n\n# Commands\nbot.drive_distance(100) # drives 100 mm forward\nbot.turn_angle(45) # rotates 45 degrees in-place\n... # more instructions\nprint(bot.battery_charge / bot.battery_capacity) # print battery charge percent\nprint(bot.all_sensors) # print out all sensor data\n\n# Stop the OI connection - must be the last call\nbot.stop()\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/coderforlife/yarc", "keywords": "", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "yarc", "package_url": "https://pypi.org/project/yarc/", "platform": "", "project_url": "https://pypi.org/project/yarc/", "project_urls": { "Homepage": "https://github.com/coderforlife/yarc" }, "release_url": "https://pypi.org/project/yarc/0.9.3/", "requires_dist": [ "pyserial" ], "requires_python": ">=3.5", "summary": "Yet Another Roomba Controller", "version": "0.9.3" }, "last_serial": 5596873, "releases": { "0.9.1": [ { "comment_text": "", "digests": { "md5": "72d915b0c6fd3973468ca47319b3dd93", "sha256": "d9514ffca497c061082e9b97570e7d23de582993c3f3f5554e79d3212a7db59e" }, "downloads": -1, "filename": "yarc-0.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "72d915b0c6fd3973468ca47319b3dd93", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 28716, "upload_time": "2019-06-02T06:33:56", "url": "https://files.pythonhosted.org/packages/41/b9/2712605c730f9b037bf4361177a21d9e72474407cc50f50fc2604e850992/yarc-0.9.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cab5d4196f3fa5aae6afdd8c34a8f8f0", "sha256": "652056507bd04e1699757a45a5f896b8a5b6495e757f87e733f48456478afad1" }, "downloads": -1, "filename": "yarc-0.9.1.tar.gz", "has_sig": false, "md5_digest": "cab5d4196f3fa5aae6afdd8c34a8f8f0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13723, "upload_time": "2019-06-02T06:34:25", "url": "https://files.pythonhosted.org/packages/94/08/046b4103ed476fbd019cd9bb7efc8451b2362f914af17183f66e449ee4e2/yarc-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "b274d2965982955070cbf247a4562692", "sha256": "bf282c3ccd6eaeaefaf13c16f8ef890d67f1e5ca2f19695d8ead4687c2331c48" }, "downloads": -1, "filename": "yarc-0.9.2-py3-none-any.whl", "has_sig": false, "md5_digest": "b274d2965982955070cbf247a4562692", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 31387, "upload_time": "2019-06-02T20:08:32", "url": "https://files.pythonhosted.org/packages/55/f9/6b14375b2fee7e4987a4ac760f95e2d4f7318ac3e4bb9e1e2e1ca3e4d7f3/yarc-0.9.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "58c122059bff836b014ddc462fcd3db5", "sha256": "4adaf06bf5434178fd93cd88c777badd6dc13fa51a5cbd72eb380bd0fc7c2a1d" }, "downloads": -1, "filename": "yarc-0.9.2.tar.gz", "has_sig": false, "md5_digest": "58c122059bff836b014ddc462fcd3db5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 16475, "upload_time": "2019-06-02T20:08:33", "url": "https://files.pythonhosted.org/packages/e9/f5/4e2bb1d40ad62888016f21880d8da34c7c60611c890c1e04542853abbf43/yarc-0.9.2.tar.gz" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "8a0f0156d74480c48a395fb0fc0d3793", "sha256": "b99c3e2a989bef0f2f96d97a01ad8db9bfcb5cb53a689ac6661b289167760391" }, "downloads": -1, "filename": "yarc-0.9.3-py3-none-any.whl", "has_sig": false, "md5_digest": "8a0f0156d74480c48a395fb0fc0d3793", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 31407, "upload_time": "2019-07-28T22:06:04", "url": "https://files.pythonhosted.org/packages/f8/f9/bafac04043198e1d4537d5e209a6a23f361c46cfa0d17c4e167e03261782/yarc-0.9.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2612fffe6742e276a33757d688720612", "sha256": "e58571b846f88f8add308390c715fe42dcb300b6c705737cbe26a15904515c5a" }, "downloads": -1, "filename": "yarc-0.9.3.tar.gz", "has_sig": false, "md5_digest": "2612fffe6742e276a33757d688720612", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 17671, "upload_time": "2019-07-28T22:06:05", "url": "https://files.pythonhosted.org/packages/c1/58/8cf32e47128ce688fbf2a572232992f0ce37b7ce2d85e80f9b22397cab81/yarc-0.9.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8a0f0156d74480c48a395fb0fc0d3793", "sha256": "b99c3e2a989bef0f2f96d97a01ad8db9bfcb5cb53a689ac6661b289167760391" }, "downloads": -1, "filename": "yarc-0.9.3-py3-none-any.whl", "has_sig": false, "md5_digest": "8a0f0156d74480c48a395fb0fc0d3793", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 31407, "upload_time": "2019-07-28T22:06:04", "url": "https://files.pythonhosted.org/packages/f8/f9/bafac04043198e1d4537d5e209a6a23f361c46cfa0d17c4e167e03261782/yarc-0.9.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2612fffe6742e276a33757d688720612", "sha256": "e58571b846f88f8add308390c715fe42dcb300b6c705737cbe26a15904515c5a" }, "downloads": -1, "filename": "yarc-0.9.3.tar.gz", "has_sig": false, "md5_digest": "2612fffe6742e276a33757d688720612", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 17671, "upload_time": "2019-07-28T22:06:05", "url": "https://files.pythonhosted.org/packages/c1/58/8cf32e47128ce688fbf2a572232992f0ce37b7ce2d85e80f9b22397cab81/yarc-0.9.3.tar.gz" } ] }