Yoto Integration

Hi Everyone!

I wanted to let this group know I have started a Yoto player integration. The basics are functional now with more to come! Check it out and let me know via github issues if you something is wrong or feature requests. It will help me prioritize where to spend my time on it.

cdnninja/yoto_ha: Home Assistant Integration for Yoto (github.com)

3 Likes

This is brilliant! Thank you so much. It’s been on my to do list for a while as I desperately need a reminder to charge them in the morning.

Great work, adding it now and having a play. Got the yoto box this week.
Cannot figure out if there is a service to trigger playing a card from library which is not currently inserted?

Replacing an Alexa for my daughter, it gives her more control because it’s physical. But I miss the controls from phone for myself.

Many thanks!

Yes, the play media service works. Today I also added browse media. So latest release lets you browse the card library.

You legend! I’ve been waiting for a Yoto integration for ages - no more having to go into my kids rooms and manually stop them every night :slight_smile:

Is Yoto actually opening their API?

1 Like

They already have a document available for the API. It isn’t complete. They also have been emailing with me for the work I have done so far.

They seem to have intent on more widespread API usage for devs.

1 Like

Hey @cdnninja ! what a great work. Thank you so much for sharing this impressive integration.
I look into it and i don’t find the ability to configure alarm. Is the API let this possibility?
Maybe i don’t look well and sorry if it the case.

Currently only enable and disable alarms are setup for the integration. You create on the yoto app and it will show them after that in the integration for editing. If you need other features feel free to open items on github and describe what you need and I should be able to get it added. I was struggling how to present alarms for configuration in HA.

Love this integration, as it lets us turn the Yoto off without our phones.
How are people displaying the media library as it doesn’t show in the Media page like other sources.
I have the browse media button the Media Player more info card, but ideally I would like to have them on a dedicated page so that you can go to the page, pick and choose what you would like to play. This will help with other family members who don’t have the app on their phone.

Currently it is only within the media player entity. Reason being is the content only plays on the device directly. I have been meaning to add the ability to play yoto content on any MP3 supporting device - that would show it in the media section. I started here: feat: media exposed to ha by cdnninja · Pull Request #138 · cdnninja/yoto_ha haven’t had time to finish it.

That is understandable. For us, we don’t want to play the content elsewhere, just trying to find an easy way for others to start the content.

Is there a way to play Yoto Daily at all?

Within the native app on Yoto daily click “add to library” after that restart the integration and it will show in the library view.

Apologies if I’m being dense about this, but how do I get the cardid for the media player service? Is it just a variant of the name, or is there a code displayed somewhere I’m missing? Thanks for the great Integration!

I was able to pull the cardId’s using the API. But whenever I try to start a MYO card that I have tied to a playlist, it always starts on the second track of the playlist. Not the end of the world, but wondering if that’s “normal?” It does this whether I call the service with just cardId, or cardId-1-1-1 or cardid-0-0-0 (just in case it’s zero-indexed).

Could you open an issue on github? Can work through it in that. As for getting a card ID you can use the developer tools to display the media player entity while it is playing to find the ID as well as track info.

Can’t believe it took me this long to trip across this, opens up some automation possiblities!

With the browse media function, is a yoto player the only target available or is it possible to stream to abother media target such as a Chromecast? I’ve tried to and it says incompatible but I was wondering if I was doing something wrong or missing a step.

1 Like

I recently added ability to send the media to other devices. I am finding home assistant itself doesn’t have a great format compatibility system though. I can send to my google home screen but not sonos for example. Sonos should support aac yet it won’t let me. I dug in and it seems like the sonos integration doesn’t check the format correctly.