Custom Component: Maxsmart (Revogi)

improvements
1-Names in the cloud are not automatically imported into home assistant .
2-The master ie total wattage is no longer displayed.

  1. I will not implement cloud name polling. This is way more complex, and most of all, we don’t know how long will cloud be alive. These products are EOL since years now. However, I plan to work on port and device name customization
  2. I will add master wattage ASAP. Right now, there is no sensor implemented for master.
1 Like

New release published:

1 Like

Hi superkikim,

Thanks already for your work on this integration, it’s great.

On the other hand, I’m having a problem adding my power strips. On one of the regovi models, I can’t connect directly (SOW019), so I have to go through the web to retrieve the data. this isn’t a problem, but your application seems to script when it can’t add a referenced socket, it gets an error and doesn’t try to register another socket. Would it be possible to set a number of tries, and if that doesn’t work, move on to another one, or output a message saying that the outlet can’t be reached? Because then I get a 500 and the import stops.

Hi superkikim,

I find in other forum a solution in python for use a udp connection.
But in your code, i don’t fint the part where you use the tcp connection?

Can contact us to talk about it?

Hi @haazeel an you tell me what release you have installed and what you obtain ? What is the FW version of your devices (and what device is it ? Power strip ? Smart plug ?)

If fw version is not 1.30, it should show fields where you can put port names manually. Please give me more details (logs, error ? anything)

I use UDP for discovery. Details cannot be retrieved for FW >1.30 given the details are stored in the cloud and I won’t bother developing for that. However, it retrieves IP through UDP, and then it should show the form to add names.

TCP is only use to operate the devices (on/off/state/values)

Hi all, I did created an issue on github, but askin here as well.

I am using latest HAOS and not able to add Integration after installing those 4 files into filesystem:

Config flow could not be loaded: {“message”:“Invalid handler specified”}

Logger: homeassistant.config_entries
Source: config_entries.py:864
First occurred: 9:21:09 PM (1 occurrences)
Last logged: 9:21:09 PM
Error occurred loading flow for integration maxsmart: No module named 'custom_components.maxsmart.const'

I did tried to upload a file const.py as well. It did started to look promissing showin
Please wait, starting configuration wizard for Max Hauri Maxsmart

but ended up Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble

This error originated from a custom integration.

Logger: aiohttp.server
Source: custom_components/maxsmart/config_flow.py:14
Integration: Max Hauri Maxsmart (documentation, issues)
First occurred: 9:30:31 PM (1 occurrences)
Last logged: 9:30:31 PM

Error handling request
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
resp = await request_handler(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/aiohttp/web_app.py", line 504, in _handle
resp = await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/aiohttp/web_middlewares.py", line 117, in impl
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 85, in security_filter_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 236, in auth_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 31, in headers_middleware
response = await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 148, in handle
result = await handler(request, **request.match_info)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 63, in with_admin
return await func(self, request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 147, in post
return await super().post(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 72, in wrapper
result = await method(view, request, data, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 71, in post
result = await self._flow_mgr.async_init(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 846, in async_init
flow, result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 874, in _async_init
result = await self._async_handle_step(flow, flow.init_step, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 394, in _async_handle_step
result: FlowResult = await getattr(flow, method)(user_input)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/maxsmart/config_flow.py", line 45, in async_step_user
await self.hass.config_entries.flow.async_init(
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 846, in async_init
flow, result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 874, in _async_init
result = await self._async_handle_step(flow, flow.init_step, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 394, in _async_handle_step
result: FlowResult = await getattr(flow, method)(user_input)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/maxsmart/config_flow.py", line 64, in async_step_import
num_of_ports = await async_get_number_of_ports(self.hass, ip_address)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/maxsmart/config_flow.py", line 14, in async_get_number_of_ports
state = await hass.async_add_executor_job(device.check_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/maxsmart/maxsmart.py", line 128, in check_state
response = self._send_command(511)
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/maxsmart/maxsmart.py", line 86, in _send_command
raise Exception("Failed to send command to power strip after multiple retries")
Exception: Failed to send command to power strip after multiple retries

Maybe if anyone could show me their maxsmart folder view?

Thanks for help.

Hi,

How did you install the integration ?

I replied to you on Github.

Seems you used an old guide. Please point me to it so I can change it if I made it.

Your best bet to install the integration nowadays is to use HACS.

In HACS, on top right, click on Integrations, and on the top right, click the three dots menu button and select “Custom repositories”. Add this repository, and then enable “Show beta versions”.

Latest beta release is 2023.8.0-beta3

Hello! First of all, thank you for your contribution! I would like to know if it is compatible with smart sense devices. Since I have also been researching for years how to take control of these devices for when the revigi website stops working.

Devise smart-sense-starter-kit
Home Assistant

Hey.

No. I don’t have smartsense devices, so I didn’t work on that.

Hi,

I try to integrate this custom module on haos 2024.6.3 core but I have this message on add device :

Configuration stream could not be loaded: {“message”: “Invalid handler specified”}

hi Guys, I have refactored and highly improved the maxsmart python module.

I’d be glad if someone would give it a try. I’ve added port and strip renaming.

I also created plenty of test scripts you can find here:

Next step will be to refactor and improve the integration. Right now, it’s a very bad one making a lot of error logging. So it is really important to improve it :wink:

Stay posted.

hey again. You didn’t send me an email.

Just for you to know, another use installed beta 3 successfully, so it seems the problem is related to either your implementation, or the way you tried to install the integration.

If you get back to me, I’d be glad to help you. Otherwise, I’m not sure you would have more success with version 2024.x.x when released.

Anyone still using this integration ?

I’m back on track. I’ve spent a lot of time developing an Obsidian Plugin, but now, I want to improve this plugin.

Please shout out if you use it, and with what hardware/fw version.

1 Like

:tada: MaxSmart Integration v2025.7.1 - Major Release with Home Assistant Native Names & Automatic Migration!

Hey Home Assistant community! :wave:

I’m excited to announce the biggest update ever for the MaxSmart (Revogi) integration! This release completely overhauls the integration while preserving all your existing configurations.

:rocket: What’s New

:label: Device and Port Names Managed in Home Assistant

  • Complete independence from device settings - Manage all names directly in HA!
  • Instant updates - Name changes apply immediately without touching the device
  • Perfect integration with Home Assistant’s native entity management

:zap: Real-Time Updates

  • Instant command feedback - See switch changes immediately
  • Near real-time power monitoring - Much faster updates
  • Adaptive polling - Smart system that mimics the official app behavior

:arrows_counterclockwise: Automatic Migration of Existing Devices

  • Zero downtime - Seamless upgrade from any previous version
  • Smart device detection - Automatically fixes entity issues (bye-bye incorrect master switches on 1-port devices!)
  • 100% preservation - All your custom names, automations, and settings maintained

:shield: Enhanced Reliability

The old error handling was… let’s say “problematic” :sweat_smile:. We’ve completely rebuilt it:

  • Crystal clear messages instead of cryptic technical errors
  • Smart retry logic with automatic recovery
  • Zero log pollution - Only meaningful messages now
  • Self-healing connections - Automatic reconnection on network issues

:wrench: What’s Fixed

  • :white_check_mark: Log spam eliminated - No more unnecessary error floods
  • :white_check_mark: Entity duplication - Clean entity registry management
  • :white_check_mark: 1-port device fixes - No more incorrect master switches
  • :white_check_mark: Memory leaks - Proper resource cleanup
  • :white_check_mark: State inconsistencies - Real-time synchronization

:up: Upgrading is Easy!

For existing users: Just update via HACS and restart - automatic migration handles everything! You’ll get a notification confirming successful migration.

New users: The setup is now even simpler with enhanced device discovery.

:package: Installation

  1. Custom repositories in HACS - Add superkikim/mh-maxsmart-hass
  2. Will soon be included in HACS catalog - Working on official inclusion!

:iphone: Supported Devices

  • Max Hauri MaxSmart Power Station (6-port) - Fully tested :white_check_mark:
  • Max Hauri Smart Plug (1-port) - Fully tested :white_check_mark:
  • Other Revogi-based devices - Help us test more models! :handshake:

:link: Links

:handshake: Need Help? The community has been amazing - feel free to reach out if you have any Revogi-based devices we haven’t tested yet!

Thanks to everyone who provided feedback and testing! This release wouldn’t be possible without this awesome community. :pray:

Happy automating! :house::zap:


P.S.: These devices are discontinued but work perfectly with local control - this integration keeps them alive and better than ever!

1 Like

You’re my hero. The Revogi SOW323 EU works flawlessly. The 5-second update feature has been especially useful for me.

Unfortunately, the integration worked fine for 6 hours, but then Home Assistant crashed and wouldn’t start again. I suspect that the home-assistant_v2.db file got overloaded with data. I barely managed to delete it via the HA command line, and it started up again. However, now the Max Hauri Maxsmart integration isn’t working. I reinstalled it — it scans and detects the devices, but it throws an error.

Sorry to read that.

Any chance you could send me some filtered log excerpt?

System > Logs > View Raw Log => filter with maxsmart

Preferably just after a restart of HA.

I can’t imagine the db overloading with maxsmart stuff. That would be weird and surprising. But I have to dig to ensure this is not related to the integration. That would be bad.

TX for your help

1 Like

Also if you can give me a bit more detailed in your setup (ram, free disk space) and the size of your db and of you log.

You should never need to delete a DB. It can become quite big. Mine is 689MB. I use the same instance since at least two years and have many devices. 10 maxsmart, many Casambi, Hue, my car, my charging station, TV, multiple squeezbox and so on :sweat_smile:. My latest log is 131MB. It has been restarted last night for an update