{"id":16786886,"url":"https://github.com/scottbez1/webdp100","last_synced_at":"2025-06-11T19:39:02.510Z","repository":{"id":212856193,"uuid":"732464162","full_name":"scottbez1/webdp100","owner":"scottbez1","description":"WIP web-based driver (and maybe eventually GUI?) for the Alientek DP100 digital power supply using WebHID","archived":false,"fork":false,"pushed_at":"2024-06-16T14:08:22.000Z","size":93,"stargazers_count":72,"open_issues_count":2,"forks_count":11,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-06T12:51:47.715Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/scottbez1.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-12-16T18:58:59.000Z","updated_at":"2025-03-08T02:13:27.000Z","dependencies_parsed_at":"2023-12-20T17:29:12.839Z","dependency_job_id":"2a676067-5c6b-4ea0-a09d-a7763ec26baa","html_url":"https://github.com/scottbez1/webdp100","commit_stats":null,"previous_names":["scottbez1/webdp100"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/scottbez1/webdp100","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottbez1%2Fwebdp100","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottbez1%2Fwebdp100/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottbez1%2Fwebdp100/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottbez1%2Fwebdp100/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scottbez1","download_url":"https://codeload.github.com/scottbez1/webdp100/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottbez1%2Fwebdp100/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259325667,"owners_count":22841060,"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":[],"created_at":"2024-10-13T08:13:40.535Z","updated_at":"2025-06-11T19:39:02.450Z","avatar_url":"https://github.com/scottbez1.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WebDP100\nA work-in-progress web-based driver (and maybe eventually GUI?) for the Alientek DP100 digital power supply, using [WebHID](https://developer.mozilla.org/en-US/docs/Web/API/WebHID_API).\n\nJust plug in the DP100 using the USB-A to USB-A cable (make sure it's in \"USBD\" mode; double-tap ◀ to switch), and click connect!\n\n\u003cimg src=\"https://github.com/scottbez1/webdp100/assets/414890/846fbe78-497b-4f76-9dce-f7f3ffbbe971\" width=300 /\u003e\n\n## Demo\n\nWatch the [video:](https://youtu.be/46w4E4JxKYE)\n\n\u003ca href=\"https://youtu.be/46w4E4JxKYE\"\u003e\u003cimg src=\"https://img.youtube.com/vi/46w4E4JxKYE/maxresdefault.jpg\" width=\"400\" /\u003e\u003c/a\u003e\n\nIf you have a DP100, plug it in via USB, open Chrome and go to https://scottbez1.github.io/webdp100 to try this for yourself!\n\n## About\n\nImplementation of the HID protocol is based on reverse-engineering the Windows library (`ATK-DP100DLL(x64)_2.0.dll`), which can be found on baidu or in the [DP100-PyQt5-GUI](https://github.com/ElluIFX/DP100-PyQt5-GUI) project.\n\nI don't plan on building a full-featured web interface, but if you want to, please feel free to use this as a starting point for your own project!\n\n## Usage notes\n### Linux\nNo drivers need to be installed, but the HID device may default to root-only permissions, resulting in \"Failed to open the device\" when you select it in the browser.\n\nTo adjust USB permissions, copy the `udev/rules.d/99-atk-dp100.rules` from this repo to the `/etc/udev/rules.d/` folder on your computer, then run `sudo udevadm control --reload-rules` and re-plug the USB cable.\n\n## Acknowledgements\nShout out to @ElluIFX's [DP100-PyQt5-GUI](https://github.com/ElluIFX/DP100-PyQt5-GUI) project as a helpful reference and source of the DLL for reverse-engineering.\n\n## License\nThis project is licensed under Apache v2\n\n    Copyright 2023 Scott Bezek\n    \n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n    \n        http://www.apache.org/licenses/LICENSE-2.0\n    \n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottbez1%2Fwebdp100","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscottbez1%2Fwebdp100","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottbez1%2Fwebdp100/lists"}