Integration for TP-Link Omada system

Thanks for pointing this out.
I just spent some time figuring out how much money I’d need to spend on unifi stuff to be able to recycle power on a poe port for a camera acting up and turn off a kids internet access via home assistant. Yikes!
I hope he is successful and can get the omada integration on par with the unifi one.

@danbutter I believe you can turn off internet access in home assistant if you use the adguard plugin and then have adguard manage the dns for you (under DNS settings - disallow clients) - no?

Sorta yes, but it is only dns, it requires interaction and can’t be automated. I can do it now with pfsense, but it’s not perfect and sometimes open states remain functional even though I have an automation to kill them.
The reason I was looking at what ubiquity gear would cost is they have such a nice integration with home assistant.
I don’t have much (not nearly enough) time to play with home automation like I would prefer. Networking is another beast to tame.
I have some omada stuff now and you can do what I want to with it, but not in the app so I
need to sit at a pc and of course not in home assistant…at least not yet. If the omada integration reached feature parity with the unifi stuff that’d be awesome.
Thanks for the comment though!

You can do the timed access restrictions easily on the TP-Link router. First assign static IP’s to the related devices (Settings->Maintenance->Services->DHCP Reservation), then put the devices needed into an IP group (Settings->Profiles->Groups), set up time ranges (Settings->Profiles->Time Range) then go in and set up ACL’s (access Control Lists) (Settings->Network Security->Gateway ACL->Create New Rule), then pick permit/deny, the ip group, the direction, time range, and the source and destinations. That would schedule a time period for enabling or disabling access. (You can also block at the acccess point or switch level rather or in addition to gateway.)

You can set up several of these, and enable or disable several or all of them on your cell phone whether home or away from your local network. If it is a device that has a cellular connection, you would also have to go to your phone provider’s web site and freeze the device’s access if needed…

As I was saying in my previous statement although it’s not in the App I just go into my Omada settings in a browser either at home on WiFi or through the Omada cloud - usually on my phone - to toggle those policy routing settings. Not really so convenient but it is doable. That is just for routing however. But as I was stating in my first paragraph in this message, set them all up on your PC (if easier) and then on your phone you can just enable or disable them at will on your phone browser whether you are home or not…

It’s not perfect but it is doable - wouldn’t that fix your timed access restriction concerns?

P.S., What I have long wished for was an API that would allow us to remotely and dirtectly enable or disable items set up on the router externally, which could then be shown as switches on an HA dashboard (that would be so nice!)… You could also have the exact url of the relevant settings page as a shortcut on your phone browser

I updated my test instance with the new beta to check out the brand new Omada integration (TP-Link Omada - Home Assistant).
But I am not able to connect to my software controller. All I get are these errors:

Logger: homeassistant.components.tplink_omada.config_flow
Source: components/tplink_omada/config_flow.py:91
Integration: TP-Link Omada (documentation, issues)
First occurred: 09:05:08 (2 occurrences)
Last logged: 09:13:40

Unexpected API error: Omada controller responded 'HTTP Request Error' (404)
Unexpected API error: Omada controller responded 'Unexpected error: 0, message='Attempt to decode JSON with unexpected mimetype: text/html;charset=utf-8', url=URL('https://10.0.0.5:8043/c4147ec3f0cb813011922d0bef470b5b/login')' (0)
1 Like

I have det same problem

Only hardware controllers are supported at the moment.

Having said that, anyone got that working? My OC200 is at version 5.7.6
I can’t seem to figure out what URL to use

Same here. Can not configure keeps promting ‘unexpected error’ . Running software controller 5.9.9.

Use a DNS name for your controller instead of the IP and you have to specify http:// or https://.

I didn’t try DNS name as I don’t have one normally. So I tried http://ip https://ip, https://ip/api/logon etc. Nothing works. Will try to set a DNS name

I also tried everything but not working. Switching on/off redirecting to HTTPS - but nothing change
Don’t think setting a DNS Name should be the solution. I would like to work with ip address also

There’s supposed to be an update coming out that will allow the ip to work as well, but until then, if you want to use the integration using a name instead of ip works. I agree it’s a bit silly to have to use the name, but bugs are bugs.

FWIW, currently only switches are pulled in from this integration (not APs or anything else) and only the poe for the ports. Nothing else. IMO, this is kind of a waste of an integration at the moment.

It is hard to be patient, but still this has more than the other integration that only had device trackers. Plus other support is planned so hopefully it can get to feature parity with the unifi integration and people can enjoy the same or similar functionality for a lot less money.

The router and AP device trackers of the HACS integration provide a lot of usefull information in the attributes.
My hope is that the new official integration will follow, but I don’t expect it for the near future.

source_type: router
ip: 10.0.0.2
mac: 1c:61:b4:XX:XX:XX
host_name: AP Büro
type: ap
model: EAP225-Outdoor(EU) v3.0
firmware: 5.0.8 Build 20220613 Rel. 51936
status: 14
status_category: 1
clients: 17
users: 17
memory: 56
download: 77504140
upload: 7469739
tx_rate: 4207
rx_rate: 2033
icon: mdi:access-point-network
friendly_name: AP Büro
cpu: 1
source_type: router
ip: 10.0.0.1
mac: 1c:61:b4:XX:XX:XX
host_name: ER605
type: gateway
model: ER605 v2.0
firmware: 2.1.2 Build 20230210 Rel.62992
status: 14
status_category: 1
icon: mdi:router-network
friendly_name: ER605
cpu: 15
memory: 33
download: 528633580799
upload: 8066007689
clients: 4
1 Like

Allright, I wanted to try, but can’t get it to work. What is the exact URL to use?
I have set the controller to use omada.local as hostname, I can ping it, so I would think https://omada.local:443

You shouldn’t need the :443, but I don’t think it will hurt.

Honestly, I’m glad there are so many people that want to use an Omada integration. It took a long time to get this off the ground since I originally submitted it, but I did have plans to grow it a lot after getting the inital PR approved. The PR rules say you can only start with a single domain, so I chose switches for the PoE control, mainly because it’s what I actually needed first.

Sorry about the initial bugs - I have a DNS name for my controller, and I didn’t think to try with an IP address. :confused:

Fixes for these two things should be relatively easy. I’m not exactly sure how quick the HA release cycle is during the month, but hopefully you won’t have to wait too long. It looks like there are some other weird problems, but hopefully that will become clearer once all the noise dies down.

So. I do have lots planned, also willing to accept help :smiley: And, look at it this way, last week there was no integration, which isn’t a lot better than having a broken one…

5 Likes

Yeah I know, it was just to prevent questions about the configured port :wink:

if you need help on any topic (except developtment), i’m ready to do so. I tried the custom component before and was really eager to jump to this one instead.
Do i understand it wont work on config with just IP address?

I might have some documentation suggestions :slight_smile:

Try https://omada.local:8043 , it works for me

1 Like