{ "info": { "author": "Ryan Finnie", "author_email": "ryan@finnie.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Scientific/Engineering :: Information Analysis", "Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator" ], "description": "RDSERIALTOOL - RDTECH UM/DPS SERIES DEVICE INTERFACE TOOL\n\n\n_This program is currently in an early stage and could change\nsignificantly._\n\nThis program provides monitor, control and configuration access to\nRDTech (RuiDeng) UM and DPS series devices.\n\nThe UM24C, UM25C and UM34C are low-cost USB pass-through power\nmeasurement devices, and support a decent number of collection features,\nas well as full control via Bluetooth. (The non-C versions of these\ndevices support the same features as the C versions, but without\nBluetooth control.)\n\nThe DPS series are programmable DC-DC power supplies, and many devices\nin the series support external communication via the Modbus RTU serial\nprotocol over USB or Bluetooth.\n\n\nCompatibility\n\n- UM24C, UM25C and UM34C support is complete and tested.\n- DPS5005 support is complete and tested. Other devices in the DPS\n series (DPS3005, DPS5015, DPS5020, DPS8005, DPH5005) should perform\n identically. (Status reports and bugs welcome.)\n- Tested under Python 3.6, but should work with 3.4 or later.\n- Linux: Tested fine with both PyBluez (direct) and pyserial (e.g.\n /dev/rfcomm0 via rfcomm bind), as well as direct USB serial (e.g.\n /dev/ttyUSB0) on DPS devices.\n- Windows: Tested fine with pyserial (e.g. COM4 as set up\n automatically by Windows). Author could not get PyBluez\n compiled/installed.\n- MacOS: When using pyserial (e.g. /dev/cu.UM24C-Port as set up\n automatically by MacOS), writes to the device would succeed (e.g.\n 0xf2 to rotate the screen on UM series), but reads from the device\n never arrive. Author could not get PyBluez compiled/installed.\n\n\nSetup\n\nrdserialtool requires Python 3, and PyBluez and/or pyserial modules,\ndepending on which method you use to connect. Installation varies by\noperating system, but on Debian/Ubuntu, these are available via the\npython3-pybluez and python3-serial packages, respectively.\n\nTo install rdserialtool:\n\n $ sudo python3 setup.py install\n\nrdserialtool may also be run directly from its source directory without\ninstallation.\n\n\nBluetooth setup\n\nVaries by operating system. If the pairing procedure asks for a PIN,\nenter 1234.\n\nFor command-line installation on Linux:\n\n $ bluetoothctl\n Agent registered\n [bluetooth]# scan on\n Discovery started\n [NEW] Device 00:90:72:56:98:D7 UM24C\n [CHG] Device 00:90:72:56:98:D7 RSSI: -60\n [bluetooth]# pair 00:90:72:56:98:D7\n Attempting to pair with 00:90:72:56:98:D7\n [CHG] Device 00:90:72:56:98:D7 Connected: yes\n Request PIN code\n [UM241m[agent] Enter PIN code: 1234\n [CHG] Device 00:90:72:56:98:D7 UUIDs: 00001101-0000-1000-8000-00805f9b34fb\n [CHG] Device 00:90:72:56:98:D7 ServicesResolved: yes\n [CHG] Device 00:90:72:56:98:D7 Paired: yes\n Pairing successful\n [bluetooth]# trust 00:90:72:56:98:D7\n [CHG] Device 00:90:72:56:98:D7 Trusted: yes\n Changing 00:90:72:56:98:D7 trust succeeded\n [bluetooth]# exit\n Agent unregistered\n\nDevice MAC address will vary. Again, the PIN for the device is 1234.\n\nIf you then want to use rdserialtool via direct serial, bind it via\nrfcomm:\n\n $ sudo rfcomm bind 0 00:90:72:56:98:D7\n\n\nUsage\n\nA number of options common to device access are available to all\ncommands; see:\n\n $ rdserialtool --help\n\nAfter the common options, a command is required (commands available are\nin --help above). For example, to get device information from a UM24C\nvia PyBluez:\n\n $ rdserialtool --bluetooth-address=00:90:72:56:98:D7 um24c\n\nOr via pyserial:\n\n $ rdserialtool --serial-device=/dev/rfcomm0 um24c\n\nAfter the command, specific command-related options are available. For\nexample, to see options available for DPS devices:\n\n $ rdserialtool dps --help\n\nAnd to turn the output on for a DPS device:\n\n $ rdserialtool --bluetooth-address=00:BA:68:00:47:3A dps --set-output-state=on\n\n\nExample\n\n $ rdserialtool --bluetooth-address=00:15:A6:00:36:2F um25c\n rdserialtool\n Copyright (C) 2019 Ryan Finnie\n\n Connecting to UM25C 00:15:A6:00:36:2F\n Connection established\n\n USB: 5.062V, 0.1146A, 0.580W, 44.1\u03a9\n Data: 0.01V(+), 0.00V(-), charging mode: DCP 1.5A\n Recording (off): 0.000Ah, 0.000Wh, 0 sec at >= 0.13A\n Data groups:\n *0: 0.001Ah, 0.009Wh 5: 0.000Ah, 0.000Wh\n 1: 0.000Ah, 0.000Wh 6: 0.000Ah, 0.000Wh\n 2: 0.000Ah, 0.000Wh 7: 0.000Ah, 0.000Wh\n 3: 0.000Ah, 0.000Wh 8: 0.000Ah, 0.000Wh\n 4: 0.000Ah, 0.000Wh 9: 0.000Ah, 0.000Wh\n UM25C, temperature: 25C ( 78F)\n Screen: 1/6, brightness: 4/5, timeout: 2 min\n Collection time: 2019-02-23 22:53:08.468732\n\n $ rdserialtool --bluetooth-address=00:BA:68:00:47:3A dps\n rdserialtool\n Copyright (C) 2019 Ryan Finnie\n\n Connecting to DPS 00:BA:68:00:47:3A\n Connection established\n\n Setting: 5.00V, 5.100A (CV)\n Output (on) : 5.00V, 0.15A, 0.07W\n Input: 19.30V, protection: good\n Brightness: 4/5, key lock: off\n Model: 5005, firmware: 14\n Collection time: 2019-02-23 22:55:24.721946\n\n\nAbout\n\nCopyright (C) 2019 Ryan Finnie\n\n This program is free software; you can redistribute it and/or modify\n it under the terms of the GNU General Public License as published by\n the Free Software Foundation; either version 2 of the License, or (at\n your option) any later version.\n\n This program is distributed in the hope that it will be useful, but\n WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n General Public License for more details.\n\nThis tool is not affiliated with or endorsed by RDTech.\n\n\nSee also\n\n- RDTech UM series on the sigrok wiki, which contains a lot of\n information and reverse engineering of the protocol used on these\n devices.\n- DPS5005 communication protocol and Android/Windows software, from\n the manufacturer.\n- opendps, a replacement firmware package for the DPS5005.\n (Incompatible with rdserialtool, as opendps uses its own\n communication interface.)", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/rfinnie/rdserialtool", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rfinnie/rdserialtool", "keywords": "", "license": "GPLv2+", "maintainer": "", "maintainer_email": "", "name": "rdserialtool", "package_url": "https://pypi.org/project/rdserialtool/", "platform": "Unix", "project_url": "https://pypi.org/project/rdserialtool/", "project_urls": { "Download": "https://github.com/rfinnie/rdserialtool", "Homepage": "https://github.com/rfinnie/rdserialtool" }, "release_url": "https://pypi.org/project/rdserialtool/0.2/", "requires_dist": null, "requires_python": "", "summary": "RDTech UM/DPS series device interface tool", "version": "0.2" }, "last_serial": 4868402, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "b037337befee0b7d698b7cfbdcb9bb9a", "sha256": "3183b15ebea6d9e24972e74a83adc45a0af302c37f5a3a35e67a9165cb6c641b" }, "downloads": -1, "filename": "rdserialtool-0.2.tar.gz", "has_sig": false, "md5_digest": "b037337befee0b7d698b7cfbdcb9bb9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15790, "upload_time": "2019-02-26T06:33:44", "url": "https://files.pythonhosted.org/packages/74/76/4f9649f1c631eece8f37e9ece582b61290e97ed6c6c3348976a53218fc3e/rdserialtool-0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b037337befee0b7d698b7cfbdcb9bb9a", "sha256": "3183b15ebea6d9e24972e74a83adc45a0af302c37f5a3a35e67a9165cb6c641b" }, "downloads": -1, "filename": "rdserialtool-0.2.tar.gz", "has_sig": false, "md5_digest": "b037337befee0b7d698b7cfbdcb9bb9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15790, "upload_time": "2019-02-26T06:33:44", "url": "https://files.pythonhosted.org/packages/74/76/4f9649f1c631eece8f37e9ece582b61290e97ed6c6c3348976a53218fc3e/rdserialtool-0.2.tar.gz" } ] }