Feature Request: API Enhancements

I’ve done a bit of integration with your API and it works well. I am primarily using it to enable “hard button” capabilities. For hard buttons I am using Insteon 8 Button Mini Remotes. These triggers programs in my ISY, which then make calls to the Simple Control API. Right now I am just using the /activities endpoint for activity switching (e.g. button A on remote 1 runs DirecTV activity in Family Room). I have also experimented with the /devices endpoint for controlling AVR volume.

The use I see for hard buttons is the common activities like: up / down / mute volume, channel changing, play / pause, and 5 way navigation pad. Anything more complex and I go to the app. Alexa integration works pretty good for some of these simple tasks, but nothing is faster for pausing or muting than picking up a hard button remote and using muscle memory to hit the appropriate button.

To that end, the following features would be nice to see added to the APIs:

  • /rooms endpoint to get info about rooms including activities in the room and the currently selected activity and then be able to control the appropriate activity in the appropriate room

I’d like to be able to control the current activity by sending it generic commands like play / pause / mute and have Simple Control translate these to the appropriate device commands. At this point it becomes an implementation detail, but I could see this set of commands either going against a room and having Simple Control figure out the appropriate activity based on what is active in the room, or by knowing the current activity in a room the commands could be sent to the activity. Currently I am able to say something like “Alexa, tell Simple Control to pause” and Simple Control does its magic and pauses the current activity in the current room, so something like this must be exposed already via the Alexa integration.

On a side note, the Insteon / ISY / Simple Control integration works well for hard buttons, but the physical layout of the buttons is not that great and there aren’t quite enough buttons so I also continue to look at other options. I am considering working with an electronic design company to design something myself and perhaps turn it into a product: a small ergonomic WiFi remote with a limited set of generic buttons (as described above) whose button presses would result in calls to user-defined HTTP endpoints. I’ve done some searching and haven’t really found anything like this.

Right, so that sounds like a super difficult road. I’ve seen people do these things (non-productized) and it’s not scalable. These paths are either expensive to productize or expensive to build on a DIY basis or totally locked into a very elaborate Rube Goldberg patchwork.

So I would just note that while at some point there probably will be API enhancements, the closest and simplest path short term may be what we put into 6.0 (planned for this Fall). Apple announced PS4 and Xbox One controller support for iOS 13. The problem with the old Game Controller support was there simply were not enough buttons/controls to replicate a true hard button remote.

The PS4 and Xbox controllers on the other hand are replete with numerous input options, are top notch hardware/ergonomic solutions, already widely distributed, and inexpensive. I’ve been using V6 with it lately and it might just fit the bill. We’ll see. The trick is controlling activities. I haven’t decided yet how to go about that. I could make it necessary to see the iOS screen. So you use the controller wherein right thumbstick is the Activity stick. Tap to bring up an Activity list, down, select, activity changes. Or, I could put in voice feedback as it would otherwise be the only reason to need the iOS screen. In that scenario, you’d tap, it would say “Select Activity”, down, it says “TiVo”, you hit Select, activity changes.

Anyway, point is solutions like that where we’re integrating it directly means the play, pause, volume, etc, all work for every Activity and highly custom solutions with bad ergonomics or hardware aren’t needed. Though, it’s too early to say what is in V6 so far will truly be a complete solution that extends to activity switching, from every other perspective it is a huge step forward as a simple hard button solution.

1 Like

I use a Simple Control / ISY+Node Server / Logitech Harmony setup to control my system. I wrote a bunch of ISY programs to sync my Simple Control activities with corresponding Harmony activities. For instance, I have a “Watch Plex” activity in Simple Control and one in Harmony. I can start the activity from either remote and the activity state will sync with the other remote. I get all the hard buttons and ergonomics I need from the Harmony, and all the in depth control, feedback, and media guides from Simple Control. I’m very happy with the results. Since I am running Harmony node server for ISY, I don’t have to rely on IFTTT or cloud APIs. I’ve been running the setup for about 5 months, and it has been rock solid, though it took a lot ISY program debugging to get there. I am excited to see what V6 brings with a more direct hard button solution.

@Will_Price,

Definitely looking forward to 6.0. It sounds like a promising alternative. From your description it sounds like you would intend that the basic commands (pause, play, mute, volume, channel, etc.) would be hard button only with no need to look at the UI. Do I understand that right? If so, definitely on the right track.

I have spoken with some friends with experience about the piece of hardware I described. Similar feedback you gave - I need to be prepared to drop $50k - $100k to get through design and prototype for something that is decent and can be manufactured. Obviously I’d have to look at this as a business and not a hobby effort. No specific desire to do this, but there may be a market.

I think the only issue with the game controller is WAF. Women aren’t likely going to find that very appealing. I don’t do this for a living, but I try to make my system usable by my wife and guests to the extent that they can “just use it” without much learning curve. For example, I have a guest room with a TV in the room and that’s it. All of the sources are in a central media closet and the guest room TV is connected via a HDMI matrix switch. I wouldn’t want to explain Simple Control or a game controller to a guest. For now I just limit them to watching DirevcTV and they have a DirecTV remote. But with a more integrated remote they could watch Roku, AppleTV, BRD, PC, etc. I think any consumer home automation product has to consider things like this to make adoption as wide as possible.

I am not a Control4 fan since they are so into vendor lock-in and custom programming, but they do have a nice remote. Though I think they went too far. Get rid of the LCD screen. Not needed. That’s what the app should be for and this is where Simple Control wins big. I’d also kill some of the buttons, but in general it is pretty streamlined, in the right shape, passable ergonomics, and a familiar form factor to non-technical people / people unfamiliar with the system.

In any case, it sounds like you guys are thinking about it, and I look forward to the coming development. And, yeah, it would still be great to see API enhancements for more technical folks like me.

Thank you.