Comcast Xfinity

Anybody got the Comcast Xfinity interfaced with HA ?

Bump: anybody ? IR codes ?

I control an X1 box through HA via broadlink rm pro. It isn’t the full Xfinity UI but it does control it enough to give me what I was looking for. I had to switch the remote from rf to ir to initially get the codes; I don’t remember if I ever switched the remote back to rf (it’s been a while). I think the X1 remote can be switched from rf to ir with “select” and 9-8-7. You can google it to confirm I’m sure. I use the switches within scripts to program channels in automations and in the front end. Good luck!

Broadlink Switches (remote buttons):

kitchen_button_1:
    friendly_name: "Kitchen TV 1"
    command_on: "JgB4AAkcCDcJFwhbCSkHKgklCFcIAAHECRwIVwgYCBcIGAceBhkHGQcAClQIHQg3CBgHXAgqCCkIJQlWCQABxAgdCDMIOwkXBxkHHQgYBxkGAApVCB0HOAcZBl0IKQgqCCUIVwgAAcUIHQc0CDsIGAgXBx4HGQYZCAANBQ=="
    command_off: "JgB4AAkcCDcJFwhbCSkHKgklCFcIAAHECRwIVwgYCBcIGAceBhkHGQcAClQIHQg3CBgHXAgqCCkIJQlWCQABxAgdCDMIOwkXBxkHHQgYBxkGAApVCB0HOAcZBl0IKQgqCCUIVwgAAcUIHQc0CDsIGAgXBx4HGQYZCAANBQ=="
  kitchen_button_2:
    friendly_name: "Kitchen TV 2"
    command_on: "JgB4AAkcCDcJFwhbCCoHKggmB1cIAAHFCB0IUggXCBgIGAciBxgIGAcAClQIHQg3CBgHXAgqByoIJQhXCAABxQgdBzAHPAgYBxgIIQgYCBgHAApUCB0HOAgYB1wHKggqByYIVwgAAcUIHQcvCDwHGAgYCCEIGAcYCAANBQ=="
    command_off: "JgB4AAkcCDcJFwhbCCoHKggmB1cIAAHFCB0IUggXCBgIGAciBxgIGAcAClQIHQg3CBgHXAgqByoIJQhXCAABxQgdBzAHPAgYBxgIIQgYCBgHAApUCB0HOAgYB1wHKggqByYIVwgAAcUIHQcvCDwHGAgYCCEIGAcYCAANBQ=="
  kitchen_button_3:
    friendly_name: "Kitchen TV 3"
    command_on: "JgB4AAgdCDcIGAhbCCoHKggmB1cIAAHFCB0ITgcYCBgHGAgmBxgIGAcAClQIHQg3CBgHXAgqCCkIJQhXCAABxQgdByoIPAgYBxgIJgcYCBgHAApUCB0HOAgYB1wHKggqByYJVggAAcUIHQcqCDwHGAgYCCUIGAcZBwANBQ=="
    command_off: "JgB4AAgdCDcIGAhbCCoHKggmB1cIAAHFCB0ITgcYCBgHGAgmBxgIGAcAClQIHQg3CBgHXAgqCCkIJQhXCAABxQgdByoIPAgYBxgIJgcYCBgHAApUCB0HOAgYB1wHKggqByYJVggAAcUIHQcqCDwHGAgYCCUIGAcZBwANBQ=="
  kitchen_button_4: 
    friendly_name: "Kitchen TV 4"
    command_on: "JgBQAAgdCDcHGAhcCCkIKgglB1gIAAHFBx0ISgcYCBgHGQcqCBgHGAgAClQHHQg4BxgIWwkpCCoHJgdYBwABxggcCSUHPAgYBxkHKggYBxgIAA0FAAAAAAAAAAA="
    command_off: "JgBQAAgdCDcHGAhcCCkIKgglB1gIAAHFBx0ISgcYCBgHGQcqCBgHGAgAClQHHQg4BxgIWwkpCCoHJgdYBwABxggcCSUHPAgYBxkHKggYBxgIAA0FAAAAAAAAAAA="
  kitchen_button_5:
    friendly_name: "Kitchen TV 5"
    command_on: "JgB4AAgcCDgHGAhbCCoIKgcmB1gHAAHGBx0IRQgYBxgIGAgvBxgIGAcAClQIHQg3CBgHXAgqByoIJgdYBwABxQgdByIIPAcYCBgHMAcYCBgHAApUCRwHOAgYB1wHKgkpCCUIVwgAAcUIHQciBzwIGAcZBy8IGAcYBwANBQ=="
    command_off: "JgB4AAgcCDgHGAhbCCoIKgcmB1gHAAHGBx0IRQgYBxgIGAgvBxgIGAcAClQIHQg3CBgHXAgqByoIJgdYBwABxQgdByIIPAcYCBgHMAcYCBgHAApUCRwHOAgYB1wHKgkpCCUIVwgAAcUIHQciBzwIGAcZBy8IGAcYBwANBQ=="
  kitchen_button_6:
    friendly_name: "Kitchen TV 6"
    command_on: "JgB4AAgdBzgHGQdcByoIKgcmCFcIAAHFCB0HQAgYCBgHGAgzCBgHGQcAClQIHQc4CBcIXAcqCCoHJghXBwABxgcdCB0IPAcYCBgHNAcZBxgIAApTCB0IOAcYCFsIKgcqCiQHWAgAAcQIHQgdBzwIGAgYBzQHGAgYBwANBQ=="
    command_off: "JgB4AAgdBzgHGQdcByoIKgcmCFcIAAHFCB0HQAgYCBgHGAgzCBgHGQcAClQIHQc4CBcIXAcqCCoHJghXBwABxgcdCB0IPAcYCBgHNAcZBxgIAApTCB0IOAcYCFsIKgcqCiQHWAgAAcQIHQgdBzwIGAgYBzQHGAgYBwANBQ=="
  kitchen_button_7:
    friendly_name: "Kitchen TV 7"
    command_on: "JgB4AAgdCDcJFwhbCCoIKQgmB1gHAAHFCB0IPAcYCBgHGQc4BxgIGAcAClQIHQg3CBgHXAgqCCkIJgdXCAABxQgdCBgHPAgYBxgIOAgXCBgHAApUCB0HOAgYB1wIKgcqCCYHVwgAAcUIHQcYCDwIGAcYCDcIGAgYBwANBQ=="
    command_off: "JgB4AAgdCDcJFwhbCCoIKQgmB1gHAAHFCB0IPAcYCBgHGQc4BxgIGAcAClQIHQg3CBgHXAgqCCkIJgdXCAABxQgdCBgHPAgYBxgIOAgXCBgHAApUCB0HOAgYB1wIKgcqCCYHVwgAAcUIHQcYCDwIGAcYCDcIGAgYBwANBQ=="
  kitchen_button_8:
    friendly_name: "Kitchen TV 8"
    command_on: "JgB4AAgdBzgIGAdcCCkIKgglCFcIAAHFCB0HOAcZBxgIGAc8CRcIGAcAClQIHQc4BxkHXAcqCCoHJghXCAABxQceB1wHPAgYBxgIPAgYBxgIAApUBx0JNwcYCFsIKggqByYHWAcAAcUJHAhbCDwJFwcYCDwHGAgYBwANBQ=="
    command_off: "JgB4AAgdBzgIGAdcCCkIKgglCFcIAAHFCB0HOAcZBxgIGAc8CRcIGAcAClQIHQc4BxkHXAcqCCoHJghXCAABxQceB1wHPAgYBxgIPAgYBxgIAApUBx0JNwcYCFsIKggqByYHWAcAAcUJHAhbCDwJFwcYCDwHGAgYBwANBQ=="
  kitchen_button_9:
    friendly_name: "Kitchen TV 9"
    command_on: "JgBQAAgdBzgIGAdcBysHKgglCFcIAAHFCB0HNAcYCBgIGAdACBgIGAcAClQIHQg3CBgHXAcrByoIJQhXCAABxQgdB1gHPAgYBxgIQAgYBxkHAA0FAAAAAAAAAAA="
    command_off: "JgBQAAgdBzgIGAdcBysHKgglCFcIAAHFCB0HNAcYCBgIGAdACBgIGAcAClQIHQg3CBgHXAcrByoIJQhXCAABxQgdB1gHPAgYBxgIQAgYBxkHAA0FAAAAAAAAAAA="
  kitchen_button_0:
    friendly_name: "Kitchen TV 0"
    command_on: "JgB4AAcdCDgIFwhbCCoHKwglB1gHAAHFCRwIWwkXCBgHGAgYBxgIGAgAClMJHAg3CBgIWwgqByoIJgdYBwABxQgdCDcJOwcYCBgIGAcYCBgIAApTCB0INwgYB1wIKgcqCCYHVwgAAcUIHQc4CTsIFwkXBxkHGAgYBwANBQ=="
    command_off: "JgB4AAcdCDgIFwhbCCoHKwglB1gHAAHFCRwIWwkXCBgHGAgYBxgIGAgAClMJHAg3CBgIWwgqByoIJgdYBwABxQgdCDcJOwcYCBgIGAcYCBgIAApTCB0INwgYB1wIKgcqCCYHVwgAAcUIHQc4CTsIFwkXBxkHGAgYBwANBQ=="
  kitchen_button_enter:
    friendly_name: "Kitchen TV Enter"
    command_on: "JgDwAAgdBzgHGQdcCCkJKQcmCFcIAAHFCB0HPAgYBxgIIQgvCBgHGAgAClQHHQg4BxgIWwkpCCoHJgdYBwABxggcCBgHPAkXCCEILwcYCBgIAApTCB0INwgYCFsIKggpCCYHVwkAAcQIHQgYBzwIGAciBzAHGAgYBwAKVAgdBzgIGAdcByoIKgglCFcIAAHFCB0HGAg8BxkHIgcvCBgHGQcAClQIHQc4BxgIXAcqCCoHJghXCAABxQcdCBgIPAcYCCEILwgYBxgIAAdoCB0HOAgXCFwIKQgqByYIVwgAAcUHHQgiBxgIGAdYB1wHGAgYCAANBQAAAAAAAAAA"
    command_off: "JgDwAAgdBzgHGQdcCCkJKQcmCFcIAAHFCB0HPAgYBxgIIQgvCBgHGAgAClQHHQg4BxgIWwkpCCoHJgdYBwABxggcCBgHPAkXCCEILwcYCBgIAApTCB0INwgYCFsIKggpCCYHVwkAAcQIHQgYBzwIGAciBzAHGAgYBwAKVAgdBzgIGAdcByoIKgglCFcIAAHFCB0HGAg8BxkHIgcvCBgHGQcAClQIHQc4BxgIXAcqCCoHJghXCAABxQcdCBgIPAcYCCEILwgYBxgIAAdoCB0HOAgXCFwIKQgqByYIVwgAAcUHHQgiBxgIGAdYB1wHGAgYCAANBQAAAAAAAAAA"

Sample Script (ESPN is channel 173 for me):

espn_kitchen:
    alias: ESPN Kitchen
    sequence:
      - service: homeassistant.turn_on
        entity_id: switch.hdmi_2
      - delay:   
          seconds: 1 
      - service: homeassistant.turn_on
        entity_id: switch.kitchen_button_1
      - delay:   
          seconds: 1  
      - service: homeassistant.turn_on
        entity_id: switch.kitchen_button_7
      - delay:   
          seconds: 1  
      - service: homeassistant.turn_on
        entity_id: switch.kitchen_button_3
      - delay:   
          seconds: 1  
      - service: homeassistant.turn_on
        entity_id: switch.kitchen_button_enter

Thank you for the codes, do you have any additional code, such as on/off?

Also, why command_on and command_off for a button?

Thank you!

My on/off codes are to a dumb Sony TV. I don’t turn the X1 box off and already had the Sony on/off code before starting on the Xfinity codes. The X1 codes weren’t hard to pull from the frontend once the remote was switched from RF to IR.

command_on and command_off are actually the same code. I think I did it that knowing they’d be switches so worst case they’d need an on and an off. I’m not sure if both are actually needed.

There is a way to control the X1 platform, it is not local though. I have control over both my cable boxes. Remote button commands and text commands (voice commands). I am still beta testing. Works via MQTT or HTTP (get or post).

JCGrzywna

Can you post more info on how you have used HTTP commands? What cable boxes are you using?

I have written code for a service that runs in Linux that allows me to use HTTP commands or MQTT. You cannot easily send a basic HTTP command to the box directly. I have the ARRIS XG1v4, Pace / Samsung XG2 and Pace / Cisco XiD X1 boxes. It will work with any box running the X1 platform.

Thanks, if you can give more details once you get your beta version sorted out, I’m sure there are others that would appreciate what you are doing.

Where did you find any info on commands? I’ve search a few times and have came up with nothing of any value.

Could you possibly post this code to github? I am really interested as my cable box is the only thing I don’t have integrated.