Hi there. Just received my Remote 3 (and first Unfolded Circle product). Took some time for the initial setup, not least because it wouldn’t connect to wifi or the dock. It now seems to have resolved itself overnight. I see there are not as many supported devices as I was hoping for, including Arcam AVRs (I have the AVR30) and the Panasonic UB9000. What’s the best way to get them onto my Remote 3? I have the IP address of the Arcam AVR (from the router interface). I’ve also just started dabbling with Home Assistant. Or do I have to learn every individual IR command from the native remotes? Any advice explained in non-techy terms would be most appreciated.
There’s a Panasonic integration that supports your model.
No Arcam integration yet but if you get the documentation from the manufacture you may can use the http requests integration to send http requests or text over tcp commands.
If that doesn’t work you can search in the Global Caché Ir Database ( Database | Global Caché Control Tower ) and import code sets to the remote. There are simple tutorials here or on Discord.
Thanks Kenny. You’re right - I should have mentioned that there is a Panasonic entry. Unfortunately, it’s less of an integration and more a complex work around that is way beyond my capabilities:
Newer players with “UB” prefixes (UB-420, UB-820, and UB-9000) support a (very) limited set of functions. To make it work with latest UHD bluray players (such as UB820), you will have to enable voice control in the network menu AND to patch the Panasonic firmware (not an easy procedure). More information on AVSForum Tested correctly on my Panasonic UB820.
I’ll probably have to go to the IR hex database for both, I think. I’m not sure I’d know how to go about sending http requests or text over tcp commands.Thanks for signposting the Thrillcats tutorials.
Basically you could use the requests integration and the text over tcp entity to send simple commands via IP. Page 7 shows the code to send a simulated RC-5 IR command over IP or serial. Page 39+ 40 have all RC-5 codes listed. For Power On you would need to enter YourIP:50000,”0x210x010x080x020x100x7B0x0D” in the source field.
After you uploaded the integration choose configure custom entities from the dropdown and then replace the example configuration with this configuration. Make sure to also replace the ip in the 2nd line with the ip of your AVR.
Thanks Kenny. Really appreciate your help. I could only install the Arcam AVR as an entity not an integration so was unable to do a custom install. I’ve managed to get the IR learning to work and everything I’ve input works when I click the “Test Code” button in the web configurator. But nothing works on the remote itself! So frustrating. I’m having a similar issue with my Sky TV box - I can’t even learn the IR codes for that; something seems to be blocking it.
This looks great, however after I uploaded the integration and then pasted this it has several errors. Firstly it errors when saving the config, if I remove the variables and hard code the IP:port on each line that allowed me to save the config. However when I try to execute a command on the remote, it just errors with an “internal server error” the logs say 500 error command could not be sent. I tried messing around with the HEX strings, adding quotes to make it a literal string, or adding / instead of the 0, shortening the Hex codes, commas, etc. It would be amazing if I could get this working as it’s the last piece of my setup to configure. Any support or suggestions would be greatly appreciated. Thanks
Please find an except from the logs below when executing the mute function from the code you provided above:
2025-09-22 15:16:52.749301 +00:00 ui WARN uc.ui.entity.controller: Cannot execute command: “requests.main.remote-custom-arcam-avr30” “remote.send” 500 “Internal server error, please try later”
2025-09-22 15:16:52.742741 +00:00 custom-intg-requests INFO ucapi.api DEBUG [(‘127.0.0.1’, 56014)] ->: {‘kind’: ‘resp’, ‘req_id’: 103, ‘code’: 408, ‘msg’: ‘result’, ‘msg_data’: {}}
2025-09-22 15:16:52.738788 +00:00 custom-intg-requests INFO commands WARNING Timeout while waiting for a response message from the server
2025-09-22 15:16:50.727241 +00:00 custom-intg-requests INFO remote DEBUG Executing command MUTE
2025-09-22 15:16:50.715306 +00:00 custom-intg-requests INFO remote INFO Received send_cmd command with parameter {‘command’: ‘MUTE’} for entity id remote-custom-arcam-avr30
2025-09-22 15:16:50.713910 +00:00 custom-intg-requests INFO ucapi.api DEBUG [(‘127.0.0.1’, 56014)] <-: {“kind”:“req”,“id”:103,“msg”:“entity_command”,“msg_data”:{“cmd_id”:“send_cmd”,“entity_id”:“remote-custom-arcam-avr30”,“entity_type”:“remote”,“params”:{“command”:“MUTE”}}}
I also took a packet capture from the wireless access point the remote is connected to and no packets were sent or received to the configured IP of the AVR from the remote. They are both connected to the same VLAN with no ACL’s or firewall rules etc.
The integration is waiting for a response from the server but didn’t get one. Depending on the device you need to disable the wait for response option in the advanced setup. It could also be the receiver that takes longer that the timeout (2 seconds by default) to answer.
I also assume that the config I posted won’t work because the receiver is expecting binary data and not text.
2025-09-22 18:29:44.270663 +00:00 custom-intg-requests INFO ucapi.api DEBUG [(‘127.0.0.1’, 43160)] ->: {‘kind’: ‘resp’, ‘req_id’: 47, ‘code’: 200, ‘msg’: ‘result’, ‘msg_data’: {}}
2025-09-22 18:29:44.269552 +00:00 custom-intg-requests INFO commands INFO Sent raw text ‘! \x01 \x08 \x02 \x10 \r \r’ over TCP to 10.1.0.151:50000
2025-09-22 18:29:44.261880 +00:00 custom-intg-requests INFO remote DEBUG Executing command MUTE
2025-09-22 18:29:44.249476 +00:00 custom-intg-requests INFO remote INFO Received send_cmd command with parameter {‘command’: ‘MUTE’} for entity id remote-custom-arcam-avr30
2025-09-22 18:29:44.248810 +00:00 custom-intg-requests INFO ucapi.api DEBUG [(‘127.0.0.1’, 43160)] <-: {“kind”:“req”,“id”:47,“msg”:“entity_command”,“msg_data”:{“cmd_id”:“send_cmd”,“entity_id”:“remote-custom-arcam-avr30”,“entity_type”:“remote”,“params”:{“command”:“MUTE”}}}
\x01 \x08 \x02 \x10 - This is missing the first and last two hex commands, the AVR needs all of them to process the commands. Also is it possible to send as byte rather than text? Thanks again.
It’s incomplete beacuse 0x0D is handled as a carriage return control character (\r) and 0x21 is the ! at the begnning. This can also be seen in the log you posted. You can try to put 0\\\ in front of it to escape it liked described in the Readme. But like I wrote I have not tested it with binary data as everything is encoded to utf-8 before sending. I don’t know if this still works.
Thanks Kenny, I’ve tried to escape it as suggested however it doesn’t appear to send them correctly still: ‘0\x00x21 \x01 \x08 \x02 \x10 0\x00x0D 0\x00x0D’ - or at least it didn’t decode as intended by the AVR. I don’t suppose you would be able to add support for sending as binary data (bytes) instead of the UTF-8 encoding?
I also have an Arcam receiver (AVR20) and would love to have an integration rather than IR to control my receiver. I will follow this thread and help wherever possible (which will likely be next to nothing because almost any code is above my head)
You should wait for a dock update. The AVR20 seems to have a simple RS232 API and the dock should get the possibility to control devices by RS232. Perhaps you alread look for a place to place you dock near the AVR20.