Install a web server on the plug (I use cherokee) and use Roksbox, Chauru or a few other availble channels on the Roku (My Media I think is another).
This requires using optware on the plug. The nslu2-linux.org pages have some info on how to set this up.
Has anyone found a way to stream videos from the PogoPlug to a Roku box? I have the latest and highest end Roku currently available.
dbeedle - were are you able to post any additional links in the form of a "how to"? - not sure what "optware on the plug" means... thanks, Dan
Dan
I may have put some links on another thread...maybe...anyway...
Optware is a method to distribute packages for linux-type systems. It was made, initially, for the NSLU2 by Linksys (fondly called a Slug), which I used before the PogoPlug. Optware will allow you to install certain software packages on the Plug including webservers and other tools.
It is probably helpful to have some basic Linux/Unix experience to do this but the instructions are pretty helpful in regard to the commands needed.
Instructions are here: http://www.nslu2-linux.org/wiki/Main/PlugComputers
I also found a lot of good info at the Yahoo Groups NSLU2-General group. In the files section there you will find a Plug Files directory with much or all of what you need. The "README.txt" file there I found especially useful. Actually, this is a step by step thing and is probably more useful! I've also shared the file from my Plug: http://my.cloudengines.com/share/vdwzCdeg_HH8zz9lz_g8WA/ or http://my.cloudengines.com/share/vdwzCdeg_HH8zz9lz_g8WA/fCOZLTy6xpivolXX1JNhU...
The approach I took was to use a flash drive connected to one of the available ports on the Plug. I wanted to keep the original Pogoplug functionality (mypogoplug.com) and still do the rest. I also didn't want to use up the fairly limited space built into the Plug or cause more wear on it than necessary.
Use a reasonable quality flash drive. I started out with some freebies I had laying around. After the third one failed I bought some to use, in this case, Kingston DataTravler drives. Mine are 4GB but you can get away with 2GB easily, unless you are going to load up tons of stuff. The Kingston has been working now for several months with no problems. I suppose you could also partition a hardrive with a partition for Linux/optware and a partition for your data and save a USB port. I chose not to do this as I didn't want to go to the trouble and I want to be able to move the drive to another system if needed.
You will have to format the USB drive (or partition) for linux. If you don't have a linux machine handy you can download one of the free "Live" CDs from one of the linux distributions...I used Ubuntu on a CD. http://www.ubuntu.com/download/ubuntu/download ...The README.txt file (noted above) includes using fdisk and mkfs to set up the drive.
Once you have optware set up and the ipkg command available you should be ready to go.
"ipkg update" will pull down a list of available packages.
"ipkg list" will list the available packages
"ipkg install " installs the named package
"ipkg install cherokee" will install the cherokee web server. Apache is another popular one. You'll have to configure the web server to match your needs and cherokee-admin is another package that might help. You may have to google around a bit to figure out how to get the web server going, which is what I did as I don't do much of that!
Other packages I use are:
Mediatomb - a DLNA server. If you have a device that can use DLNA this is another way to get media shared out.
Samba - which shares up drives as a windows share. I have found this to be quicker than the Pogoplug native software.
and the Firefly server (mt-daapd-svn) - a itunes, and other device, audio streamer. I use this to stream to a Roku Audio Bridge.
Hope this helps. I'm not a Linux expert though I do have other Unix experience. I think that following the instructions and with a little study, even with little experience setting this up is do-able.
Good luck and if you have questions I can certainly try to answer them!
By the way...if you haven't looked at the Roku fourms they are at: http://forums.roku.com/viewforum.php?f=28&sid=d8a975f987575f6dfde29a4b90777b4f
There is often discussion and announcements about Roksbox, chanaru and other channels over there. That is where I discovered these channels and went looking for a way to use 'em!
it would be nice and easy though if pogoplug made a roku channel so it could find pogoplugs on the local network or even connect to one you have somewhere else. that would be sweet!
dbeedle, thank you on a very helpful post, I was just looking for the information on the easiest (as in n00b friendly) way to get optware and samba on pogoplug.
Only one question - is the mypogoplug.com functionality enabled when the optware is active, or the usb drive must be unmounted? Also, if it needs to be unmounted, is there any way that I cam mount/unmount drive remotely?
Optware, samba, mypogoplug and other servers can all run at the same time on the Plug. The readme.txt file does have you kill off the mypogoplug process to get things set up (killall hbwd) but once set up all can run together.
Also, the directory tree that optware uses starts at /opt. This area isn't used by the Pogoplug software and, I believe, optware packages all (should) store and reference any files somewhere under /opt.
On my Plug, the USB drive does show up when the pogoplug does the start up scan. I have found this useful to allow looking at logs and other files remotely. You can eject the drive from the mypogoplug screen but I don't think that that unmounts it form the plug itself. This might be because I have done this while the drive is in use and the underlying Linux won't allow it to be unmounted. If you need to really ensure that it is umounted remotely, I use an ssh client to connect to the plug and get to the linux prompt.
I mentioned accessing the plug remotely by using an ssh client...I guess what enables that is a static address on the plug and dyndns.org to give a name to get to. The readme.txt file doesn't go into using a static IP address and there is no easy way to get one on the plug other than editing one of the Pogoplug startup files, rcS. I did find how to do this somewhere...but I don't remember where...
IF you want a static address on the plug, you need to mount the root directory for read/write, it's mounted read only by default, and add some commands.
WARNING...this could break your plug if done wrong. I don't know how to fix it and I can only say sorry! This is dangerous and I can't guarantee your results! You can, in fact, make your Pogoplug a paperweight. Do this at your own risk!
mount -o rw,remount / (this mounts / as read/write)
cd /etc/init.d (change to the directory)
cp rcS rcS.orig (make a backup...no really! I mean it!)
then edit rcS...probably the easiest way to do that is to use the echo command to add the lines to the file, unless you know how to use vi...Actually, read the rest before you edit the rcS...safer that way...
By the way, -* this is dangerous *-. If something is wrong here you won't be able to connect to the plug...ever...as far as I know. That would be bad.
What I did to gain confidence that my commands worked is to make another copy of the rcS file (call it whatever you want...rcS.test...) and edit that. As part of the commands entered into _that_ file I used one to copy the original file back after a time. If during that time all was well, good...if not, it fixes itself and all is not lost. So:
cp rcS rcS.test
now echo in the needed commands (or vi)...Make your network parameters match what you need. The ones below work for me, they set the IP to 192.168.1.155 and the default gateway to my router with the network mask my network wants:
echo 'ifconfig eth0 192.168.1.155 netmask 255.255.255.0' >> rcS.test
echo 'route add default gw 192.168.1.1' >> rcS.test
echo 'sleep 300' >> rcS.test
echo 'mount -o rw,remount /'
echo 'cp /etc/init.d/rcS.orig /etc/init.d/rcS' >> rcS.test
echo 'mount -o ro,remount /'
Done entering the commands into the startup file so...
cp rcS.test rcS (copy the test file into place)
mount -o ro,remount / (this mounts / as read only)
unmount any other drives you might have and restart the plug to test.
This sets the IP then waits (sleeps) for 5 minutes. During that time you can ping the address and ssh in to make sure all is well. After 5 minutes the original rcS will be put back in place. If the test is successful you can then go in and edit /etc/init.d/rcS.test. Take out the last four lines and copy into place again with confidence that the ifconfig commands are done right. If it's not successful you should still have a usable Plug...after 5 minutes.
Remove the last four lines using vi (if you don't know vi and work with Unix type systems...you really should):
mount -o rw,remount /
cd /etc/init.d
vi rcS.test
enter a capital G (shift G) this should take you to the last line...
enter dd (dee dee - means delete a line)
do that for the cp line, mount and sleep lines
enter a capital ZZ (shift Z shift Z) this should save the file
If you are really ambitious and want to vi some more...edit the file again and comment out the original ifconfig and what I think probably uses dhcp to get an address to the plug...
arrow down to the lines that look like:
ifconfig eth0 169.254.37.133
udhcpc -b `hostname`
At the start of the first line line enter i (turns on input mode)
enter a #
arrow to the next and do the same. When done hit the escape key (turn off input mode and go back to command mode) then shift ZZ (save and done).
if all goes well your lines should look like:
# ifconfig eth0 169.254.37.133
# udhcpc -b `hostname`
These are comments now.
Now, copy the final rcS.test into place:
cp rcS.test rcS
mount -o rw,remount /
For reference, my final rcS file looks like this (you can see yours with cat /etc/init.d/rcS):
#! /bin/sh
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts
mount -t tmpfs none /tmp
mount -t usbfs none /proc/bus/usb
mkdir /tmp/var
echo "/tmp/core_%e_%t" > /proc/sys/kernel/core_pattern
hostname Pogoplug
ifconfig lo 127.0.0.1
ifconfig eth0 192.168.1.155 netmask 255.255.255.0
route add default gw 192.168.1.1
# ifconfig eth0 169.254.37.133
# udhcpc -b `hostname`
#telnetd
/etc/init.d/db
/etc/init.d/hbmgr.sh start
#/bin/mount -a
echo "nameserver 192.168.1.1" > /etc/resolv.conf
# Start servers from /opt
# mount /dev/sdb1 /opt
/etc/init.d/mount_optext3
To explain the last couple lines in my rcS file that I put in:
echo "nameserver 192.168.1.1" > /etc/resolv.conf
On boot, this sets the plug to use my router as a DNS (nameserver). The /etc/resolv.conf file seems to be removed with each reboot. This puts one in place. You may not need this if you choose not to use a static IP as DHCP should handle this.
# Start servers from /opt (just a comment)
# mount /dev/sdb1 /opt
/etc/init.d/mount_optext3
The mount command (commented out) is how I initially mounted the USB drive over /opt. It seems, though, that it may, or may not, be the /dev/sdb1 device every time...
/etc/init.d/mount_optext3
is a script from the Yahoo NSLU2-General group. It finds the USB drive whatever device it happens to end up on, and mounts it at /opt. I also added the startup scritps for samba. mediatomb and firefly to that script. I don't seem to have it fullproof yet.
Just spent a geeky afternoon hacking Roku, pogoplug, android & myMedia
http://rich-blog.blogspot.com/2011/12/roku-pogoplug-mymedia-android.html

RSS


