{"id":18733599,"url":"https://github.com/pklaus/ut61e_python","last_synced_at":"2025-06-22T14:08:57.841Z","repository":{"id":17082684,"uuid":"19847761","full_name":"pklaus/ut61e_python","owner":"pklaus","description":"Captures and Interprets Data from the Digital Multimeter Uni-T UT61E using Python","archived":false,"fork":false,"pushed_at":"2016-01-05T11:26:36.000Z","size":32,"stargazers_count":28,"open_issues_count":5,"forks_count":10,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-18T15:45:01.151Z","etag":null,"topics":["es51922","he2325u","hidapi","logging","multimeter","uni-t","usb","ut61e"],"latest_commit_sha":null,"homepage":"http://go.klaus.pw/UT61E","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pklaus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-16T07:11:31.000Z","updated_at":"2024-11-17T15:56:22.000Z","dependencies_parsed_at":"2022-08-26T07:41:28.678Z","dependency_job_id":null,"html_url":"https://github.com/pklaus/ut61e_python","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pklaus/ut61e_python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pklaus%2Fut61e_python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pklaus%2Fut61e_python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pklaus%2Fut61e_python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pklaus%2Fut61e_python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pklaus","download_url":"https://codeload.github.com/pklaus/ut61e_python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pklaus%2Fut61e_python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260924474,"owners_count":23083522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["es51922","he2325u","hidapi","logging","multimeter","uni-t","usb","ut61e"],"created_at":"2024-11-07T15:10:36.231Z","updated_at":"2025-06-22T14:08:52.830Z","avatar_url":"https://github.com/pklaus.png","language":"Python","readme":"\n### ut61e (Python)\n\nThis is a Python package helping you to capture and interpret data from\nthe digital multimeter Uni-T UT61E. You can easily install it via `pip`.\n\n#### Tools which this package provides:\n\n##### `es51922` – Interprets the output of the ES51922 chip\n\nThis utility interprets data sent by the Cyrustek ES51922 chip\nused in the Uni-Trend digital multimeter UT61E.\nIt reads lines from stdin, tries to interpret them as messages\nfrom the chip and prints basic information on the stdout.\nIn addition it writes a CSV file with a lot more information\nto the working directory.\n\n##### `he2325u_hidapi` – Reads from the USB/HID adapter cable using HIDAPI\n\nThis tool tries to read from the adapter cable using the HID API\nprovided by the operating system. It relies on [cython-hidapi][].\n\nThe tool is called after the original chip from the USB/HID cables\nwhich was the *Hoitek HE2325U*. Nowadays those cables come with a\nnewer chip called *WCH CH9325* but the way to get data out of them\ndidn't change.\n\nThis tool prints its output to stdout so that you can directly\npipe it into `es51922`.\nWorks on Linux and Mac OS X (Windows not tested) without root access.\nOn Linux you may have to [create a udev rule][] in order to get access\nto the `/dev/hidrawX` device as a regular user.\n\n\n##### `he2325u_pyusb` – Reads from the USB/HID adapter cable using PyUSB\n\nThis tool is very much similar to `he2325u_hidapi` as it also\nallows to read from the USB/HID adapter cable. It also prints its\noutput to stdout. It uses PyUSB instead of HIDAPI which in turn uses\ndirect libusb calls to talk to the adapter. **Needs to be run as root.** \nWorks on Linux only.\n\n#### Installation\n\nThis Python package is registered on PyPI with the name\n[ut61e](https://pypi.python.org/pypi/ut61e).\nTo install it, simply run\n\n    pip install ut61e\n\n#### Usage\n\nTo read data from the USB/HID adapter cable and interpret\nit as Cyrustek ES51922 information, you can do:\n\n    he2325u_hidapi | es51922\n\n#### Requirements\n\nYou need either Python2 or Python3 to run this software.\n\nIf you want to run `he2325u_hidapi`, you need [cython-hidapi][].\n\nIf you want to run `he2325u_pyusb`, you need [PyUSB][].\n\nTo analyze output using `es51922` you don't need any external modules.\n\n#### Software using this Package\n\nI also wrote a web interface for the display of the UT61E.\nI put it in the repository [ut61e-web][]\non Github. It relies on the tools from this package.\n\n#### Alternatives\n\nThere is also a C++ based software out there which can read and interpret\nthe data from the digital multimeter. The older version is called\n*dmm_ut61e* and the newer version *ut61e-linux-sw*, both of which\nyou can find in my repository [ut61e_cpp][] on Github.\n\nIf you run Windows, you may be better off with\n[DMM.exe](http://www-user.tu-chemnitz.de/~heha/hs/UNI-T/),\nan open source tool provided by Henrik Haftmann.\n\n#### Acknowledgement\n\nThe file es51922.py was originally written by Domas Jokubauskis ([1][])\nand was reused in this project. I'm very grateful to his work and\nthe work of many others spent on analyzing the USB/HID interface and the\nprotocol, including Steffen Vogel ([2][]) and Henrik Haftmann ([3][]).\n\n#### Licence and Authors\n\nThis software is licenced under the LGPL2+\n\nAuthors:\n\n* Philipp Klaus (\u003cphilipp.l.klaus@web.de\u003e)\n* Domas Jokubauskis (\u003cdomas@jokubauskis.lt\u003e)\n\n[cython-hidapi]: https://github.com/trezor/cython-hidapi\n[PyUSB]: https://github.com/walac/pyusb\n[create a udev rule]: https://github.com/signal11/hidapi/blob/master/udev/99-hid.rules\n[ut61e-web]: https://github.com/pklaus/ut61e-web/\n[ut61e_cpp]: https://github.com/pklaus/ut61e_cpp\n[1]: https://bitbucket.org/kuzavas/dmm_es51922/\n[2]: http://www.noteblok.net/2009/11/29/uni-trend-ut61e-digital-multimeter/\n[3]: http://www-user.tu-chemnitz.de/~heha/bastelecke/Rund%20um%20den%20PC/hid-ser\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpklaus%2Fut61e_python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpklaus%2Fut61e_python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpklaus%2Fut61e_python/lists"}