Google home and OH3

Hi is there a normal tutorial on how to set up devices in OH3 and exposure them to Google home by types (like a lamp, switch, media player, TV, vacuum, blinds, AC). For example, i have broadlink remote and inside broadlink app i create devices like TV, AC, MediaPlayer, robot vacuum and can control them by NORMAL voice comands:

  • set AC to heat/cold mode - for ac
  • increase volume by custom number, next(chenge video to next clip), stop, pause, start, - for mediaplayer/TV
  • start cleaning, stop cleaning, return robot to base, - for robot vacuum

Now in a normal way, I only can control the switch and lamps type device. Is there a feature that I create a virtual device for example TV, but add my custom IR codes (from broadlink or other universal remotes) to it in OH3 and then exposing it to google? There are different types of device in @Google assistant meta" but only thermostat, lamps and switch work

The new version supports features like TV equipment:

And a configuration example is given in the docs:

1 Like

thx for the help, but I don’t understand this documentation i only can expose the switch and light types for now. But the OH3 has a new interface for noobs, maybe there a tutorial (with pictures) on how to create CUSTOM TV and expose all (mute, volume control, input source, *video player control) parameters from TV on google?

*From Broadlink app I can change the next/previus/play/stop playing video, but I didn’t see in the descriprtion how to control the video player in OH3+Google? OH3 has this feature exposing to google functionality?

PS In custom TV i want send my IR codes from Universal device (Broadlink RM 3 Pro)

There is probably not the simple step-by-step tutorial that you are thinking of. The power of OH is that it allows you to combine so many different types of services and devices into a single framework. The other side of this, however, is that it is very unlikely that anyone else has a setup exactly like yours. This means that the templates, tutorials, and examples on this site are fairly general. Most software comes with a similar trade-off. For software that is easy to setup and configure many choices and assumptions have to be made for you. To get flexibility, power, and customization from software, there is a time investment up front from the user to get to a point of understanding where those advanced features can be used.

While what you have described can be done in OH3, it is not going to be a single simple configuration. To understand the google assistant setup docs you will have to make sure you understand group items.
If you wish to use the new UI item configuration you will have to understand how the text-based item definitions in the docs can be translated to the UI. You will need to understand how to integrate your remote with OH. You will probably need rules for converting item states to that contain channel names to numbers or ir codes.

That probably looks overwhelming, but this is were the users on this forum shine. When you’re in the process of going through all of those steps you will run into problems and questions. We’ve all been there, we’ve all run into similar problems with our own projects. When you bring those specific questions here, you will get tons of help both getting working answers and understanding why those answers work.

Is I understand what you say, but is very bad for OH3 and new users (if we want the community to grow), because for now, I spend 3++ month just to connect my Xiaomi to Zigbee cc2531 stick, and expose one Wall switch to google…I search piece by piece on this site because documentation very bad, 90% of Information from users on the forum outdated (for the 2.5 version). For now, I still can’t connect my device to google (i try to create a TV but it does not appear in google, I think maybe new device support not work?)…

I like OH3 and I hope this post read someone from OH3 technical writers team, if we want the community to grow, in 2021 we need video tutorials (in English)!!! After reading the tone of information on this site i see users interested in this topics:

  • Xiaomi devices(with gateways, tokens, and developer key)
  • broadlink
  • tuya
  • sonoff (already have good binding with simple understanding)
  • how to work with google assistant (connecting and use)
  • zigbee2mqtt(how to set up and control via topics)
  • c2531 stick
  • how to use a blocky script

Let’s start from the beginning. What type of TV you want to control? Exact name and type pls. Then I try to help if possible, depending on your device and your skills. How do you configure your devices? Through UI or textual configuration?

The people who use this forum all want OH to grow and be as welcoming to new users as can be. At the core, however, this community is a community of volunteers and enthusiasts. As such there are certain expectations that we can meet and expectations that we cannot. We will never meet the expectation of commercial customer support. We will, on the other hand, go to great lengths to collaborate, guide, check, and correct any piece of the OH ecosystem with anyone who is putting in the same effort. We all agree with the philosophy that the community grows best when we help new members learn, but the limitations are that the new member has to be willing to learn and that we simply cannot anticipate all questions and configurations with specific tutorials.

This is what I meant above by the situation where the community will shine. If any users find him- or herself working that hard on a single, specific issue, then that issue should be raised here. A question such as “I’m trying to [specific goal] on my [system details] and [source A] says to [X] but [source B] says to [Y] and neither of those work. What am I missing?” will rapidly get several answers explaining in detail the difference between X and Y, which is preferable in this specific case, and in what cases use of the other would be warranted.

For many users, however, the user experience they are looking for is “I want to [out of context goal], please provide a complete solution”. This can be done (sometimes) with commercial products and to a certain extent that is where this expectation comes from as with:

Broadlink makes this look like an easy task by collecting a lot of information about your system, restricting various options and selections, working with the other commercial vendors for close integration of the systems, etc. OH and its volunteer developers, volunteer doc writers, and volunteer community helpers just can’t (or won’t) do that. OH gives you all the pieces you need to do that but stops short of doing it for you.

Think a little bit about how this comes across to the people volunteering their time to create OH. This sounds a lot like “Thank you for making this incredible thing for me for free, now why can’t you spend more of your time making it easier for me to spend less of my precious time using it.” I’m certainly not saying that was your intent, but just cautioning you to be aware of how such statements can easily be read.

The only ways to address the documentation problems are (best) to join that group of volunteer doc writers and fix those areas where you think the documentation is not sufficient, or (acceptable) start a discussion here on the forum or on the github doc repository about the parts of the documentation you didn’t understand. It is the nature of the OH documentation that it is written by people who understand it very well, sometimes this means that they don’t see it from the viewpoint of newer users and that sort of insight can be helpful. Just saying that the documentation is bad isn’t going to help anyone because that doesn’t tell us what needs to fixed.

OH3 started to see heavy usage at the end of 2020. On the search page you can restrict the date of topics to be searched so if you want to increase the proportion of OH3 specific results you get then just limit the date to anything after Dec 2020.

However, in fact, 90% of the information about OH2.5 is still valid for OH3. OH2 → OH3 is a major upgrade with a lot of changes, however, much of the underlying structure has remained intact. There are very few suggestions for OH2.5 that do not also work for OH3. With OH3 there are often other ways of accomplishing the same task by using the new more user friendly MainUI, but that does not make the previous solutions obsolete. The list of 2.5 solutions that don’t work in 3 is pretty short:

  • OH2 still allowed usage of legacy version 1 bindings. OH3 does not, so solutions that include a v1 binding will not work in OH3
  • A few commands such as executeCommandLine have changed structure, these are documented in the upgrade information and in numerous posts on the form
  • The version 3 of a few bindings have different configurations
  • User roles and authentication have been added in OH3 in a limited way but this can affect some use of the api.

I’m probably missing one or two small ones.

This comes down to those expectations I mentioned at the top of this post. You are absolutely right we as a community want to be as welcoming and encouraging to new users as we can be. What’s going on here, however, is the expectation of something that should be within reach of a new user. The integration of a complex device such as a television through at least one intermediary service (google) and likely others as well (for example a universal remote) is actually a fairly complex task and really is beyond the scope of what a new user should be expected to be able to do. If you are looking for a rating system of some sort, I, personally, would consider this an intermediate level task at least with quite a bit of required background understanding.

For such a general question I gave you a general list of the topics and ideas that you’ll need to make that jump from new user to intermediate level user and I and others will be here all along the way to help you do that. kovacsi2899 has graciously offered more detailed help, but note what the first requirement for that help is…you providing as many specific details as you can because the answer is going to depend on those details.