{ "info": { "author": "Chintalagiri Shashank", "author_email": "shashank@chintal.in", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Twisted", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator", "Topic :: System :: Hardware :: Hardware Drivers" ], "description": "driver2200087\n=============\n\nThis is a Python Package to interface with Radio Shack's 2200087 Multimeter.\n\nThe 2200087 is an inexpensive DMM which supports logging and graphing data on\na computer, but the supplied code only supports Windows. This is a python package\nto allow for connecting to the multimeter over USB on Linux or Mac OSX. Due to\nradioshack not supplying any serial specifications, the protocol was reverse\nengineered by David Dworken from simply observing the output of the DMM.\n\nThe ``serialDecoder`` module and the serial protocol documentation is essentially a\nslightly tweaked version of the script written and maintained by David Dworken,\navailable at https://github.com/ddworken/2200087-Serial-Protocol.git\n\nThis package includes a version of the ``serialDecoder`` module, slightly refactored\nto allow it to be imported into other python scripts. It also includes a ``runner``\nmodule which contains a Twisted protocol, wrapped by Crochet. This module should\nbe relatively easier to include into other python scripts and applications.\n\nInstallation\n------------\n\nThis package has been tested only with python 2.7.\n\nThis package can be installed from pypi using pip::\n\n $ pip install driver2200087\n\nOr using easy_install (python 2.7 only)::\n\n $ easy_install driver2200087\n\nUsage\n-----\n\nStandalone usage is listed `in the documentation `_,\nand should be fairly straightforward to follow.\n\nThe ``serialDecoder`` module can also be imported and used from within a python script,\nand the `documentation `_\ncan help you use it in that manner.\n\nThe recommended way for using the package, though, is through the ``runner`` module which\nit provides. The simpler form of use is to get the latest available value whenever\nnecessary. A short example of how this can be done using this package in a typical python\napplication would be ::\n\n from driver2200087 import runner\n\n dmm = runner.InstInterface2200087()\n dmm.connect()\n\n # Other Application code\n # ...\n #\n # And when the measurement is required :\n\n if dmm.data_available() > 0:\n print dmm.latest_point()\n else:\n raise Exception # Or pass, or retry, as per application requirements\n\n # other application code\n # ...\n\nIf the application calls for continuous recording of the data, the following is likely a\nbetter approach ::\n\n from driver2200087 import runner\n\n dmm = runner.InstInterface2200087()\n dmm.connect()\n while True:\n if dmm.data_available() > 0:\n print dmm.next_point()\n\nNote that in this code snippet, the python interpreter is blocked by the\ninfinite while loop. This is not required by the module. As long as\ndmm.next_point() is called often enough (10 Hz), you can use whatever mechanism\nyou like to actually make the call. Note that dmm.data_available() **must** be\nchecked by your application before making the call, or you should trap the\nexception that results.\n\nMaking the call at less than this frequency will cause data points to be lost\nwhen the point buffer fills up - if your application only calls for the\noccasional measurement, you're probably better off with dmm.latest_point()\ninstead.\n\nFor an example of using the ``runner`` module from within a larger framework\nby subclassing the provided twisted protocol, see `the corresponding Tendril module `_.\nThe ``Tendril`` module, while WIP, also includes examples of parsing the obtained\ndatapoint strings into usable values.\n\n\nDownloads and Documentation\n---------------------------\n\nThe simplest way to obtain the source for this package is to clone the git repository::\n\n git clone https://github.com/chintal/driver2200087.git driver2200087\n\nYou can install it as usual, with::\n\n python setup.py install\n\nThe latest version of the documentation can be found at `ReadTheDocs `_.\n\nLicense\n-------\n\ndriver2200087 is distributed under the GPLv2 license.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chintal/2200087-Serial-Protocol", "keywords": "driver multimeter acquisition", "license": "GPLv2", "maintainer": null, "maintainer_email": null, "name": "driver2200087", "package_url": "https://pypi.org/project/driver2200087/", "platform": "any", "project_url": "https://pypi.org/project/driver2200087/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/chintal/2200087-Serial-Protocol" }, "release_url": "https://pypi.org/project/driver2200087/0.6.1/", "requires_dist": null, "requires_python": null, "summary": "Python Package to interface with Radio Shack's 2200087 Multimeter", "version": "0.6.1" }, "last_serial": 1684845, "releases": { "0.4": [ { "comment_text": "", "digests": { "md5": "9e07dd2296ff837580a46ffca87d4175", "sha256": "406131f466692d9c003b1512dc9903aabf01eb11a62fe447f0840f84f39bbd4c" }, "downloads": -1, "filename": "driver2200087-0.4-py2.7.egg", "has_sig": true, "md5_digest": "9e07dd2296ff837580a46ffca87d4175", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 25370, "upload_time": "2015-07-30T19:11:36", "url": "https://files.pythonhosted.org/packages/9e/9e/31c083294a34e02ecdb8f538e66966e2c18dccf4a418865c0a6b6106850b/driver2200087-0.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "3eccba98c0708c4533385ae52755a6e0", "sha256": "2e42c6f672f43acbb59c7dbeceb5ef4b74015b7fb021e6fa1e6f07b99cfa6164" }, "downloads": -1, "filename": "driver2200087-0.4.tar.gz", "has_sig": true, "md5_digest": "3eccba98c0708c4533385ae52755a6e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13561, "upload_time": "2015-07-30T19:11:17", "url": "https://files.pythonhosted.org/packages/01/66/742dd3d039593a42dc07e1bd6433d8ba41356bc70ba39372f134849c1fde/driver2200087-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "ab208fe387dd4b62da63844fb2209b3d", "sha256": "38bdabf83fa52aa5e8a228fad1c6be4f25cc832ba7fc692d3fc55911b4ec8001" }, "downloads": -1, "filename": "driver2200087-0.5-py2.7.egg", "has_sig": true, "md5_digest": "ab208fe387dd4b62da63844fb2209b3d", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 26013, "upload_time": "2015-07-31T15:04:10", "url": "https://files.pythonhosted.org/packages/e8/4b/511966445b51e21e8d4274fdb22ece520ddb7938f97ed6526e4cfc09f6a5/driver2200087-0.5-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "50cc4e4590a4a632dd45f19464777df8", "sha256": "4a2270c540c3674332274758a3860c9eacbffff9f2c59b8924f2ce53b4119647" }, "downloads": -1, "filename": "driver2200087-0.5.tar.gz", "has_sig": true, "md5_digest": "50cc4e4590a4a632dd45f19464777df8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14002, "upload_time": "2015-07-31T15:04:01", "url": "https://files.pythonhosted.org/packages/ef/7b/369ee732180c5d977899dca1fa622cada1f8d7ef1adf392e34b128174902/driver2200087-0.5.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "5a712dab05d1becd024ec0422fece823", "sha256": "e48de7ea08eef3b9f6b425a4bbfa2b807119d183747bb7ea74d85273b4706caa" }, "downloads": -1, "filename": "driver2200087-0.6.1-py2-none-any.whl", "has_sig": true, "md5_digest": "5a712dab05d1becd024ec0422fece823", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17065, "upload_time": "2015-08-19T23:11:41", "url": "https://files.pythonhosted.org/packages/96/7d/83226ec779693a3b6613f5619b00fb525ba42a5c1c6fe4b1a6715171fd45/driver2200087-0.6.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb3baab9e62f4f7bd728ff7858292469", "sha256": "830ffd3ad21b49c666437a6e086fbb87312ee9407001b5cece0904ef2c9ad023" }, "downloads": -1, "filename": "driver2200087-0.6.1.tar.gz", "has_sig": true, "md5_digest": "cb3baab9e62f4f7bd728ff7858292469", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14507, "upload_time": "2015-08-19T23:11:29", "url": "https://files.pythonhosted.org/packages/44/b0/2e9b9e9fda4b19b350cafa92a2bec05d39a6d9e1ad60b22e0ec558806ae5/driver2200087-0.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5a712dab05d1becd024ec0422fece823", "sha256": "e48de7ea08eef3b9f6b425a4bbfa2b807119d183747bb7ea74d85273b4706caa" }, "downloads": -1, "filename": "driver2200087-0.6.1-py2-none-any.whl", "has_sig": true, "md5_digest": "5a712dab05d1becd024ec0422fece823", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17065, "upload_time": "2015-08-19T23:11:41", "url": "https://files.pythonhosted.org/packages/96/7d/83226ec779693a3b6613f5619b00fb525ba42a5c1c6fe4b1a6715171fd45/driver2200087-0.6.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb3baab9e62f4f7bd728ff7858292469", "sha256": "830ffd3ad21b49c666437a6e086fbb87312ee9407001b5cece0904ef2c9ad023" }, "downloads": -1, "filename": "driver2200087-0.6.1.tar.gz", "has_sig": true, "md5_digest": "cb3baab9e62f4f7bd728ff7858292469", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14507, "upload_time": "2015-08-19T23:11:29", "url": "https://files.pythonhosted.org/packages/44/b0/2e9b9e9fda4b19b350cafa92a2bec05d39a6d9e1ad60b22e0ec558806ae5/driver2200087-0.6.1.tar.gz" } ] }