{"id":15163882,"url":"https://github.com/jaisor/mitsubishi_ac_wifi_controller","last_synced_at":"2026-01-20T22:06:43.452Z","repository":{"id":252488285,"uuid":"840591878","full_name":"jaisor/mitsubishi_ac_wifi_controller","owner":"jaisor","description":"Mitsubishi AC WiFi Controller with MQTT support","archived":false,"fork":false,"pushed_at":"2025-08-30T20:54:02.000Z","size":17675,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-30T22:20:38.818Z","etag":null,"topics":["ac","controller","diy","esp8266","heatpump","hvac","mitsubishi"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jaisor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-10T05:18:44.000Z","updated_at":"2025-08-30T20:54:05.000Z","dependencies_parsed_at":"2024-09-13T20:00:50.448Z","dependency_job_id":"a438f4b7-e061-40cb-8b0d-d318b6ce53a4","html_url":"https://github.com/jaisor/mitsubishi_ac_wifi_controller","commit_stats":{"total_commits":44,"total_committers":1,"mean_commits":44.0,"dds":0.0,"last_synced_commit":"4d896490a0523ea7d842fc97948fd2d66e4b638e"},"previous_names":["jaisor/mitsubishi_ac_wifi_controller"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jaisor/mitsubishi_ac_wifi_controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaisor%2Fmitsubishi_ac_wifi_controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaisor%2Fmitsubishi_ac_wifi_controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaisor%2Fmitsubishi_ac_wifi_controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaisor%2Fmitsubishi_ac_wifi_controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jaisor","download_url":"https://codeload.github.com/jaisor/mitsubishi_ac_wifi_controller/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaisor%2Fmitsubishi_ac_wifi_controller/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28615686,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T21:52:42.722Z","status":"ssl_error","status_checked_at":"2026-01-20T21:52:20.513Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["ac","controller","diy","esp8266","heatpump","hvac","mitsubishi"],"created_at":"2024-09-27T03:01:00.200Z","updated_at":"2026-01-20T22:06:43.446Z","avatar_url":"https://github.com/jaisor.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mitsubishi AC WiFi Controller with MQTT support\n\n![main screen](assets/main_screen.png)\n\nSupported features:\n* Web UI\n* WiFi with both self-hosted or joining existing access points\n* MQTT support\n* OTA firmware update using ElegantOTA at `/update`\n* 3D printed case for clean and seamless mounting\n\nBased on:\n* https://github.com/jaisor/stus-rf24-wifi-gw\n* https://github.com/SwiCago/HeatPump\n\n# Usage\n\n## Initial boot / reset\n\nOn first boot the device creates a self-hosted WiFi access point (AP) with SSID starting with `ESP8266MHVAC` and WPA2 password `password123`\nIn self-hosted AP mode, the device gives itself `192.168.4.1` IP address.\n\nThe device can be connected to an existing AP using the `/wifi` option\n\n![wifi screenshot](assets/ss1.png)\n\n## Resetting / erasing configuration\n\nThe device will reset itself to default configuration and self-hosted AP if unable to complete its boot sequence within 2 seconds (smooth boot) 3 times in a row.\nThis can be forced by power-cycling the device several times. Powered up durations should be about 1 second (less than 2 second, but enough for the CPU to start). \n\n# Programming the ESP8266\n\nCompile and upload the project using USB. After the resistors are removed (see below), future updates will have to be made using OTA. \nAccess to OTA is at `/update` path at the device's IP. See Initial boot below on how to connect to the self-hosted AP.\n\n# Assembly\n\nThe CN105 connected is underneath the unit cover. The cover can be a bit tricky and intimidating to remove. There are some hidden plastic latches that have to be forced and negotiated a bit.\nTurn power to the unit and take any other appropriate precautions, ladder safety, etc. As with all DIY projects, proceed at your own risk. \n\nResources showing how to remove the cover from Mitsubishi HVAC units:\n* https://chrdavis.github.io/hacking-a-mitsubishi-heat-pump-Part-1/\n* https://youtu.be/U0aPWvbfMRA?t=454\n\n\n## Parts\n\n* ESP8266 Chip ESP-12F style board - https://www.amazon.com/dp/B081PX9YFV/\n* PCB dev board - https://www.amazon.com/dp/B0778G64QZ?ref=ppx_yo2ov_dt_b_fed_asin_title\n* CN105 connector housing - https://www.digikey.com/en/products/detail/jst-sales-america-inc/PAP-05V-S/759977\n* Connector pins - https://www.digikey.com/en/products/detail/jst-sales-america-inc/SPHD-002T-P0.5/608809\n* Alternative pre-made CN105 cable - https://www.aliexpress.us/item/3256802718583041.html\n* M3 x 4mm bolts for mounting the board in the case - https://www.amazon.com/dp/B08H2HCBQM/\n* (Optional) 4 pin connectors so the unit can be disconnected without having to take the HVAC cover off again - https://www.amazon.com/gp/product/B01DUC1S14\n\n## Removing the RX/TX resistors\n\nThe RX/TX resistors have to be removed on some variants of the ESP8266 board, like \"Wemos D1 Mini\" and other similar ones.\nEasiest way is to heat them up with a soldering gun, or pry them off with tweezers. \nKeep in mind you will not be able to upload builds via USB anymore, so do this is a final step before connecting to the heat pump.\nFuture updates will have to happen over OTA\n\n![resistor remove](assets/resistor_remove.jpg)\n\n## Wiring\n\n![](https://cdn.geekzone.co.nz/imagessubs/ab21de6046ee77f9188128506a7b3bba.jpg)\n\nLink to source - https://www.geekzone.co.nz/forums.asp?forumid=73\u0026topicid=303958\n\n```\n| 12V | - not connected\n| GND | - GND\n| 5V  | - 5V\n| TX  | - RXD0 / GPIO3\n| RX  | - TXD0 / GPIO1\n```\n\n![ESP8266 pinout](https://i0.wp.com/randomnerdtutorials.com/wp-content/uploads/2019/05/ESP8266-WeMos-D1-Mini-pinout-gpio-pin.png?w=715\u0026quality=100\u0026strip=all\u0026ssl=1)\n\n![pcb](assets/5.jpg)\n\n## Case\n\n3D printable case is available\n![pcb back](assets/8.jpg)\n\n* [case base](assets/HVACBoxBase.stl)\n* [case lid](assets/HVACBoxLid.stl)\n\n# Apache proxy setup\n\nExample configuration for exposing a local network device via Apache proxy. Strong advised to use SSL/HTTPS and other appropriate authentication and authorization controls to prevent bad actors access. \n\n```\n                \u003cLocation /ac\u003e\n                        AuthType Basic\n                        Authname \"Password Required\"\n                        AuthUserFile /etc/apache2/.htpasswd\n                        Require valid-user\n                \u003c/Location\u003e\n\n                RewriteRule ^/ac/roomname$ /ac/roomname/ [R]\n                ProxyPass /ac/roomname/ http://192.168.x.y/ disablereuse=On\n                ProxyPassReverse /ac/roomname/ http://192.168.x.y/\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaisor%2Fmitsubishi_ac_wifi_controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaisor%2Fmitsubishi_ac_wifi_controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaisor%2Fmitsubishi_ac_wifi_controller/lists"}