Now we're talking! Random thoughts after a successful setup!

More
2 years 5 months ago #1017 by graydon@gdsamps.com
Replied by graydon@gdsamps.com on topic Now we're talking! Random thoughts after a successful setup!
Nilla, now I get it.  I have a similar situation with my MIDI foot controller for my guitar rig.  In that case, the manufacturer allows me to decide if I want the switch to toggle on and off, or if it is to be a momentary switch.  For a toggle function, you can have short and long press events which would trigger upon release.  If you choose momentary, then it could be set to continue to send the command at a predefined frequency as long as it is held down.

Maybe Dave could implement that sort of choice for the hard buttons.

For the volume especially you could implement a pseudo-log function whereby the longer you hold it down, the more frequent the sends happen, enabling the volume to jump pretty quickly if you hold long enough.
The following user(s) said Thank You: Nillaz

Please Log in to join the conversation.

More
2 years 5 months ago #1019 by RoyN
Hi Nillaz! Good to hear you are making good progress!!

I noticed you are using Android players as your main source of content (or one of them), I use an android tv box so the same driver, and been having a very noticeable lag in navigating using ADB (as I explained here:  allonis.com/forum/androidtv-driver/118-l...n-android-tv-box#841 )

I was just wondering what your experience is?  Do you have a very noticeable lag?

Please Log in to join the conversation.

More
2 years 5 months ago #1022 by Nillaz

Thanks for all the feedback it greatly helps in development. Here are some comments from this thread.

Launching Apps on Android

In the server's data folder there is a file called tvapps.json. This is the file that the Android driver uses for identifying apps and finding their launch codes.

There is an entry in there for an app called SmartTubeNext. Is this your SmartTube? CuriosityStream is in there with the name Curiosity Stream.

You can try to run these apps using the driver's launch command

SmartTube = AV|<<ID>>~Launch~am start -n com.teamsmart.videomanager.tv/com.liskovsoft.smartyoutubetv2.tv.ui.main.SplashActivity

CuriosityStream = AV|<<ID>>~Launch~am start -n com.curiosity.curiositystream.androidtv/com.curiosity.activities.MainActivity

This holds true for any Android apps you want to run. If you can find a published launch command use it.


"Also, I really REALLY dislike that there is no long press functionality to be had with the SmartRemote"

Huh? Hold down any hard button on the remote for more than 1 second and it will trigger a long-press. Hold it down for longer than 1.5 seconds and it turns on num-lock. Are those not working for you?

Samsung: "The only command I can't get working correctly is volume"

Which Samsung driver are you having volume issues with?
 
"The Denon driver works fine for basic controls like on/off, changing source, and volume up/down/mute. Anything beyond that..."

What additional functionality are you looking for? You are correct that these drivers cater to the basic needs but perhaps there are other commands that we should consider to be basic too? They're all there in the protocol docs.

"I don't want to press volume down 50 frigging times...."

We can only execute a command on button release because I have to listen for a long-press and then a really-long-press to turn on num lock. This means I can only act on release.

The volume up and down commands do support an optional "steps" parameter that will control how make ups or downs are done on a single press.
AV|<ID>~Volume~up~5   will do 5 on each press.

I'm not opposed to rethinking button press logic I just have to make sure it is universal and not just tailored to a particular use.
 
Thanks for chiming in Dave. I'm going to try to reply as best as I can here but I don't see an easy way to do multiquotes in this forum software in order to reply to parts of your post in individual sections so apologies in advance. I'll start at the top and work my way down.

ANDROID TV LAUNCH COMMANDS

SmartTubeNext is indeed the app I'm referring to. I tried using the LAUNCH command you posted (after modifying it to add my AV device number of course) and it's a no go for either of those apps. I notice that the commands you posted have modifiers (i.e. "am start -n") and are significantly longer strings than what I am using for any of the other apps I am using LAUNCH commands for.

Basically I went into the app info on my Shield and noted the system name for each app. For example, PLEX was listed as "com.plexapp.android" so I fashioned a command "AV|3~Launch~com.plexapp.android" where 3 is the device ID number of my ShieldTV. I used the same structure for the AppleTV+ app, PlutoTV, Spotify, etc. and it works a treat for all of them. On the ShieldTV my Curiosity Stream app is identified as "com.curiosity.curiositystream.android.androidtv". SmartTubeNext is identified as "com.teamsmart.videomanager.tv".

Perhaps this isn't a good way to fashion these commands? I'm not a programmer and don't really understand the modifiers (variables?) and what they do.

LONG PRESS COMMANDS

My remote can absolutely issue independent commands based on a short press/long press. What it can't do (or at least I can't figure out how to do) is have it translate that to a long press of the same button on the device I am trying to control. Basically on the ShieldTV Dashboard with the Shield remote (or Harmony, etc.) if I short press the OK button while hovering on an app it will launch it, as one would expect. If I long press OK with the Shield remote while hovering over that same app it opens a submenu. I could be entirely wrong but I don't believe these actions are based on separate commands but rather use the duration of time the button was held for context.

When I think about this further this is really independent of the volume control thing where I want it to continue repeating the volume command for as long as I hold the button.

SAMSUNG TV VOLUME

I doubt you really have to worry about this as it's an odd situation, but for further context I'm using the Samsung TV's driver with a 2023 Samsung S95C OLED. With this driver I have the ability to use discrete commands to switch inputs, get into the tv menus, etc. It does not respond to volume commands over IP. I really don't want to use the Tizen driver and have the driver try to guess the correct input. The Tizen driver has to assume a certain number of button presses to switch from one input to another and if the TV's input menu doesn't have the exact layout the driver expects (as is the case with my set) it will select the incorrect input every time.

Really, don't sweat this. I doubt many (if any) other people are ever going to encounter this and I don't care about it at all.

DENON COMMANDS

It would be nice to able to issue remote commands to the receiver in order to access/navigate the system settings in order to make adjustments. As far as I can tell there is no way to do this from the driver itself. It isn't unusual for me to go in there to adjust Audyssey parameters, Dynamic EQ, center channel gain, sub level, etc.

Most if not all of these things do have discrete IR codes available and if it comes down to it I'll do it that way with an IP2IR but it would be great if basic navigation could be enabled directly in the driver. Much less fuss and much more streamlined overall.

I totally understand that you have to think about the grand scheme of things and not rework things for one-off use cases. I very much appreciate you being willing to consider how these things might be accomplished though. If I had to choose levels of importance things like Denon IP remote codes aren't that important. I can get around this. The button press things are much more important and I suspect there are others that feel the same. So far overall I like this system but I really want to LOVE this system.

Thanks again. I really appreciate the dialog!

Please Log in to join the conversation.

More
2 years 5 months ago #1023 by Nillaz

Hi Nillaz! Good to hear you are making good progress!!

I noticed you are using Android players as your main source of content (or one of them), I use an android tv box so the same driver, and been having a very noticeable lag in navigating using ADB (as I explained here:  allonis.com/forum/androidtv-driver/118-l...n-android-tv-box#841 )

I was just wondering what your experience is?  Do you have a very noticeable lag?
 
Thanks bud things are coming together nicely!

Using ADB I don't have any perceptible lag on the Shield. Certainly not like what I experience with the Apple TV over IP. Overall I'm satisfied with the responsiveness on my Shield.

Please Log in to join the conversation.

More
2 years 5 months ago #1024 by Sat32

Macro|// Source activation macro for Shield TV!
// SetActiveSource creates the following server variables!
// activesource_sourceid_<clientname>, activesource_source_<clientname>, activesource_sourcename_<clientname>!
// activesource_image_<clientname>, activesource_macro_<clientname>, activesource_type_<clientname>!
// activeroom_<clientname>!
//!
SetActiveSource|Shield TV!
//!
SetVariable|{{activeroom_{{clientname}}}}_source~{{activesource_sourcename_{{clientname}}}}!
// Tell the driver what device is active!
AV|{{{{activeroom_{{clientname}}}}_shieldtv_id}}~SelectDevice!
//!
// This next section is for systems that utilize audio and video distribution via AV switchers!
// If your system does not use this technology then you can ignore all of the following section!
// The Audio and/or Video switcher inputs this source is on!
// Uncomment and set if needed!
// SetVariable|{{activeroom_{{clientname}}}}_audio_switcher_input~0!
// SetVariable|{{activeroom_{{clientname}}}}_sonos_switcher_input~0!
// SetVariable|{{activeroom_{{clientname}}}}_video_switcher_input~0!
//!
// Now do the switching if necessary!
//!
// If|isGT##{{{{activeroom_{{clientname}}}}_video_switcher_input}}##0##AV|{{{{activeroom_{{clientname}}}}_video_switcher_id}}~Source~{{{{activeroom_{{clientname}}}}_video_switcher_input}}!
// If|isGT##{{{{activeroom_{{clientname}}}}_audio_switcher_input}}##0##AV|{{{{activeroom_{{clientname}}}}_audio_switcher_id}}~Source~{{{{activeroom_{{clientname}}}}_audio_switcher_input}}!
// If|IsGT##{{{{activeroom_{{clientname}}}}_sonos_switcher_input}}##0##Sonos|{{{{activeroom_{{clientname}}}}_sonos_switcher_id}}~LineIn~{{{{activeroom_{{clientname}}}}_sonos_switcher_input}}!
//!
// Additional commands!
// Set Denon to Media Player!
AV|2~Source~MPlay!
// Pause to ensure TV accepts input switch!
Pause|2!
// Set TV to HDMI2!
AV|1~Source~HDMI2!
// Set HDFury matrix to InputSel3!
Control|2~SendIR~HD Fury-4K Diva~INPUTSEL3!
// Ensure Xbox is turned off!
Control|4~SendIR~Microsoft-Xbox Series X~POWER OFF!
// Ensure Bluray player is off!
Control|4~SendIR~Panasonic-DMP-UB9000~POWER OFF!
// Ensure Apple TV is off!
AV|5~Power~Off!
//!
// Finally everything is ready. Send the client to the appropriate page!
LoadScene|shieldtv!
// fini

So // is a comment tag, //! is a comment and //some text! is a comment and can span multible lines like
// text
text
text!

Thanks

Please Log in to join the conversation.

More
2 years 5 months ago - 2 years 5 months ago #1025 by David Li
Hi Nillaz
Glad to hear you are really getting your custom system configured!

re: Long Press...I suspect the ability to send a LONG press to a device is based on that devices protocol. Does it accept a long press from an IP connected controller? Can you provide a real use case? re: you might be trying to get into a submenu...but what you REALLY are trying to do is invoke an action IN that submenu. Maybe that is discretely possible by a new command....that could be assigned to the myDesigner defined long press command.

Also, I would think of the Smartremote as the "daily use" remote...not scoped to program / configure any one piece of hardware (like to do a video or audio calibration through custom command invoked from deep submenus).  Not that might not be possible...but I would get the daily use stuff working (WAF) first.
Last edit: 2 years 5 months ago by David Li.
The following user(s) said Thank You: Nillaz

Please Log in to join the conversation.

Time to create page: 0.205 seconds