{ "info": { "author": "Craig Swank", "author_email": "craigswank@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Gadgets - a physical computing framework\n--------------------------------------------------------------------------------\n\nGadgets provides a way to control physical devices with python on a\nBeaglebone or a Raspberry PI (Raspberry Pi only has gpio and spi switch\nfunctionality for now). It provides an easy way to create a system that:\n\n* Controls devices with the gpio, pwm, adc, and 1-wire interfaces\n* Has an easy to use User Interface\n* Can be distributed across many devices\n* Uses RCL (Robot Command Language)\n* Can run methods (a sequece of RCL commands)\n\nGadgets provides several classes that are useful for controlling various devices.\nThey are:\n\n* Switch\n* Valve\n* Heater\n* Cooler\n* Motor\n\nThe simplest one is Switch. Here is an example of how to set up a gadgets system\nthat uses Switch to control multiple devices.\n\nThe first thing to do is define the switches you are going to use with a dictionary\n\n >>> from gadgets.pins.beaglebone import pins\n >>> from gadgets import get_gadgets\n >>> arguments = {\n ... \"locations\": {\n ... \"living room\": {\n ... \"light\": {\n ... \"type\": \"switch\",\n ... \"pin\": pins[\"gpio\"][8][3]\n ... },\n ... \"back yard\": {\n ... \"sprinklers\": {\n ... \"type\": \"switch\",\n ... \"pin\": pins[\"gpio\"][8][11],\n ... },\n ... },\n ... },\n ... }\n\n >>> gadgets = get_gadgets(arguments)\n >>> gadgets.start()\n\nThe above definition assumes you have connected some switch (perhaps\na transistor or a relay) to port 8, pin 3 on the Beaglebone, and perhaps\na transistor connected to port 8, pin 11. The transistor would then be\nconnected to the solenoid valve that turns on the sprinklers (you will\nprobably not be able to connect the solenoid directly to your Beaglebone\nbecause it would draw too much current and probably uses 24V AC).\n\nOne way you can turn on the light that you defined above is to open\nanother terminal and start a python prompt.\n\n >>> from gadgets import Sockets\n >>> s = Sockets()\n >>> s.send(\"turn on living room light\")\n\nThe light you have connected to the Beaglebone should now turn on.\n\n >>> s.send(\"turn off living room light\")\n\nThis, of course, turns the light off. These two commands are examples of\nRCL (Robot Command Language).\n\nTo turn on the sprinklers in the back yard for 15 minutes, you would send\nthis command:\n\n >>> s.send(\"turn on back yard sprinklers for 15 minutes\")\n\nYou can also control the gadgets by using the built in curses based user-interface.\nSee gadgets.ui for more details.\n\nCHANGES\n\n\n0.3.1, 7/25/2013 -\n added a request-response mechanism so the status of the system\n can be requested.\n Added a reference to the iphone interface to the docs.\n0.3.0, 7/18/2013 -\n improved the 'command mode' of the ui\n improved the note taking dialog of the ui\n changed the greenhouse example to reflect my current greenhouse setup\n\n0.2.3, 5/28/2013 -\n added '--commad' to the gadgets console script\n fixed a few bugs\n added an example for watering the grass\n\n0.2.2, 4/24/2013 -\n fixed a bug in the shift register switch\n\n0.2.1, 4/24/2013 -\n fixed the curses user interface\n\n0.2.0, 4/23/2013 -\n added support for raspberry pi gpio\n\n0.1.1, 3/6/2013 -\n added a momentary option for switch, so that it only turns on\n for a small amount of time\n\n changed README.md to README.txt so it will show up on pypi\n\n added gadgets.devices.Button. It monitors a gpio input pin\n and pushes a status update when it changes\n\n0.1.0, 2/26/2013 - \n changed the way thermometer works and how it is configured\n for get_gadgets\n\n added XBee IO for Switch\n\n0.0.2, 2/16/2013 - \n added a shift register switch \n \n0.0.1, 2/12/2013 - first version", "description_content_type": null, "docs_url": "https://pythonhosted.org/gadgets/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/cswank/gadgets", "keywords": "beaglebone raspberry pi physical computing", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "gadgets", "package_url": "https://pypi.org/project/gadgets/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/gadgets/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://bitbucket.org/cswank/gadgets" }, "release_url": "https://pypi.org/project/gadgets/0.3.1/", "requires_dist": null, "requires_python": null, "summary": "A physical computing framework", "version": "0.3.1" }, "last_serial": 825236, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "794fd6e65fbca524c8d9a1d37bd479aa", "sha256": "b3a7efe34e2a5cb247d9df90090ae432c756a148a471be5578871e02fccb75d8" }, "downloads": -1, "filename": "gadgets-0.1.0.tar.gz", "has_sig": false, "md5_digest": "794fd6e65fbca524c8d9a1d37bd479aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37596, "upload_time": "2013-02-26T23:22:16", "url": "https://files.pythonhosted.org/packages/15/ce/239699b3c43849ecde4265dcaf6c77b60ec099191e2bc23e40707f8d1f5c/gadgets-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bd2c45cab8670def6e71243d9eb326e9", "sha256": "0404fb8ea36d53017bfeef1b51a2ff1011937ef18abe0c902037389e4c69d828" }, "downloads": -1, "filename": "gadgets-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bd2c45cab8670def6e71243d9eb326e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40874, "upload_time": "2013-03-07T01:08:32", "url": "https://files.pythonhosted.org/packages/8c/11/18e44ff316a3e51965ec7977f3ad201716b8dbc065535a41202123da320c/gadgets-0.1.1.tar.gz" } ], "0.1dev": [ { "comment_text": "", "digests": { "md5": "ec84b43f8517014a67afd761f79a6a44", "sha256": "2a4b2417a624976e551e18b2770c0b82ad98e2a05e571e5ce6ec9655d1b54b85" }, "downloads": -1, "filename": "gadgets-0.1dev.tar.gz", "has_sig": false, "md5_digest": "ec84b43f8517014a67afd761f79a6a44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31947, "upload_time": "2013-02-12T17:04:50", "url": "https://files.pythonhosted.org/packages/89/18/171371a321599e83237d8130ef421254ac1fa88b03ea276ab283e3aea988/gadgets-0.1dev.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "6b8f571149cccb265de157a987081259", "sha256": "19e1fbcacc266d0b954384912578e2bf8a79589ec0c613bf283474dba904ab3b" }, "downloads": -1, "filename": "gadgets-0.2.0.tar.gz", "has_sig": false, "md5_digest": "6b8f571149cccb265de157a987081259", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42740, "upload_time": "2013-04-24T01:06:21", "url": "https://files.pythonhosted.org/packages/18/79/288b6fbd022cd82a0fa45eb6f398e7637a5ddab1b8dc1f1e56a1f6841f91/gadgets-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "e42ecdec79d028e40e01f29cf0e7a927", "sha256": "60b919cb623808e0a5acff53d3a6ab8ca5c71b9829280bc5d0c3cd3adef26985" }, "downloads": -1, "filename": "gadgets-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e42ecdec79d028e40e01f29cf0e7a927", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42809, "upload_time": "2013-04-24T11:55:26", "url": "https://files.pythonhosted.org/packages/4a/db/6cce872e67ca1cba5208499d2d0a567f43731c34441c4f8b4138b28d4302/gadgets-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "8105a3c4ba04d6d52d5fd4e27b37aa5d", "sha256": "9799c5746d5fb11598a6e98c57fa49e689dc13e576b14fccf05017d673da0fda" }, "downloads": -1, "filename": "gadgets-0.2.2.tar.gz", "has_sig": false, "md5_digest": "8105a3c4ba04d6d52d5fd4e27b37aa5d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42873, "upload_time": "2013-04-27T19:01:48", "url": "https://files.pythonhosted.org/packages/a2/6f/3d4feaca17353a4687c0af9e4b603b9ccc2692d37095e2f9aab0f0cd266d/gadgets-0.2.2.tar.gz" } ], "0.2dev": [ { "comment_text": "", "digests": { "md5": "8fba627a1cf9ca11ac93fffb0678c689", "sha256": "70bc5bc53ff254b33b4ef0992aab20db6694c6e8c19e0362352209d35ebb046d" }, "downloads": -1, "filename": "gadgets-0.2dev.tar.gz", "has_sig": false, "md5_digest": "8fba627a1cf9ca11ac93fffb0678c689", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30785, "upload_time": "2013-02-16T20:34:53", "url": "https://files.pythonhosted.org/packages/b5/55/8f562f4a92a6bb19376288482714cfe93afc7abf14519d7605d83fff0c9a/gadgets-0.2dev.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "d562b2d4c790bdb0f2a3d9abdee1df0c", "sha256": "8a8974e6b0e3f00a89f6b5f01766e0ea4f66abf1b9eb4afcc53a106328adae51" }, "downloads": -1, "filename": "gadgets-0.3.1.tar.gz", "has_sig": false, "md5_digest": "d562b2d4c790bdb0f2a3d9abdee1df0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44648, "upload_time": "2013-07-25T21:20:18", "url": "https://files.pythonhosted.org/packages/aa/34/ff2d525ccb87301c0f896c11d59997b762d929dffd83c417fd3a09e55c2e/gadgets-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d562b2d4c790bdb0f2a3d9abdee1df0c", "sha256": "8a8974e6b0e3f00a89f6b5f01766e0ea4f66abf1b9eb4afcc53a106328adae51" }, "downloads": -1, "filename": "gadgets-0.3.1.tar.gz", "has_sig": false, "md5_digest": "d562b2d4c790bdb0f2a3d9abdee1df0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44648, "upload_time": "2013-07-25T21:20:18", "url": "https://files.pythonhosted.org/packages/aa/34/ff2d525ccb87301c0f896c11d59997b762d929dffd83c417fd3a09e55c2e/gadgets-0.3.1.tar.gz" } ] }