The MykroSystem is designed so you can use a thin-client laptop (or a crappy old laptop) to remote control your PC from virtually anywhere. The system will boot up, connect to the Internet, establish a VPN and launch the remote control application - all within about a minute.
Okay - here are my notes while trying to get the MykroSystem running on Puppy Linux 4.0. These will be pretty much free-form. Hopefully I’ll get this organized at some point…
So here goes…
These are all the parts necessary:
OS - Puppy Linux 4.0
Compiler for Puppy
Dynamic DNS - dyndns.org
Dynamic DNS updater - inadyn
Peer to Peer SSL VPN - OpenVPN
Compression - LZO compression
Internet connection - Wired, WiFi, Cellular modem (PCMCIA), BlueTooth Modem (Cell Phone)
Remote Control software - rdesktop or VNC or a Java VNC client
NOTES:
First, many of the newer USB drives have the U3 application that launches programs on Windows. It does nothing for Linux users but cause headaches. So if your USB memory has U3 you’ll need to remove it.
Using a Windows machine - if anyone knows a way in Linux I’d like to hear about it - go to http://www.u3.com/uninstall/final.aspx and download the uninstaller. Follow the instructions to remove U3.
OS -Puppy Linux 4.0
Next, go to puppylinux.com and download the Puppy Linux 4.0 ISO, burn it to a disk and boot from the disk. Use the Puppy Universal installer to install a bootable Puppy on your USB memory. Follow the instructions available at the Puppy Linux site to complete this. There are plenty of detailed instructions and the support forum is fantastic. No sense recreating that here.
Once you have booted up Puppy Linux from your new USB Memory you’ll want to use the tools to connect to the Internet using an Ethernet connection. Click the setup icon and follow the instructions to connect to the Internet. (You could also use any Internet connected computer to download the files and save them to your USB memory)
Puppy Compiler
devx_400.sfs - you’ll need to download this file as well, the sfs file allows you to compile and install the applications on Puppy Linux - without it there is no make or gcc - this file will need to be saved in /mnt/home
Restart the computer to load the devx_400.sfs file. The boot manager will pop up on the desktop - add the devx_400.sfs file and click okay.
Now test that Puppy can compile (the dev_400.sfs file is loaded) by using a console and typing gcc. The response should be: gcc: no input files
Create a folder on your USB memory to store the files we need to download. Using a console: mkdir /mnt/home/mikrodots
Downloads:
Now download the following to the /mnt/home/mikrodots directory:
OpenVPN - may as well get the Windows installer while you are at it.
Internet Connections
Sierra Wireless AC860 AirCard
AirCard Drivers - My aircard is a Sierra Wireless AC 860, this is the only one I’ve tested so far… Not sure this works yet - I used to just download the SW_8xx_SER.dat file from Sierra’s site- Sierra’s site no longer has that file available - just these new drivers to compile.
BlueTooth
BlueTooth - For a bluetooth cellphone modem - BlueZ is built in to the kernel but we need to grab the libraries and tools to make it useful
gnokii - i haven’t tried these bluetooth tools yet, the link is just so I can find them again
Now we are ready to install the applications.
I like to run a tail on /var/log/messages for troubleshooting - in a console type tail -f /var/log/messages
Internet Connections
Sierra Wireless and Cingular (AT&T)
First thing I tried was installing the driver for the Sierra Wireless card which so far has flopped. It needs to have usb-serial.ko already installed. I’m going to use Puppy’s boot manager to add usbserial and see if that installs usb-serial.ko…
Hey, what’s this? I noticed a Sierra Module in the BootManager list - I’ll add that and see what happens… and Bluetooth as well! *** NOTE I ended up removing the sierra module and the usbserial module…
Ahhrgh… Puppy 4 doesn’t recognized the PCMCIA socket. Okay, I found that the yenta_socket module is no longer loaded in a default installation - so I’ll need to add that by using the BootManager…
I probably should have read the release notes for Puppy 4… it looks like only minimal modules are loaded compared with earlier versions.
Good. With the yenta_socket module loaded my card is identified — from a console- cardmgr reports ‘watching 1 socket’ and cardctl ident identifies the Siera Wireless AC860.
I’ll need to add the id to /etc/pcmcia/config to get it to work. (to test the id cat /var/log/messages look for “unsupported card in socket 0″) - it doesn’t look the Sierra module I loaded is doing anything here. I don’t know how to tell the system to use that driver for this device.
It looks like card is ID’d with the function network instead of modem.
The old links I had to Sierra’s site are no longer valid - I don’t know why they pulled the SW_8xx_SER.dat file. I’m not sure how to make this work without it. I have a copy of it from last year that I’ll use (if I can find it!)
Good, I found a copy of SW_8xx_SER.dat. I’ll copy SW_8xx_SER.dat to: /etc/pcmcia/cis/
Now I’ll modify /etc/pcmcia/config
Add the following to /etc/pcmcia/config under the Modems and other serial devices:
Be sure the manfid is typed exactly as it is in the /var/log/messages file; I recommend cutting and pasting from messages and that’s why I put in the log file reference.
This is how the device will be auto-detected and the driver loaded.
card “Sierra Wireless AC860 3G Network Adapter R1″
manfid 0×0192, 0×0710
cis “cis/SW_8xx_SER.dat”
bind “serial_cs”
I’ll need to copy a couple of scripts to get this working. (NOTE: when copying the scripts sometimes the qoutes are replaced with the wrong characters (two single quotes) and the script won’t run - you may see a “invalid option -v” or similar - just replace the double quotes)
____________________________________________________
Copy the following Script to: /etc/ppp/peers/3g
#!/bin/bash
#
-detach
lcp-echo-failure 0
noauth
# Use /dev/rfcomm0 for bluetooth modem
# /dev/rfcomm0
#/dev/ttyS0 is my Sierra Wireless Aircard PCMCIA PC Card
/dev/ttyS0
# These are the connect speeds
# I found through experimentation that 115200 give me the fastest upload speed at 254k,
# the others, to my surprise, all only reached 54k
115200
# 230400
# 460800
# 921600
defaultroute
noipdefault
ipcp-accept-local
ipcp-accept-remote
# user ISP@CINGULARGPRS.COM
# This one worked better with the pcmcia card
user ISPDA@CINGULARGPRS.COM
password CINGULAR1
usepeerdns
# nodetach
debug
crtscts
lock
# receive-all
# novj
# nodeflate
# noccp
connect "/usr/sbin/chat -v -t6 -f /etc/ppp/chatscripts/3gchat"
_______________________
Save Script to: /etc/ppp/chatscripts/3gchat
# Note: after copying this script I needed to fix the double quotes as they were replaced with two single quotes
#!/bin/bash
#
ABORT ERROR
ABORT RING
ABORT BUSY
ABORT VOICE
ABORT “NO CARRIER”
ABORT “NO ANSWER”
#ABORT “NO DIALTONE”
REPORT CONNECT
“” “ATZ”
# The following would hang up when downloading
# I think I used for the cell phone bluetooth modem
# OK ‘AT+CGDCONT=1,”IP”,”wap.cingular”,”",0,0′
# Use this for the Sierra Aircard
OK ‘AT+CGDCONT=1,”IP”,”isp.cingular”,”",0,0′
OK ATD*99***1#
TIMEOUT 15
CONNECT \c
__________________________________________
now in a console type pppd call 3g and you should connect to the Internet.
I restarted and noticed that cardmgr does not start on boot - I’ll need to fix that.
For now type cardmgr to start it then pppd call 3g
Now lets check the connection speed…
From speedtest.net I got 1MB up and 54k down. It looks like I still need to add spd_warp to ip-up
edit /etc/ppp/ip-up
add this line
setserial -a /dev/modem low_latency spd_warp
I found a new Sierra link: http://www.sierrawireless.com/faq/ShowFAQ.aspx?ID=118 - maybe I’ll try this procedure soon.
Next Up, BlueTooth Internet Connection
Then I’ll get into the Dynamic DNS, Compression, VPN and Rdesktop stuff… Stay tuned.
More to come…