Custom component: Horizon EOS Settopbox (Arris DCX960) - Not functional anymore!

Thank you, you’re welcome!

1 Like

@sholofly
I have a Virgin UK TV360 box and it’s OK with the old integration and am happy to test. I’ve just added LG Horizon and happy to try and test/setup. I notice there is no Virgin UK in the provider list, I have enable beta.

Chris

@ChrisThomas Please update to the latest beta 0.4.1b and report your findings at github please!

1 Like

Oooh……maybe this will fix the stability issues I had on Virgin360. Works ok but frequently have to ‘reload’ the integration as it stops working.

I’ll have a look at this later :+1:

Thanks for this, just loaded it up and my Virgin Media Stream Box was found. Can switch channels by firing off the commands as per above, fantastic work.

Quick question, is there any way to integrate this so I can use my Harmony Ultimate remote (with hub) to control the device?

Was thinking as a back up plan - Is there a way to use the Roku commands so I have an “emulated Roku” harmony activity that fires off the commands in HA?

Have to say the new LG Horizon implementation is working flawlessly in the UK on Virgin360. Took a while to re-program all my vurtual remotes but it’s now working perfectly. Seems to be more responsive as well. Great work @sholofly

2 Likes

Yes , ive basically built my Harmony Remote all into HA now, (the dog chewed the bloody remote up so had to!). Pull in the Harmony integration and all your activities/devices etc will all be there to be called.

Or are you still looking at using the remote? im not sure why you would use this when the Harmony already has the Virgin box device available doesn’t it ?

I’ve got the Virgin Stream box, not sure it works the same as the 360?
Plus yes, I use the Harmony remote for all my gadgets, I just need away to program favourites and button presses.

@Groove I’m about to start doing the same thing, remove Harmony and use HA. How did you go about it? Any Pointers?

Thanks Andy!

Hi everyone. I’m just about to make the switch from the VirginTiVo integration to the LG Horizon one, once my new controller for Virgin 360 arrives on Wednesday and I upgrade my existing V6 box’s software.

Does anyone have any pointers/tips etc for making the switch over from TiVo? Any gochas or anything I should be aware of, other than the obvious (i.e. that it’s a totally different integration in Home Assistant and totally different software on the box). :slight_smile: Is there anything that might catch me out?

Also, although I haven’t actually used it yet, many thanks to @sholofly for providing this integration. I wouldn’t be making the switch to Virgin 360 if this didn’t exist. :slight_smile:

Just writing up my experience for anyone else who may be in the same/similar positon to either help you and hopefully someone can help me too!

What I wanted to acheive: I wanted to use my Harmony Ultimate remote (plus hub) to control my Virgin Media TV. I’ve alreeady got it set up for my PC, my Nvidia Shield and my YouView Humax Freeview box.

I’ve got the new Virgin Media Stream box, which unfortunately only seems to have Bluetooth connection for the remote, which means I’m pretty much SOL as no device exists in Harmony’s database (where it seems for the 360 there is an option of using the Ziggo and IR control). I’ve tried all the suggestions of adding an Arris,Ziggo Mediabox Next plus any other device I could possible add!

Ended up using a workaround where I have set up a “fake” Roku device on Harmony then built a routine which turns on the TV, Soundbard and Roku, then used Emulated Roku in Home Assistant and remapped all the Roku buttons in the Harmony routine and then again in HA to fire off the LG Horizon remote button send commands in HomeAssistant.

Basic functions such as channel up/down, left right, select, back, menu all work fine.

I struggled with how to get the On/Off function working so ended up with ANOTHER workaround.

I build a simulated switch in Samung Smartthings, which I then added to Harmony so when I run the Roku scene, it turns on the switch, in HomeAssistant when that switch turns on, it fires off the PowerOn command to the VIrgin Box. I also mapped the virtual switch to one of the SmartHome buttons on the Harmony remote, so that if for some reason it doesn’t trigger (or the switch is out of sync with the box), I just press that button to fire off the command

Still have a few questions to ask

  1. Is it possible to call an app directly from HA, say I want to launch Netflix? Couldn’t seem to get this to work in the Developer tab, so maybe I’m typing something wrong or it just doesn’t work?
  2. Is it possible to get the software keyboard on the Harmony to register as number presses on the Stream Box (i.e. if I press 101 on the harmony, it will launch BBC 1)
  3. Can the colour buttons (red, green etc.) be mapped in HA? When launching programs on BBC, ITV etc, the option to watch live or from the beginning pops up and I need those buttons to register

Hi @andyktaylor I can only respond based on my own experience with Ziggo. But maybe it can help you forward:

  1. As far as I know it’s only possible when these apps are available through a ‘normal’ channel on your TV box. i.e.: Whe have streaming services (Netflix, Videoland, Amazon, NPO start) Available form channel 150 and onwards. I don’t think it’s possible to start apps directly with a different command.

  2. Can’t answer to that since I have no experience with Harmony

  3. I think it can but never tested it myself. The image of the remote on my github page is based on my Ziggo remote control. There’s a list of much more codes, found by @jellybean who works on an homekit integration. Maybe you can try one of these codes?

“AVRInput”,“AVRPower”,“Accel”,“Accept”,“Again”,“AllCandidates”,“Alphanumeric”,“AltGraph”,“AppSwitch”,“ArrowDown”,“ArrowLeft”,“ArrowRight”,“ArrowUp”,“Attn”,“AudioBalanceLeft”,“AudioBalanceRight”,“AudioBassBoostDown”,“AudioBassBoostToggle”,“AudioBassBoostUp”,“AudioFaderFront”,“AudioFaderRear”,“AudioSurroundModeNext”,“AudioTrebleDown”,“AudioTrebleUp”,“AudioVolumeDown”,“AudioVolumeMute”,“AudioVolumeUp”,“Backspace”,“BrightnessDown”,“BrightnessUp”,“BrowserBack”,“BrowserFavorites”,“BrowserForward”,“BrowserHome”,“BrowserRefresh”,“BrowserSearch”,“BrowserStop”,“Call”,“Camera”,“CameraFocus”,“Cancel”,“CapsLock”,“ChannelDown”,“ChannelUp”,“Clear”,“Close”,“ClosedCaptionToggle”,“CodeInput”,“ColorF0Red”,“ColorF1Green”,“ColorF2Yellow”,“ColorF3Blue”,“ColorF4Grey”,“ColorF5Brown”,“Compose”,“ContextMenu”,“Convert”,“Copy”,“CrSel”,“Cut”,“DVR”,“Delete”,“Dimmer”,“DisplaySwap”,“Eisu”,“Eject”,“End”,“EndCall”,“Enter”,“EraseEof”,“Escape”,“ExSel”,“Execute”,“Exit”,“F1”,“F10”,“F11”,“F12”,“F13”,“F14”,“F15”,“F16”,“F17”,“F18”,“F19”,“F2”,“F20”,“F21”,“F22”,“F23”,“F24”,“F3”,“F4”,“F5”,“F6”,“F7”,“F8”,“F9”,“FavoriteClear0”,“FavoriteClear1”,“FavoriteClear2”,“FavoriteClear3”,“FavoriteRecall0”,“FavoriteRecall1”,“FavoriteRecall2”,“FavoriteRecall3”,“FavoriteStore0”,“FavoriteStore1”,“FavoriteStore2”,“FavoriteStore3”,“FinalMode”,“Find”,“Fn”,“FnLock”,“GoBack”,“GoHome”,“GroupFirst”,“GroupLast”,“GroupNext”,“GroupPrevious”,“Guide”,“GuideNextDay”,“GuidePreviousDay”,“HangulMode”,“HanjaMode”,“Hankaku”,“HeadsetHook”,“Help”,“Hibernate”,“Hiragana”,“HiraganaKatakana”,“Home”,“Hyper”,“Info”,“Insert”,“InstantReplay”,“JunjaMode”,“KanaMode”,“KanjiMode”,“Katakana”,“Key11”,“Key12”,“LastNumberRedial”,“LaunchApplication1”,“LaunchApplication2”,“LaunchAssistant”,“LaunchCalendar”,“LaunchContacts”,“LaunchControlPanel”,“LaunchMail”,“LaunchMediaPlayer”,“LaunchMusicPlayer”,“LaunchPhone”,“LaunchScreenSaver”,“LaunchSpreadsheet”,“LaunchWebBrowser”,“LaunchWebCam”,“LaunchWordProcessor”,“Link”,“ListProgram”,“LiveContent”,“Lock”,“LogOff”,“MailForward”,“MailReply”,“MailSend”,“MannerMode”,“MediaApps”,“MediaAudioTrack”,“MediaClose”,“MediaFastForward”,“MediaLast”,“MediaPause”,“MediaPlay”,“MediaPlayPause”,“MediaRecord”,“MediaRewind”,“MediaSkip”,“MediaSkipBackward”,“MediaSkipForward”,“MediaStepBackward”,“MediaStepForward”,“MediaStop”,“MediaTopMenu”,“MediaTrackNext”,“MediaTrackPrevious”,“MicrophoneToggle”,“MicrophoneVolumeDown”,“MicrophoneVolumeMute”,“MicrophoneVolumeUp”,“ModeChange”,“NavigateIn”,“NavigateNext”,“NavigateOut”,“NavigatePrevious”,“New”,“NextCandidate”,“NextFavoriteChannel”,“NextUserProfile”,“NonConvert”,“Notification”,“NumLock”,“OnDemand”,“Open”,“PageDown”,“PageUp”,“Pairing”,“Paste”,“Pause”,“PinPDown”,“PinPMove”,“PinPToggle”,“PinPUp”,“Play”,“PlaySpeedDown”,“PlaySpeedReset”,“PlaySpeedUp”,“Power”,“PowerOff”,“PreviousCandidate”,“Print”,“PrintScreen”,“Process”,“Props”,“RandomToggle”,“RcLowBattery”,“RecordSpeedNext”,“Redo”,“RfBypass”,“Romaji”,“STBInput”,“STBPower”,“Save”,“ScanChannelsToggle”,“ScreenModeNext”,“ScrollLock”,“Select”,“Settings”,“ShiftLevel5”,“SingleCandidate”,“Soft1”,“Soft2”,“Soft3”,“Soft4”,“Soft5”,“Soft6”,“Soft7”,“Soft8”,“SpeechCorrectionList”,“SpeechInputToggle”,“SpellCheck”,“SplitScreenToggle”,“Standby”,“Subtitle”,“Super”,“Symbol”,“SymbolLock”,“TV”,“TV3DMode”,“TVAntennaCable”,“TVAudioDescription”,“TVAudioDescriptionMixDown”,“TVAudioDescriptionMixUp”,“TVContentsMenu”,“TVDataService”,“TVInput”,“TVInputComponent1”,“TVInputComponent2”,“TVInputComposite1”,“TVInputComposite2”,“TVInputHDMI1”,“TVInputHDMI2”,“TVInputHDMI3”,“TVInputHDMI4”,“TVInputVGA1”,“TVMediaContext”,“TVNetwork”,“TVNumberEntry”,“TVPower”,“TVRadioService”,“TVSatellite”,“TVSatelliteBS”,“TVSatelliteCS”,“TVSatelliteToggle”,“TVTerrestrialAnalog”,“TVTerrestrialDigital”,“TVTimer”,“Tab”,“Teletext”,“Undo”,“Unidentified”,“VideoModeNext”,“VoiceDial”,“WakeUp”,“Wink”,“Zenkaku”,“ZenkakuHankaku”,“ZoomIn”,“ZoomOut”,“ZoomToggle”

He also found another list:

“Abort”,“Again”,“AltLeft”,“AltRight”,“ArrowDown”,“ArrowLeft”,“ArrowRight”,“ArrowUp”,“AudioVolumeDown”,“AudioVolumeMute”,“AudioVolumeUp”,“Backquote”,“Backslash”,“Backspace”,“BassBoost”,“BracketLeft”,“BracketRight”,“BrightnessAuto”,“BrightnessDown”,“BrightnessMaximum”,“BrightnessMinimum”,“BrightnessToggle”,“BrightnessUp”,“BrowserBack”,“BrowserFavorites”,“BrowserForward”,“BrowserHome”,“BrowserRefresh”,“BrowserSearch”,“BrowserStop”,“CapsLock”,“ChannelDown”,“ChannelUp”,“Close”,“ClosedCaptionToggle”,“Comma”,“ContextMenu”,“ControlLeft”,“ControlRight”,“Convert”,“Copy”,“Cut”,“Delete”,“Digit0”,“Digit1”,“Digit2”,“Digit3”,“Digit4”,“Digit5”,“Digit6”,“Digit7”,“Digit8”,“Digit9”,“DisplayToggleIntExt”,“Eject”,“End”,“Enter”,“Equal”,“Escape”,“Exit”,“F1”,“F10”,“F11”,“F12”,“F13”,“F14”,“F15”,“F16”,“F17”,“F18”,“F19”,“F2”,“F20”,“F21”,“F22”,“F23”,“F24”,“F3”,“F4”,“F5”,“F6”,“F7”,“F8”,“F9”,“Find”,“Fn”,“FnLock”,“GameButton1”,“GameButton10”,“GameButton11”,“GameButton12”,“GameButton13”,“GameButton14”,“GameButton15”,“GameButton16”,“GameButton2”,“GameButton3”,“GameButton4”,“GameButton5”,“GameButton6”,“GameButton7”,“GameButton8”,“GameButton9”,“GameButtonA”,“GameButtonB”,“GameButtonC”,“GameButtonLeft1”,“GameButtonLeft2”,“GameButtonMode”,“GameButtonRight1”,“GameButtonRight2”,“GameButtonSelect”,“GameButtonStart”,“GameButtonThumbLeft”,“GameButtonThumbRight”,“GameButtonX”,“GameButtonY”,“GameButtonZ”,“Help”,“Home”,“Hyper”,“Info”,“Insert”,“IntlBackslash”,“IntlRo”,“IntlYen”,“KanaMode”,“KbdIllumDown”,“KbdIllumUp”,“KeyA”,“KeyB”,“KeyC”,“KeyD”,“KeyE”,“KeyF”,“KeyG”,“KeyH”,“KeyI”,“KeyJ”,“KeyK”,“KeyL”,“KeyM”,“KeyN”,“KeyO”,“KeyP”,“KeyQ”,“KeyR”,“KeyS”,“KeyT”,“KeyU”,“KeyV”,“KeyW”,“KeyX”,“KeyY”,“KeyZ”,“KeyboardLayoutSelect”,“Lang1”,“Lang2”,“Lang3”,“Lang4”,“Lang5”,“LaunchApp1”,“LaunchApp2”,“LaunchAssistant”,“LaunchAudioBrowser”,“LaunchCalendar”,“LaunchContacts”,“LaunchControlPanel”,“LaunchDocuments”,“LaunchInternetBrowser”,“LaunchKeyboardLayout”,“LaunchMail”,“LaunchPhone”,“LaunchScreenSaver”,“LaunchSpreadsheet”,“LaunchWordProcessor”,“LockScreen”,“LogOff”,“MailForward”,“MailReply”,“MailSend”,“MediaFastForward”,“MediaLast”,“MediaPause”,“MediaPlay”,“MediaPlayPause”,“MediaRecord”,“MediaRewind”,“MediaSelect”,“MediaStop”,“MediaTrackNext”,“MediaTrackPrevious”,“MetaLeft”,“MetaRight”,“MicrophoneMuteToggle”,“Minus”,“New”,“NonConvert”,“NumLock”,“Numpad0”,“Numpad1”,“Numpad2”,“Numpad3”,“Numpad4”,“Numpad5”,“Numpad6”,“Numpad7”,“Numpad8”,“Numpad9”,“NumpadAdd”,“NumpadBackspace”,“NumpadClear”,“NumpadClearEntry”,“NumpadComma”,“NumpadDecimal”,“NumpadDivide”,“NumpadEnter”,“NumpadEqual”,“NumpadMemoryAdd”,“NumpadMemoryClear”,“NumpadMemoryRecall”,“NumpadMemoryStore”,“NumpadMemorySubtract”,“NumpadMultiply”,“NumpadParenLeft”,“NumpadParenRight”,“NumpadSignChange”,“NumpadSubtract”,“Open”,“PageDown”,“PageUp”,“Paste”,“Pause”,“Period”,“Power”,“Print”,“PrintScreen”,“PrivacyScreenToggle”,“ProgramGuide”,“Props”,“Quote”,“Redo”,“Resume”,“Save”,“ScrollLock”,“Select”,“SelectTask”,“Semicolon”,“ShiftLeft”,“ShiftRight”,“ShowAllWindows”,“Slash”,“Sleep”,“Space”,“SpeechInputToggle”,“SpellCheck”,“Super”,“Suspend”,“Tab”,“Turbo”,“Undo”,“UsbErrorRollOver”,“UsbErrorUndefined”,“UsbPostFail”,“UsbReserved”,“WakeUp”,“ZoomIn”,“ZoomOut”,“ZoomToggle”

Please let me know if that helps you!

Thanks appreciate the info. I think I found my issue, it’s to do with how Emulated Roku works.

Emulated Roku only has a set number of buttons exposed (up, down, left , right, enter etc.) and I can’t add more.

My solution: I set up two Rokus in Harmony, then I have two Emulated Roku in HA, I can then add both Roku devices into my Harmony activity and map both sets of buttons. This will mean I can get anothe whole set of buttons to configure. So that sorts out my lack of buttons issue.

Now just left with the remapping number keys which I don’t think is possible on the Harmony software, however what my ultimate goal was, was to be able to launch a channel via voice command, so instead I’ll create dummy switches and map them all in Smartthings>Harmony>HA>VM. Would rather not have the multiple hand offs, so will need to research if there is a way to do this completely differently, like running some software on another RPI that can sniff the Harmony buttons and convert to an IP send.

@andyktaylor Not sure if this is a help or not. I have a Harmony Ultimate and hub and I’m trying to “migrate” this functionality into HomeAssistant. I have things working after a fashion but I’m at the beginning of the road. I’ve created an input select list with all of our favourite channels and this works by calling the channels by name rather than number. The issue with this is the naming convention used by VirginMedia, get them from the add on or from developer tools! This works for me but still a bit clunky.

Chris

@ChrisThomas ChrisThomas Thanks! Why didn’t I think of this :slight_smile:
Now I at least have the channel lists so should be able to call them in HA by channel name. How do I set up something on the Harmony remote to trigger these? When you say you created an input select list, how did you do that?

My initial task was to move away from Harmony and rely entirley on HA, as a learning tool to learn more HA stuff. I’ve got all the media device integrations and can control (nearly) all of the features, but it’s not at all user friendly like the Harmony handset, however, it is more flexible??? I just have one page in my dashboard with all the integrations, so turn on, select input, turn on, select input, select channel are all separate manual actions at the moment.

I can do (nearly) replace all of the IR and the Harmony functions with calls from HA directly to TV, Virgin, Surround Amp,… It’s still a work in progress…

For example on my dashboard I have a card for favorites;

type: entities
entities:
  - entity: input_select.favorite_selector
title: Favorite

and the input_select helper lists all the TV favorites that we have set up on Harmony, BUT this list is made of names that I got from this integration, I’m still tinkering around using this or channel numbers. So the list is currently readable but it’s not very consistant.

I have an automation triggered on change of this list:

alias: "Remote: Select Favorite"
description: ""
trigger:
  - platform: state
    entity_id:
      - input_select.favorite_selector
condition: []
action:
  - service: media_player.select_source
    data:
      source: "{{ states('input_select.favorite_selector') }}"
    target:
      entity_id: media_player.virgin_tv
mode: single

I’ve proved I CAN lose the Harmony but Wife Acceptance Factor will go negative if launched today! The reason for the Harmony in the begining is (wife) confusion over which remote for which function, I need to build a nicer looking dashboard and with some nice channel icons for the favorites and CLEAR description/pictures of which button does what…

Currently it’s all very simple

So I made the switch from VirginTiVo to LG Horizon last night and all seems to be working really well. Dare I say better than the integration for VirginTiVo.

The only downside I can see is that this is reliant on the cloud rather than talking to the box locally and there appeared to be a problem with the Virgin servers last night, as the box became unavailable for a couple of hours. Incidentally, the Virgin Media TV Go app was also unable to see the box during this time. I can’t see a way around this, as I believe that’s just the way the platform is architected and there is no local connection option?

One thing I have noticed is that the paused state never gets updated on first pause after turn on and intermittently fails to update, although I haven’t spotted a pattern yet. @sholofly Is this a bug in the integration, or just that the Virgin servers are not sending the state correctly? Should I open an issue for it on the Github repository?

There’s a definite inconsistency in the behaviour of the app and this add on. What I’ve observed is that if the add on misbehaves so does the app and visa versa. I’ve not yet observed that this fixes itself until the setop box goes into standby and back on. I’m making a leap here but it’s looking like an issue at Virgin Media’s end rather than the addon. When it works the addon works well.

hello,

for some reason my google home app doenst see the box anymore i tried to reinstall te costom component and alsoi hassio but notting work