Amazon Alexa Skill with Remote (Away-From-Home) Control


#1

Hey, all. Wanted to let everybody know that I've made good progress getting my new Amazon Echo Dot to control my OctoPrint printer. It was a pain at first trying to understand how Amazon does things but I think I've got it now.

There are about 22 intents for anything from starting a print to checking on the status. Additionally, I've installed two TP-Link power switches so that I can power on/off either the printer itself or the proxy that was required for all this.

I wrote a server called octo-proxy which basically allows the printer to be proxied to the Internet in a safe manner. It runs on a headless Raspberry Pi Zero W single board computer. Inbound requests/commands from Amazon then are proxied to the printer and the responses returned back to be interpreted. It could be used with something other than Amazon to control it and I intend to create an external website concept later for this.

For an overview, it sort of looks like this (ASK = Skill, Lambda, FW = firewall, etc):

  ┌──────┐   ┌─────┐   ┌───┐   ┌────┐   ┌─────┐   ┌─────────┐
  │ Echo │ ⇄ │ ASK │ ⇄ │ ƛ │ ⇄ │ FW │ ⇄ │ o-p │ ⇄ │ printer │
  └──────┘   └─────┘   └───┘   └────┘   └─────┘   └─────────┘

It works quite well at the moment but I'll end up tweaking it a bit when I get more time. I gave a talk early this month and was able to remotely control the printer and stream the video as well.

More info


Google home intergration
#2

So... you can talk to your O'Printer ?

That's very cool :smile:


#3

Yeah... it's like the movie Iron Man, hence the J.A.R.V.I.S. theme. I did a talk at the San Diego JS meetup in front of about 120 people and they thought it was pretty awesome.


#4

Hmm. I have a JARVIS apk somewhere.

Apks should be able to run on google chrome, which should run on linux. I haven't tried running X on my Octopi server yet tho

Begin testing phase...


#5

Adding the desktop with X11 is a challenge... noting that there's an active thread here in which someone has added some promising information and it seems to work with Raspbian Stretch as well. But it's do-able.

I'd recommend making a copy of your microSD before beginning. You can always rollback and make another attempt.


#6

I have my Zeta specifically for testing, with a backup

Just need to find Jarvis and transfer him over...


#7

Okay. It was a little more complicated than just "transfer him over", and, it doesn't seem to work :frowning:

I decided to try it on Raspbian first, thinking that it would run better than on the X in Octopi, but, no joy there. It looks like it's running, but, does absolutely nothing. The screen comes up, but it won't talk or light up when I click on it. It should at least say something when it starts

Octopi 15 is out today, maybe I'll give that a shot


#8

Just to clarify: the first Release Candidate of OctoPi 0.15 is out today, not the final release.


#9

Yes. Thank you. I see that it's just an RC, but, I've got an extra Pi and a plus Pi (neither currently hooked up to a printer, but I could do that easy enough), so, there's nothing that could be really hurt


#10

Here's a video link if you're interested how it works.

M4V link (500MB in size)