npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

homebridge-oppo-udp

v5.1.0

Published

Homebridge Plugin to control your Oppo 203/205.

Downloads

69

Readme

homebridge-oppo-udp

HomeKit integration for Oppo UDP 203/205

verified-by-homebridge homebridge-oppo-udp mit-license

What is this?

homebrige-oppo-udp is a plugin for Homebridge to Control your Oppo 203/205 from your Home app. It should work with Oppo UDP-203 and UDP-205.

Features

  • HomeKit "TV Remote"
  • HomeKit automations
  • Turn TV on/off
  • Play, Pause, and Stop switches
  • Sound Output as sensors (Dolby Atmos and DTS)
  • HDR Video format as sensors (HDR, Dolby Vision, and SDR)
  • Input Selection
  • Not Responding Sensor

Optional Features

  • Volume control (as light bulb, buttons or through iOS remote app)
  • Media control
  • Chapter and Movie Progress control
  • Navegation Control (Stateless switches)
  • Input control
  • The rests of the Remote buttons (Stateless switches)

Preparation

  1. Enable IP control on your Oppo 203/205. Go to Setup>Network Setup> IP Control:On
  2. Set the Oppo to Network Standby mode.Go to Setup>Device Setup> Standby Mode:Network Standby
  3. Make sure to turn on the Oppo before setting up homebridge, this is necessary to put the Oppo on VERBOSE MODE 2 and get unsolicited updates from the device.

Installation

install using the following command in terminal:

npm i homebridge-oppo-udp

Configuration

Add the oppoPlugin platform in config.json in your home directory inside .homebridge.

Example configuration:

{
  "platforms": [
    {
            "name": "Oppo 203",
            "ip": "Youre IP Address", 
            "pollingInterval": 5000,
            "modelName": "UDP-203",
            "manufacture": "Oppo Digital Inc",
            "serialN": "B210U71647033894",
            "autoIP": false,
            "volume": false,
            "mediaButtons": false,
            "inputButtons":false,
            "movieControl": false,
            "NameOfTheButton": false,
            "newPlatformUUID":false,
            "chinoppo":false,
            "platform": "oppoPlugin"
}
]
}

Adding th Oppo player to the Home app

Since HomeKit expects only one Oppo per bridge they will be declared as external accessories and acts as a bridge.
This means that a device will not appear in your Home app until you add it!

To add the Oppo to HomeKit follow this steps:

  1. Open the Home app on your device.
  2. Tap the Home tab, then tap .
  3. Tap Add Accessory, and select I Don't Have a Code or Cannot Scan or More Options... whichever is available.
  4. Select the accessory you want to pair.
  5. Enter the Homebridge PIN, this can be found under the QR code in Homebridge UI or your Homebridge logs, alternatively you can select Use Camera and scan the QR code again.

For more info check the homebridge wiki Connecting Homebridge To HomeKit.

Configuration

Platform Configuration fields

  • platform [required] Should always be "oppoPlugin".

TV Configuration fields

  • name [required] Name of your Oppo.
  • ip [required] ip address of your TV.
  • pollingInterval [optional] The TV state background polling interval in seconds. Default: 10000
  • modelName [optional] Model name of your device
  • manufacture [optional] The manufcturer of your device
  • serialN [optional] Serial Number of your device
  • autoIP [optional] Set the IP address manually. Use this option if the device cannot be found automatically. Default: false
  • volume [optional] Enables volume control to the device as a lightbulg. Default: false
  • mediaButtons [optional] Allows control the playback state of your device. Default: false
  • inputButtons [optional] Adds input buttons. Default: false
  • NameOfTheButton [optional] Adds the button you want to add and can add as many as you want (refer to the button list bellow) Default: false

Button Name List is :

  • cursorUpB
  • cursorDownB
  • cursorLeftB
  • cursorRightB
  • cursorEnterB
  • menuB
  • backButtonB
  • clearB
  • topMenuB
  • optionB
  • homeMenuB
  • infoB
  • setupB
  • goToB
  • pageUpB
  • pageDownB
  • popUpMenuB
  • dimmerB
  • pureAudioB
  • redB
  • yellowB
  • blueB
  • audioB
  • greenB
  • subtitleB
  • angleB
  • zoomB
  • sapB
  • abReplayB
  • repeatB
  • pipB
  • resolutionB
  • threeDB
  • pictureB
  • hdrButtonB
  • subtitleHoldB
  • infoHoldB
  • resolutionHoldB
  • avSyncB
  • gaplessPlayB
  • inputB
  • ejectDiscB

Note: You can add buttons in the "Navagation Buttons" and "other Buttons" in Settings using Homebridge UI

  • newPlatformUUID [optional] Enable this if you do not see the accessory when you try to add it to the Home App after deleting it. It will also create a different accesssory every time you chage the Name of the device in Settings. If an old accessory already exists in the Home App you will have to remove it manually. Default: false
  • chinoppo [optional] Enable this in case the Oppo clone does not turn on with the On/Off button. It sends the Eject command instead. Default: false

Troubleshooting

If you have any issues with the plugin or Oppo services then you can run homebridge in debug mode, which will provide some additional information. This might be useful for debugging issues.

Homebridge debug mode:

homebridge -D

Deep debug log, add the following to your config.json:

"deepDebugLog": true

This will enable additional extra log which might be helpful to debug all kind of issues. Just be aware that this will produce a lot of log information so it is recommended to use a service like https://pastebin.com/ when providing the log for inspection.

Note: Controls won't update if the plugin does not receive a confirmation message from the device

Known Issues

The Oppo player tends to disconnect from Hemebridge frequently after a while for no apparent reason. So, to get a stable connection again you need to do the following:

  • Disable IP Controls and Network Standby
  • Power cycle the device
  • Enable IP Controls and Network Standby
  • Keep the device turned on
  • Reset Homebridge

Special thanks

To Fernando for his patience and support.

If you have any suggestions/improvements please let know.

Enjoy!!