{"id":24966900,"url":"https://github.com/blazej222/pp-w162-smart-plug","last_synced_at":"2025-03-29T02:27:19.945Z","repository":{"id":274304769,"uuid":"919626067","full_name":"blazej222/PP-W162-Smart-Plug","owner":"blazej222","description":"Custom software for SmartDGM PP-W162 smart plugs allowing gathering data and controlling the relay.","archived":false,"fork":false,"pushed_at":"2025-01-26T12:28:17.000Z","size":516,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-03T12:47:04.219Z","etag":null,"topics":["domoticz","esp8285","espressif","espressif32","internet-of-things","iot","tuya"],"latest_commit_sha":null,"homepage":"","language":"C++","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/blazej222.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-20T18:29:57.000Z","updated_at":"2025-01-26T12:28:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"2ea18a3f-5c4e-4c7f-8003-8ab84669adc7","html_url":"https://github.com/blazej222/PP-W162-Smart-Plug","commit_stats":null,"previous_names":["blazej222/pp-w162-smart-plug"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blazej222%2FPP-W162-Smart-Plug","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blazej222%2FPP-W162-Smart-Plug/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blazej222%2FPP-W162-Smart-Plug/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blazej222%2FPP-W162-Smart-Plug/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blazej222","download_url":"https://codeload.github.com/blazej222/PP-W162-Smart-Plug/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246128493,"owners_count":20727919,"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":["domoticz","esp8285","espressif","espressif32","internet-of-things","iot","tuya"],"created_at":"2025-02-03T12:34:08.048Z","updated_at":"2025-03-29T02:27:19.937Z","avatar_url":"https://github.com/blazej222.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smart Plug\n\nThis repository contains a simple software written for SmartDGM PP-W162 SmartPlugs (more commonly known as Tuya).\n\n\u003cimg src=\"img/fullbox.jpg\" alt=\"SmartDGM PP-W162\" width=\"30%\"/\u003e\n\u003cimg src=\"img/plug.jpeg\" alt=\"SmartDGM PP-W162\" width=\"40%\"/\u003e\n\n## Features\n- Hosts local website allowing checking parameters and changing configurations.\n- Remote enabling and disabling power relay (by making HTTP GET request to http://IP/enable or http://IP/disable, or via the website).\n- Showing realtime voltage, current and active power statistics on the website.\n- Reporting statistics mentioned above to a data collection server (available on another repo\u003ca href=\"example.org\"\u003e\u003c/a\u003e).\n- Collecting energy usage statistics (how many Wh used in period of time) and sending it to data collection server every period of time, allowing to analyze household power consumption trends.\n- Ability to perform OTA update via the website instead of having to connect to UART.\n\n## Screenshots\n### Main page\n\n\u003cimg src=\"img/main_site.png\" alt=\"Main site view\" width=\"80%\"/\u003e\n\n### Settings page\n\n\u003cimg src=\"img/config_site.png\" alt=\"Config site view\" width=\"100%\"/\u003e\n\n### Main site with debug options\n\n\u003cimg src=\"img/main_site_debug.png\" alt=\"Main site view with debug enabled\" width=\"44%\"/\u003e\n\n### Version tracking capability\n\n\u003cimg src=\"img/version_tracking.png\" alt=\"Version tracking capability\" width=\"55%\"/\u003e\n\n\n## Usage\n\nProject management system used is platformio.\n\nFirst copy config-sample.cfg and rename it to config.cfg. You can optionally replace SSID and KEY within the file to your SSID and WiFi password, but it's not necessary as the device will create it's own AP in case of connection error, allowing you to change these options from config site.\n\nUse platformio action \"Build filesystem image\" to build the littlefs filesystem that needs to be uploaded into the device. It will be stored inside `.pio/build/esp8285/littlefs.bin`\n\nThen choose build. A firmware file will be created called `firmware.bin` .\n\nNow you can either upload both files to the ESP8285 MCU either via UART programming, or another OTA updater.\n\n## OTA Updates\nEnter http://IP/update after the device was flashed.\n\nFirst upload the filesystem image (will require a device reboot).\n\nThen upload `firmware.bin` and the device will reboot.\n\nWhen making changes to flash filesystem contents, always remember about backwards compatibility - otherwise after flashing the filesystem via OTA the device might require an USART connection to be unbricked ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblazej222%2Fpp-w162-smart-plug","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblazej222%2Fpp-w162-smart-plug","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblazej222%2Fpp-w162-smart-plug/lists"}