Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Tue 01 Sep 2015, 12:16
All times are UTC - 4
 Forum index » Advanced Topics » Puppy Projects
Puppy remote control challenge
Moderators: Flash, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [9 Posts]  
Author Message
greengeek

Joined: 20 Jul 2010
Posts: 3218
Location: New Zealand

PostPosted: Sat 28 Mar 2015, 14:54    Post subject:  Puppy remote control challenge
Subject description: Want to use internet for remote control
 

I would like to find various methods for using my Puppy pc at home to connect across the internet to a Puppy pc in another part of town, and have that remote Puppy activate an electrical device such as a solenoid for opening a door or similar.

The project will have several components to it, so I am keen to hear from anyone who has achieved this, or who can suggest methods applicable to each individual function.

Any kind of creative solution will be acceptable to me as long as it succeeds in getting the solenoid to activate. (I have even thought about the possibility of making this work "backwards" by getting the remote pc to "look back" at an IP camera attached to the master pc, and when the IP camera shows a particular colour or predetermined pattern the remote pc releases the solenoid. This would use the internet server internal to the IP camera, rather than requiring the master pc to handle it)

I imagine the following areas need to be covered:

1) Select a "master" puppy that has the requirements to access the internet as the control "server". My preference will be for Slacko 5.6

2) Set up reasonable security controls (without going over the top - the NSA wont be interested in my door release mechanism, but I need enough security that the door should not release without my say so)

3) Set up the "slave" puppy so that it is ready to receive and act upon a remote command as soon as it is booted. I would like the ability to activate the solenoid either with or without further interaction from a remote user. (There may be times where I want the remote user to confirm that it is ok for the solenoid to release and other times when I want fully automatic response)

4) Build an interface unit to allow the remote pc to drive the solenoid (which will be a low voltage DC circuit - not mains AC)

Any thoughts?

Questions to ponder:

- Will I need static IP at the remote end? Unlikely to be possible without excessive cost.
- Will I need to assign a domain name to the remote connection? (ie use dns to find it?)
- What will be the best interface between the remote pc and solenoid? Probably serial port, but maybe usb somehow?
- Could I put an IP camera in the remote location and drive it from the master pc without requiring a remote puppy at all? Do some IP cameras have a "relay out" type of circuit that I could control remotely?
- Potential use of RDP? SSH?

Crazy ideas that pop into my head:
- Set the remote pc as an ftp server/host and have it constantly monitor its storage for a particular file which I could upload to it when I want to activate the solenoid.
- Set the remote pc to collect email and scan for a specific email that I send it.
- Set the master pc to serve up a website and have the remote pc monitor that website for a specific command or content.

useful links:
http://www.linuxloop.com/2009/09/28/remotely-accessing-your-linux-computer-part-1/
http://superuser.com/questions/210899/control-linux-computer-over-the-internet
http://www.dedoimedo.com/computers/remote-windows-linux.html (very good)
http://www.linuxplanet.com/linuxplanet/tutorials/6896/1
Quote:
Never ever permit a root login over the Internet. If you need root privileges, log in as an ordinary user and then su or sudo after logging in. (In the next installment in this series I'll show you how to restrict sudo to specific commands.)

xRDP - http://www.tweaking4all.com/software/linux-software/use-xrdp-remote-access-ubuntu-14-04/
cloudBit - http://littlebits.cc/bits/cloudbit
Pi version - http://xmodulo.com/remote-control-raspberry-pi.html
- also http://elinux.org/RPi_VNC_Server
xmas lights - remote control HowTo

Last edited by greengeek on Sun 29 Mar 2015, 04:55; edited 8 times in total
Back to top
View user's profile Send private message 
greengeek

Joined: 20 Jul 2010
Posts: 3218
Location: New Zealand

PostPosted: Sat 28 Mar 2015, 14:54    Post subject:  

Software solutions:
(reserved for later)

Last edited by greengeek on Sat 28 Mar 2015, 14:56; edited 1 time in total
Back to top
View user's profile Send private message 
greengeek

Joined: 20 Jul 2010
Posts: 3218
Location: New Zealand

PostPosted: Sat 28 Mar 2015, 14:55    Post subject:  

Hardware solutions:
(reserved for later)
Back to top
View user's profile Send private message 
greengeek

Joined: 20 Jul 2010
Posts: 3218
Location: New Zealand

PostPosted: Sat 28 Mar 2015, 14:56    Post subject:  

reserved
Back to top
View user's profile Send private message 
rockedge


Joined: 11 Apr 2012
Posts: 106
Location: Connecticut, United States

PostPosted: Wed 20 May 2015, 08:47    Post subject:  

Interesting idea. I do something similar using ZoneMinder. With zoneminder installed on Tahr 6.0.2 running XAMPP with Hiawatha 9.12 or Apache 2.4.

I have then a PHP script that communicates with Zoneminder's API. This is over a SOCK. Better is that ZoneMinder is equipped with a external Trigger program written in PERL which when an Event occurs can trigger signals to a SERIAL PORT or file and other methods like send an email or push notification or X10 home automation signals to all kinds of things.

Using some PERL or PYTHON scripts which can be started via an SSH remote connection to send signals to USB, COM, or SERIAL PORTS may be what you need.

I use DYNDNS and freedns.org to supply an alias domain name to my dynamic IP which stays in sync using INADYN and/or dyndns updater to be able to reach the computers via internet for remote SSH or through the web server.

Hope this gives you some direction for your quest.
Back to top
View user's profile Send private message Visit poster's website 
greengeek

Joined: 20 Jul 2010
Posts: 3218
Location: New Zealand

PostPosted: Wed 20 May 2015, 14:34    Post subject:  

Thanks rockedge - some really great pointers there. I will probably start with getting to grips with having puppy control the serial port output directly as that will help my understanding of the electronics side of it. Its a longterm project though and I've hardly scratched the surface at all yet.

Once I can get an LED to turn on and off locally via serial port I can graduate to doing it over the internet. So 'simple' but never enough time...
Back to top
View user's profile Send private message 
gcmartin


Joined: 14 Oct 2005
Posts: 5356
Location: Earth

PostPosted: Wed 20 May 2015, 16:31    Post subject:  

Hello @Greengeek.

You are embarking on a very good home project. Glad others of us see advantages of using our PUPs for this kind of good use. There are many others including operating stuff in our garages, yards, porches, basements, vacation RVs, boats, vacation home properties, and the many other things that are personal to us. Great!!! Idea

OK, heres 2 ideas which can help.

@Gyro extends a Internet interface solution (router) where you have complete control using common PUPPY subsystem services. As such, his solution give you the ability to us that version of PUPPY to do the same/similar things that routers do, BUT, you have internal controls as you do with any PUP distro for what it does on your LAN. I focus on his solution as you do not need permission to use his and his project is open to community discussion and extensions. And, this can easily be implemented with no peripheral except its motherboard and some $5(ca) USB.

This, now, takes the LAN controls away from the ISP's units, and puts the controls directly in YOUR hands for the things that will occur on your remote LAN.

There are other distros (in distrowatch) which give similar features, but, a Puppy look and feel reduces the learning curve.

Your project efforts bring understanding into this community of uses for PUPPY Linux to manage the "internet of things" we are now able to create/build/purchase and use as the internet connection ability to our homes is rising and expanding rapidly.

Here to help
P.S. @GoingNuts created a remote control solution which when placed on the PC you want to control, it can be controlled via smartPhone/PCs/tablets/etc. There is NO need to installed ANYTHING on the PCs you use to access the remote as it is builtin to all PUPs and Windows and Apples; just put no the remote. Also, it is also well known that Chrome browser allows similar service, too.

_________________
Get ACTIVE Create Circles; Do those good things which benefit people's needs!
We are all related ... Its time to show that we know this!
3 Different Puppy Search Engine or use DogPile
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 11071

PostPosted: Wed 20 May 2015, 18:00    Post subject:  

i2c might be of interest..interfaces are common and cheap or even free for the resourcefull i use a printer port to talk to a smart battery over that bus...
I used a simple driver written in c for the kernel and a binary to control it...so was like
binary send 33

to send a command... nice and simple stuff.

ssh...yep...

noip is free still..simple daemon to keep them updated if your router will not. That gives you a domain name effectively.

puppy headless..need to deal with /etc/profile mainly...its a mess at the bottom but can be tidied...shutdown use nohup.

just some pointers..have fun

mike
Back to top
View user's profile Send private message 
technosaurus


Joined: 18 May 2008
Posts: 4535

PostPosted: Thu 21 May 2015, 01:52    Post subject:  

I'm pretty sure this is all googleable, but from a puppy perspective the obvious choice is busybox httpd or hiawatha + a cgi script.

but that is just to access remotely. To actually control devices you could do the popular thing and use an X10 device, but I would be more interested to see a video of a Rube Goldberg Machine initiated by running eject from the cgi script.

_________________
Web Programming - Pet Packaging 100 & 101
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 1 of 1 [9 Posts]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Advanced Topics » Puppy Projects
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1011s ][ Queries: 11 (0.0097s) ][ GZIP on ]