ARCAM Integration release

Hey everyone, releasing my latest integration for ARCAM FMJ devices, this should also work for JBL and AudioControl devices since they use same protocol.
A few things to note:
This is another blind integration, i do not own an ARCAM device and i cannot test or replicate anything. If any issues occur or this is not working please explain in details what was done and the steps taken and share the integration logs.

thank you.

Second note: Power state
Arcam receivers turn off their network port when in standby, the integration will try to reconnect to the receiver every 5 seconds. This means powering on the first zone is not possible over the built-in network connection.

Note: Some newer models offer the ability to configure the device to keep the network port active when in standby mode. This can be found under HDMI Settings > HDMI Bypass & IP. Enabling HDMI & IP On will allow full power control from Home Assistant.

Two other options for complete power control exists: IR or Serial gateway.

IR command
Use an IR blaster to send a command to turn the device on using these discrete codes:

Zone 1: Protocol: RC5 Device: 16 Function: 123
Zone 2: Protocol: RC5 Device: 23 Function: 123
Turn on sometime requires two IR codes to be sent. You can generate the raw, broadlink or other IR format string using irgen tool like:

irgen -i rc5 -d 16 0 123 -o broadlink_base64 -r 2
Bash
To trigger this IR command add an automation on the event arcam.turn_on filtering on the entity_id of the media_player zone entity. This can be added using device automations or manually using normal automations.

Serial port to network gateway
Use a network to a serial port gateway to connect to the serial port of the receiver. The serial port is always available and can power on the device. This is the most reliable communication method as well.