israndy
Supercharger Hunter
That's the way I was. I was begging on the Sense Forum and the TMC forum for people programming the Tesla Wall Connector with little boxes. Like 2 years, from the moment I put in my solar panels, which I also figured out how to install myself.
I finally gave up waiting for someone else to write code for me and I picked the right time to do it. The API, which is a programmer's interface for both Sense and for Teslas became available for free on GitHub, a place for programmers to dump their code so others can learn from it.
I already had Xcode installed on my Mac, so I downloaded the Tesla API and ran the three demo apps. Very cool. Then I spent an afternoon trying to isolate the code to make the car honk the horn. I wanted the smallest number of lines of code that would still do that. If I deleted too many lines I'd hit command-Z and get them back. Just changing, saving, running, and trying again. I finally figured out what the lines of code were that were important. I knew NOTHING about programming in Python and by the end of the week I could think of something that I wanted to do in Python and just write it. After a few more days I published my first UGLY code to GitHub because it ACTUALLY worked. It was pretty simple, read the solar and subtract the grid from it, that's the free solar, if that's in a range that the Tesla can charge in start the car charging, if not stop the car charging.
I have been working on it for about 4 months, basically every time I see an error I try to fix it and every time I realize something could be done more cleanly (I subscribed to a Python Hints email list) I re-code my app to use the new way of programming.
I got LOTS of help from the API owners (these guys reverse engineered the APIs the official apps use) to the point where the owner of an app called SenseLink wrote the code for my app to connect to his so I could read KASA plug in power monitors. So generous.
If you have the Enphase you could check if there is an API on GitHub.com for it and if you have a Mac install Xcode (free) and Python 3 (free) and see if you can download their demo apps. If you need hints or help understanding MY code I'm here for ya.
I finally gave up waiting for someone else to write code for me and I picked the right time to do it. The API, which is a programmer's interface for both Sense and for Teslas became available for free on GitHub, a place for programmers to dump their code so others can learn from it.
I already had Xcode installed on my Mac, so I downloaded the Tesla API and ran the three demo apps. Very cool. Then I spent an afternoon trying to isolate the code to make the car honk the horn. I wanted the smallest number of lines of code that would still do that. If I deleted too many lines I'd hit command-Z and get them back. Just changing, saving, running, and trying again. I finally figured out what the lines of code were that were important. I knew NOTHING about programming in Python and by the end of the week I could think of something that I wanted to do in Python and just write it. After a few more days I published my first UGLY code to GitHub because it ACTUALLY worked. It was pretty simple, read the solar and subtract the grid from it, that's the free solar, if that's in a range that the Tesla can charge in start the car charging, if not stop the car charging.
I have been working on it for about 4 months, basically every time I see an error I try to fix it and every time I realize something could be done more cleanly (I subscribed to a Python Hints email list) I re-code my app to use the new way of programming.
I got LOTS of help from the API owners (these guys reverse engineered the APIs the official apps use) to the point where the owner of an app called SenseLink wrote the code for my app to connect to his so I could read KASA plug in power monitors. So generous.
If you have the Enphase you could check if there is an API on GitHub.com for it and if you have a Mac install Xcode (free) and Python 3 (free) and see if you can download their demo apps. If you need hints or help understanding MY code I'm here for ya.