Welcome to Synthiam!

Program robots using technologies created from industry experts. ARC is our free-to-use robot programming software that makes features like vision recognition, navigation and artificial intelligence easy.

Get Started
Asked — Edited

Controlling A Robot With Android Wear Smartwatch

As discussed in this thread: http://www.ez-robot.com/Community/Forum/Thread?threadId=9107 I have been working on controlling my robots from my new Android Wear watch.

Eventually, I want to make a plugin and an Android Wear app to make this easier, but with the combination of 3 (unfortunately, all paid) android apps, I now have a controller. Note: Unlike the Apple watch app that DJ wrote that uses ARC Mobile, this one requires a PC running ARC and the TCP Client connection activated.


User-inserted image


The app has 5 configurable buttons, which I have set up for basic movement panel, but each button actually supports tap, double tap, press and hold, and swipe so I could add 15 additional functions.

It uses the following three apps:

Tasker
https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm

Send/Expect
https://play.google.com/store/apps/details?id=com.asif.plugin.sendexpect

and
AutoWear
https://play.google.com/store/apps/details?id=com.joaomgcd.autowear

There are some issues with AutoWear on Android Wear 6.0.1 (the latest version) but none that impact this function, it just took some work to set up because I could not get through the setup wizard, and some of the features (like gesture support) don't work, but the multi-button function I used work fine.

If anyone else has an Android Wear watch and wants me to put together a tutorial, post here and if there is enough interest I'll write up instructions and post my Tasker files.

Alan

#1  
Created a little video of this in action.

It works quite well, and I can create different watch faces for each robot, with different script actions for the buttons. The only issue is that the Telnet app "Send Expect" hard codes the IP or host name and I need a separate hard coded task for each function, so I can only use it with one computer unless I want to duplicate the tasks and watch face for each computer separately. Making host and port be Tasker (global) variables is on the developers todo list, but I don't know how long it will take, so I may learn enough coding to build my own controller by then.

The other mild irritation is that Autowear has the ability to create named apps (using pre-defined names) for any Tasker app, and 3 of them are even well named for Robot controls, Jarvis, Marvin, and Hal. You are supposed to be able to launch them by voice by, for instance, saying "OK Google, Start Jarvis" but google broke the functionality in the latest Android Wear release. I can still select the apps from the watches app drawer, so it isn't too much of a problem.

Anyway, here is the video. I'll post more as I try out more functions.




Click To Watch Video
PRO
USA
#10  
Alan,

nice work, you really like plug & play, 3 different apps, plus all the glitches ...

soon you will start thinking in a plugin.

sorry my ignorance/laziness, does your watch have speakers & microphone like apple watch ?
#11  
It has a microphone, and can connect to Bluetooth headphones or speakers to listen to audio from the phone. It vibrates, but does not have a speaker. It can direct the phone it is paired with to play audio though.

Alan
#13  
@Pinocchio... Why does Alan want to see your adventure bot? You posting in the wrong thread again?
#14  
Hey Alan, this all sounds very interesting...I am not really sure if I would want to buy some Android wear in the near future, I just bought a Fitness Tracker to have another option to interact with my robot.
But if I had known all these options, I would have gone for the wear!

Anything that will let us combine services or talk to different devices is well apreciated within the community I would guess...because thats where the fun starts right?

Keep us updated, cool stuff!:D
PRO
Belgium
#15  
rr

alan has same wrong config like me from adventure bot,so i figur it out.
we where looking the config from jeremie,i found that and place the link here,
cause we where talking about the watsh and i wrote below a PS
i found the config from jeremie,that text is gone,i dont see it.
so somebody has removed.
#16  
Thanks Patrick, I saw your post. (I wouldn't say we have it configured wrong, as we followed the build instructions and/or tutorial, just that there is a different version in several of hte pictures and videos that looks like it solves the low clearance problem we have seen).

RR, it is OK. Patrick and I were discussing Adventurebot build configuration in another thread. If we had private messaging, we wouldn't need to hijack threads to find each other....

Alan
PRO
Belgium
#17  
alan

i tested this config adventure bot,and he tips very little forwart.
United Kingdom
#18  
I appreciate this is an old post, but I don't see where anyone asked for your tasker scripts, Alan, and a quick search doesn't give any results.

If you did post them could you reply with a link?

Thanks.

As an aside. You could also use the "autovoice" tasker plugin to execute tasks/profiles with an "ok Google" command.
You could use this on your Android wear watch or your phone.

Cheers
Paul.
#19  
@Dnwx, no one did ask for the details, so I didn't post anything yet.

I'll write something up in the next couple of days and post the scripts.

I have a license to autovoice, and didn't even think about the possible integration. I guess mostly because ARC already has voice recognition, and I wasn't thinking about being far enough from the computer to need an alternative, but I should give that some thought. I actually don't currently have autovoice installed because Google added the one function I was using it for to Keep "Add xxxx to my shopping list" and it is more reliable. AutoInput (that I was launching with AutoVoice) required my phone to be unlocked to work, and if I was going to unlock it, then there was no point in saying the command. Does Autovoice work with Android Wear now? It didn't before, and the Keep add to list feature also doesn't work with Wear. Frustrating.... Something that should be a simple task that the Apple watch can do, and my Android device can't......

Thanks for your interest.

Alan
United Kingdom
#20  
Hi, Alan.

I do believe autovoice now works with wear. I use autovoice with tasker (not on wear) for home automation.

For some time now it has been possible to use the ok Google command even if you phone is locked and docked.

I think autovoice would work well with ARC because you could use your phone to launch function and commands if you don't have a good enough microphone or if your PCs voice recognition doesn't work for you. Google's voice recognition is pretty awesome if you speak at a constant speed and level with good pronunciation.

Thanks in advance for yourupcoming script.

Paul.
#21  

Quote:

For some time now it has been possible to use the ok Google command even if you phone is locked and docked.


Yeah, it wasn't the OK Google, or even AutoVoice that was an issue, it was AutoInput that I was trying to have control an app that wouldn't work with the phone locked. Some phones you can unlock the screen (not the phone) by using a Tasker Popup command, but the Galaxy S6 Edge that I have doesn't support that.

I'll have to try Autovoice with Wear and see if it is working now. This does open up some interesting possibilities.

I'll probably post the Tasker profiles, tasks, and instructions tomorrow. I need to get to bed soon since I leave early for work, but I already wrote about half of it up....

Won't be a tutorial that everyone can follow, but if you are familiar with Tasker and any of the AutoApps, it should be usable.

Alan
United Kingdom
#22  
Ah, my mistake.

[QuoteYeah, it wasn't the OK Google, or even AutoVoice that was an issue, it was AutoInput that I was trying to have control an app that wouldn't work with the phone locked. Some phones you can unlock the screen (not the phone) by using a Tasker Popup command, but the Galaxy S6 Edge that I have doesn't support that.[/quote]

I did check, and wear does indeed now support autovoice.

Time for bed here too.
Thanks again

Paul.
#23  
The attached ZIP file contains the Tasker profile and task XML files for import, and a word document with basic instructions for use.

This is not a beginner's tutorial and assumes you are familiar with Tasker and AutoWear. It does not require familiarity with the Send/Expect plugin, but does require familiarity with editing task properties for Tasker plugins.

Again, if there is interest from anyone who is new to AndroidWear, post here and I'll take the extra time to create a step-by-step tutorial, but so far only Paul has expressed serious interest and he already has enough background in the foundation apps that these instructions should be sufficient (Paul, that doesn't mean you can't ask me questions if you get stuck, just that I am not taking the time in advance to create a full tutorial).

Alan
configuringAndroidWearrobotcontrol.zip
United Kingdom
#24  
Evening, Alan.

This is wonderful. Thanks for taking the time to post.

As an aside, If anyone is put off in part due to paying for apps that you may only use once, if at, then Tasker is free to try, 7 days I think, and if you download the Google rewards app you'll soon accumulate enough credit to pay for the apps.

Thanks again, Alan.
#25  

Quote:

if you download the Google rewards app you'll soon accumulate enough credit to pay for the apps


Good point. I bought Tasker years ago because it is so valuable in its ability to extend Android and automate things I used to do manually, but I bought both of the add-ons with Google Rewards credits.

Alan
United Kingdom
#26  
I really only buy things now with the Google rewards. It can be quite easy to manipulate.
I figured out the (semi) local stores that always send a survey if you visit and make a point to walk past them even if I don't call in. Guarantee a survey 24/48 hours later :-)
#27  
If you add any interesting capabilities to this idea please share. The one I plan on doing is having multiple faces available for different robot functions (launching each new face with a swipe on the currently open face, although our discussion of integrating AutoVoice into the mix has me thinking of some new ideas too.

Alan
United Kingdom
#28  
I will do.
I was thinking also of autovoice integration.

I'll let you know if I get there.

Paul.
#29  
I haven't modified the code yet, but I have been playing with the ARC HTTP Server (custom) control and realized that I can send script commands using HTTP Get and don't need the Send/Expect telnet client.

Format is:

Code:


get http://host:port/script.cmd?code=script statement



(note: this is not documented, so could potentially change with ARC updates. I discovered it by capturing packets when using the HTTP Server (custom) web page and watching what happened when I hit the buttons)

Alan