Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is meant by "Just put all these files in your ESPHome folder"? #24

Open
nmg196 opened this issue Jun 20, 2022 · 22 comments
Open

What is meant by "Just put all these files in your ESPHome folder"? #24

nmg196 opened this issue Jun 20, 2022 · 22 comments

Comments

@nmg196
Copy link

nmg196 commented Jun 20, 2022

This is probably a silly question but despite 20 years experience in software development , what is meant by "Just put all these files in your ESPHome folder"? Because if I check out the code of this repo, then copy in all the files from the original project, then surely the files which have the same name will get overwritten and it will simply be running the original code? Am I being stupid? :)

How should you merge the source folders so this extension still works? I feel like there's a step missing from the instructions or something?

@ginkage
Copy link
Owner

ginkage commented Jun 20, 2022

No need to overwrite anything, or merge, or even use the original files, everything you need is already contained in this project.

@nmg196
Copy link
Author

nmg196 commented Jun 21, 2022

But there is no .ino file in this project so how to you build it? Sorry if I'm asking stupid questions but I'm totally new to Arduino. Or do I need some other compiler for C++ rather than .ino?

@ginkage
Copy link
Owner

ginkage commented Jun 21, 2022

Um... This isn't exactly Arduino, you know, this project is specifically created for a certain hardware (basically, for the ESP8266-based board, D1 mini), and is adapted to be used in Home Assistant by either uploading it via the add-on, or via "esphome run".
In other words, you don't need an .ino file, the main module is the .yaml file — quite unlike Arduino projects.

@nmg196
Copy link
Author

nmg196 commented Jun 21, 2022

Thanks and sorry for my misunderstanding :) I have a D1 mini but couldn't see how to upload raw code to a device once I'd flashed it to the D1. So, so far I have the Esphome module added to Home Assistant and ESPHome running on the D1 so I'll have another look when I have more time.

@nmg196
Copy link
Author

nmg196 commented Jun 21, 2022

So am I supposed to be uploading a binary from this screen? If so, how do I build it?
image

@ginkage
Copy link
Owner

ginkage commented Jun 22, 2022

That's the ESP's own web-interface, you don't really need it for now.
First of all, you need to either have ESPHome installed on your PC, or have it as an add-on in Home Assistant (I assume that you do have Home Assistant, as otherwise you don't need this project).
In case of add-on, you can use its UI to compile the code and upload it using a USB cable right from your browser. You can get the same UI with a local install by running "esphome dashboard" — alternatively, with local installs you can use "esphome run" to build and upload the code.

@nmg196
Copy link
Author

nmg196 commented Jun 23, 2022

Thanks! I've now installed ESPHome locally (and in HA).

However I can't get "esphome run lr_mhi_ac_ctrl.yaml" working on my local PC. It just says "ModuleNotFoundError: No module named 'platformio.commands.run'". I don't think it's an issue with the code in this repo so I've raised a new issue here: esphome/issues#3396

@Kurisutian
Copy link

Would it work to instead of using the "includes" option to use this as an "external_component" as well? I would like to keep this in a distinct folder within esphome or even point here to the repo through the external component option to ensure the latest version is always being used. Would this work?

@kdejong01
Copy link

image

In which folder ?

@nbeernink
Copy link

Next to the airco-woonkamer.yaml should work.

My listing:

/config/esphome/mhi_ac_ctrl.h
/config/esphome/MHI-AC-CTRL-core.cpp
/config/esphome/mhi-my-ac.-config.yml

@MidasLamb
Copy link

MidasLamb commented Dec 4, 2022

Hey, I'm currently using the project what this was based on and recently got into ESPHome. Am I correct that rather than copy pasting the files I should be able to use external components for this ?
It seems that currently the folder structure isn't what is required for external components, so it might be nice to change it so that it can be used?
That might also make it easier to describe, as you can provide just the yaml to copy-paste, without any further instructions

@nbeernink
Copy link

I believe using external components is only possible if the MHI-AC-Ctrl project starts putting source files in a components dir.

@MidasLamb
Copy link

I believe using external components is only possible if the MHI-AC-Ctrl project starts putting source files in a components dir.

I've checked it out, and it seems a bit more complex than that, It'll also need like an __init__.py and other files to make it work properly.
It seems that inspiration could be taken from other climate platforms in ESPHome in order to make one for MHI AC Ctrl

@arpiecodes
Copy link
Contributor

I'll convert it into a custom component installable through github somewhere this weekend.

@nbeernink
Copy link

That's a good idea too, I was thinking about pulling the .h's from the MHI-AC-Ctrl project instead of keeping them bundled here and waiting for this project to release the same files again. Then you'd only need to version the yaml file and the mhi_ac_ctrl.h.

But in hindsight, that might bring some incompatibilities.

@MidasLamb
Copy link

@synegic , did you manage to get it working? Or did you hit some roadblocks? I tried to do it myself but I'm not versed enough in ESPHome/C to make anything happen

@arpiecodes
Copy link
Contributor

@MidasLamb I haven't had time to properly look at it yet. But I am still intending to. I'll also directly address #51.

@tfyoung
Copy link

tfyoung commented Feb 6, 2023

I have done much of why you're talking about locally (having it work as an external module with python config). But i haven't had the time to clean it up and document it and won't for at least a month. I'll try and push what I have soon though and link it here and maybe it helps a little. I just updated it to the 2.6 and it's nice to have the auto fan mode working!

@tfyoung
Copy link

tfyoung commented Feb 7, 2023

Well it's a mess, but I've made it into a git repo
https://github.com/tfyoung/esphome-MHIHeatPump
It's working for me, with the new fan control stuff, but there's a lot of debug code and things missing.

@Wiebrenk
Copy link

I want to place a comment for the implementers of this project to HA to solve the same problem as OP;

  1. Download this project as a zip and unzip.
  2. Go to file editor in HA, search for the ESPhome folder. Upload [MHI-AC-Ctrl-core.h}, [mhi_ac_ctrl.h]and the [MHI-AC-Ctrl-core.h]. Restart HA
  3. Connect a new ESP to your computer and run the new device install in ESPhome
  4. When the ESP is online in the ESP dash, go to edit copy the code of [lr_mhi_ac_ctrl.yaml] and overwrite the current ESP yaml code.
  5. Name your ESP without underscores and capitals (rule 3,5 and 8). Update your wifi credentials
  6. Save. Install by following the wired install steps (download .bin, and upload by espHomeweb)
  7. Restart HA, it should find the new installed ESP. Do not adopt this ESP in HA before the above steps.

@elrosso2
Copy link

This is probably a silly question but despite 20 years experience in software development , what is meant by "Just put all these files in your ESPHome folder"? Because if I check out the code of this repo, then copy in all the files from the original project, then surely the files which have the same name will get overwritten and it will simply be running the original code? Am I being stupid? :)

How should you merge the source folders so this extension still works? I feel like there's a step missing from the instructions or something?

Did you get it to work? If so, how?

@RobertJansen1
Copy link
Collaborator

@RobertJansen1 RobertJansen1 linked a pull request Apr 5, 2024 that will close this issue
@RobertJansen1 RobertJansen1 removed a link to a pull request Apr 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests