I wanted to let you know about a new Home Assistant add-on I just released that lets you run JuicePassProxy inside Home Assistant. If you aren’t familiar with it, JuicePassProxy is a reverse-engineered implementation of the protocol used by JuiceBox EV Chargers. Once you have it set up your JuiceBox charger will think that it’s talking to the cloud, but it will actually be talking to JuicePassProxy which will forward all data to Home Assistant over MQTT. Everything is 100% local with no cloud dependencies, and the JuiceBox charger does not need Internet access.
This does not require opening up the charger or making any modifications to it, all you need to do is override a DNS record or set up some NAT rules on your router. I’ve included instructions on how to up these NAT rules in OPNSense, and I’m happy to review PRs with instructions for other types of routers.
For the OPNsense NAT rules, the port forward should be on the WAN interface, right? What about the outbound? I’ve always had a hard time keeping the NAT rules straight.
Since this is an internal port forward you should pick the interface that your JuiceBox is connected to, not your WAN interface. I updated the README to make this more clear.
Im trying to get this working but unfortunately the router we use doesn’t support DNS spoofing and changing routers is currently not an option.
I think I have everything configured correctly that UDPC mode should work but I haven’t had any luck so far. Where is the best place to ask for help? Would I ask here, on your GitHub (Since I am using this as a home assistant addon) or on the main JPP github?
Here is a link to the log, I started the addon right after plugging the juicebox in. I confirmed the IP hadnt changed using Advanced Ip Scanner.
The log you posted shows that the add-on is not able to connect to your JuiceBox at 192.168.86.95, so that’s why it isn’t working. You’ll need to make sure that’s the correct IP for your JuiceBox and that you don’t have a firewall blocking traffic from Home Assistant to port 2000 on the JuiceBox.
Thank you for the reply. This turned out to be a hell of a rabbit hole for me, but I did get it working. I deployed this at my dads house, ended up using an old laptop to host pihole and JPP in docker containers. If I get ambitions, I may try getting this all contained within home assistant, but its good enough for now.
Im not sure if that was the right place to post it, but I think my findings may be helpful for other people so I wanted to post it somewhere before I forgot everything.
Wow, that sounds like a lot of work! I’m glad you were able to get JPP working, and thanks for documenting everything - those kinds of posts are really helpful to the community.
Evidently, very early JuiceBoxes just stopped all communication after getting no response from the cloud after the shutdown and are now dead as far as sending any data goes.
Anyone know how worried we should be about EEPROM writes? I noticed the warning in the JPP Github page (regard Offline Max Current). Gemini tells me that EEPROM is good for between 100k and 1M writes. Does that mean I could safely change this setting 10 times per day for almost 30 years?
I don’t know how many writes will cause EEPROM problems, but it’s my understanding that this is only a concern if you’re changing “Max Current (Offline)” - if you instead change “Max Current (Online)” there won’t be any EEPROM writes.
Thanks, that’s my understanding as well. Am I correct in understanding that the offline setting would serve as something like a “default” amperage setting? Meaning, if I were to power off the unit and drive it to another house (without a wifi connection) and power it back on then the device would fall back on the “offline” max current setting?
How many entities are you guys getting? I get 16 and I can’t seem to be able to control it to turn the device on. I can set current, but no switch to turn on the charge.
Also I’m unable to telnet in. I can ping device, but port 2000 fails. I think i was able to get sn from mqtt logs, but it’s 28 digits and is not close to the sn printed on the side label.
There is no switch to turn on the device or to start charging - as long as the Juicebox has power it should start charging when you plug in your vehicle.
Yes, you can do that and use it as a smart charger. From the JuicePassProxy documentation, you can pause charging by changing “Max Current (Online/Wanted)” to 0, and then you can unpause by changing that back to the correct amperage value for your charger. So you would just need to set up Home Assistant automations to manage that value based on the time of day.