Custom Component: Maxsmart (Revogi)

Hi.

I’ve been working hard on integrating MaxSmart power stations and power plugs into Home Assistant. I’m about there. There is still work to do. Currently, switches are configured and working.

Potential compatible devices:

  • Max Hauri MaxSmart (v1.x)
  • Revogi Smart Power Strip
  • Extel Soky
  • MCL DOM-PPS06I

Next step is to setup entry updates, and then to add sensors and to add documentation.

The component can be downloaded there for now. When it will be fully developped, I will post it on HACS.

If you are curious about the maxsmart module, you can find it here: GitHub - Superkikim/maxsmart

Credits

The maxsmart module has been made possible by the reverse engineering and documentation work done by GitHub user @altery. They have provided valuable insights into the communication protocol of MaxSmart PowerStrips. You can find their documentation here: GitHub - mh-maxsmart-powerstation

1 Like

Version 1.0.0 has been published.

Entry update works fine. And I have added sensors for realtime power consumption (watts).

So now the integration adds one switch entity per port + one master port entity, and one sensor (watts) per port. Sensors are updated every 5 sec.

I own multiple power stations and one power plug, and all work like a charm.

A good usage of the sensor is for example to determine if a device is turn on or off. As an example, my A/V Amplifier is not smart. I use a broadlink remote to turn it on or off, but it’s stateless. So I have no clue if it has been turn off or on manually and therefore I never can be sure of it’s state. Checking the power sensor for the outlet it’s plugged in allow me to check if it draws power (hence is turned on) or not :slight_smile:

1 Like

It’s an integration I’ve been waiting for a long time. Thank you so much.


I have 2 of the products in the picture. Master and first port are working. Is there a way to run it on other ports?

I have 2 devices. both were recognized. unfortunately only port 1 and master. is there a possibility to add more ports?

1 Like

Hi. You most probably have firmware ver 2.11. Can you confirm ?

Can you search your home assistant logs for “maxsmart” and share with me the discovery output ? (a json output at beginning of setup)

Revogi android app gives 3.49 firmware number.

Interesting.

Can you search the logs for the following keywords: Devices discovered

System > Logs > Load Full Log

And on top in Search logs, type Devices discovered

Also please confirm the version of the component you are using. My github is a bit messy, I’m new to it.

@jezeuler Are you in switzerland ? Do you have Maxsmart or other brand ? If Maxsmart, version 2.11 fw ?

Maxsmart is a northern european brand I think. The product I bought is Revogi but they are the same devices except the firmware.
Your product version is 93e3925.

Maxsmart is a swiss brand from Max Hauri, but the product was indeed manufactured by Revogi. But it is now EOL (end of line… not manufactured anymore)

Please add this to your configuration.yaml file:

logger:
  default: info
  logs:
    custom_components.maxsmart: debug

And then, try adding again the Maxsmart integration.

Then you will fine “Device discovered” in the log.

I need this output to verify what it returns, and adapt the integration for you.

1 Like

New log error after update :
2023-08-11 15:09:22.094 ERROR (SyncWorker_3) [homeassistant.loader] The custom integration ‘maxsmart’ does not have a valid version key (2023.7-beta1) in the manifest file and was blocked from loading. See Custom integration changes | Home Assistant Developer Docs for more details

The “-beta” in the version tag inside the manifest file violated the HA version name scheme. I’ve remove the -beta postfix and restartet HA to get this issue resolved. I will report this as issue in the github project of the component owner.

1 Like

It’s fixed.

I have published now two releases. If you put the repo on HACS as custom repo, you will have the choice of release.

Please try release 2023.8.0-beta2 and let me know how it goes.

TO DO:

  • Find how to show form to user to customize port names for non fw 1.30 devices (2.XX, 3.XX)
  • Handle update
  • Handle post-setup port and device name customization
  • Improve error handling
  • Improve UX experience (strings, translations…)

Please post any request idea you have for improvment.

If you have issues, please open an issue on Github and provide as many details as you can.

1 Like

Now it sees all sockets. It’s working on and off. The names didn’t come automatically, which isn’t a big deal. But the watt readings show zero.

I’ll need you to provide me the output of command 511. Because some devices returns milliwatt instead of watts. I need you to show me what your is returning. Note that it will always write WATT in the response, even if it returns millwatts (poor programming).

Just click this link from your home network: http://192.168.31.246/?cmd=511

Response will be something like that:

{"response":511,"code":200,"data":{"watt":["24.04","24.39","14.28","0.00","0.00","1.74"],"amp":["28.1","14.6","12.4","0.2","0.2","1.4"],"switch":[1,1,1,0,0,1]}}

Also please remind me of the brand of your devices and the version of your firmware.

Output :

{“response”:511,“code”:200,“data”:{“watt”:[0,84973,0,5348,0,0],“amp”:[0,510,0,0,0,0],“switch”:[1,1,1,1,1,0]}}

And the app is showing 84.97 and 53.48 ? Correct ?

yes correct

Please redownload same version from HACS however you’ll have to enable Please redownload from HACS. If you didn’t use HACS so far, You’ll have to add GitHub - Superkikim/mh-maxsmart-hass: Power Strip and Smart Plug home assistant custom component for Revogi based devices as a custom repo…

Please enable “Show beta versions”. I have published it as pre-release this time to be consistent.

Restart HA after download.

I have fixed the calculation.

1 Like

Thank you :partying_face: Its working now

1 Like