Getting an SM200d working under linuxLast Update 20001217 V1.02
This document assumes you have a working linux firewall, and want to upgrade from a sagem telsat satellite card to a telemann skymedia sm200 card, because ihug have told you to.
NOTE: Your IP will change when you change card
Here's some files you might need as a comparison
Here's the files you need to have on your system.
Steps to follow.
cat /proc/pcito test that the card is found, (may not work due to /proc/pci being obsolete - doesn't matter) and
cat /proc/interruptsto make sure the card has a unique IRQ
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter echo 1 > /proc/sys/net/ipv4/ip_forward
NOTE regarding old satellite dishes:
If you know your dish is comparatively old (we're talking about something that was used for starnet) then you most likely have an Austar LNBNOTE from shayol at ihug.co.nz:
From Andrew, hawking AT ihug.co.nz
NOTE: This is only required if you have an AUSTAR LNB fixed to your dish. After having no luck with the ihug supplied drivers I downloaded the sm200d_linux_text_v2.0 tarball from the telemann website and made a modification so that the driver would support the Austar LNB configuration. Edit SkyData.c Change the value of #define MAX_LO from 11000 to 11300 Make (to compile the new binary) cp ./SkyData to where you have the drivers installed. SkyData.ini should have Local Oscillator set to 11300. restart the driver "skymedia restart" (not sure if its necessary.. but I expect it is) Our LNB used to use 13V with the Telsat Turbo card, so we're using "V" as our setting in SkyData.ini Everything seems to be working just fine at the moment *touch wood*
[MrViper(~Neil@Viper.Works.OnDrugs.co.nz)] well, my problem was actually the fact I had the odd LNB that needs to be set to 11300 (as already mentioned on your website) How ever, you no longer need to edit the source, just download, compile, install the latest drivers and all goes happy.
DEVICE=sm200d #this must be 'sm200' or 'sm200d' DRIVERPATH=/usr/local/sm200d/ #path to drivers IPADDRESS=192.168.20.55 #address of the skymedia card LOGGING=on #turn logging on or off LOG=/var/log/smstats.log #place to log card diagnostics
Frequency = 12450 SymbolRate = 20557 LocalOscillator = 10750 Alignment = H LNBHigh = 1 LNBPower = 1 ToneBurst = 0 DiseqcPort = 0 DataPID = 8C,3 DataPID = 8D,3 DataPID = 8C,3 MACFilter = 1Skytower
Frequency = 12266 SymbolRate = 27500 LocalOscillator = 10750 Alignment = H LNBHigh = 1 LNBPower = 1 ToneBurst = 0 DiseqcPort = 0 DataPID = 88,3 DataPID = B4,3 MACFilter = 1For those of an inquisitive bent, the MACFilter = 1 line tells the sm200 card to filter based on MAC address. This means that the card will ignore data for other users in hardware, exactly the same as an ethernet card. The old telsat cards used to filter on IP, which had to be done in software (in the driver) and was inherently slower. So all this means that MAC filtering is faster being a layer 1 function, rather than up at layer 3 the IP layer.
usr/local/sm200d/skymedia startI call it from /etc/rc.d/rc.local on a slackware box, but your distro may be different. Debian users can run
update-rc.d /usr/local/sm200d/skymedia defaultsto do the good thing.
gumboots:/usr/local/sm200d# lsmod Module Size Used by sm200d_lnx 18054 1
/usr/local/sm200d/sm200dstatsYou should get something like this
gumboots:/usr/local/sm200d# ./sm200dstats Lock QPSK Viterbi Frame FEC AGC Bit Error Rate kbps pps ---- ---- ------- ----- --- --- -------------- ----- ----- Yes Yes Yes Yes 5/6 199 0 0 0
The first four are to do with framing and handshaking - if they're not Yes then you are not communicating with the satellite/skytower transmitter. This can be caused by bad weather (our old telsat card failed if there was a cloud in the sky :-) Other causes are incorrect frequencies in SkyData.ini.
CF: My ping times dropped by 50 ms when I killed apache on gumboots. The only optional process I run that doesn't affect the ping time is the dnet client, cos it runs at the nicest nice value
Don't run samba or sendmail or any other such software - I use portforwarding to receive email directly to an internal server (which happens to be an exchange server sadly)
gumboots:/etc/rc.d# cat /proc/sys/net/ipv4/conf/sm200d/* accept_redirects: 1 accept_source_route: 1 bootp_relay: 0 forwarding: 1 hidden: 0 log_martians: 0 mc_forwarding: 0 proxy_arp: 0 rp_filter: 0 secure_redirects: 1 send_redirects: 1 shared_media: 1
gumboots:/usr/local/sm200d# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 127.0.0.10 * 255.255.255.255 UH 0 0 0 sl0 max10.chc.ihug. * 255.255.255.255 UH 0 0 0 ppp0 192.168.20.0 * 255.255.255.0 U 0 0 0 sm200d 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 loopback * 255.0.0.0 U 0 0 0 lo default * 0.0.0.0 U 0 0 0 ppp0 default * 0.0.0.0 U 1 0 0 sl0
NOTE: Your IP will change when you change card
The Ihug guy is Adam Boileau, or try me, Craig Falconer
NOTE2: To use your ihug account in a place without a satellite dish (maybe you're visiting somewhere) then you can set up a normal connection with pppconfig. The catch is to use "email@example.com" as your username, and to use your regular password. I know - it looks weird, but it works. Thanks to JSR for that.
This file last modified Sunday January 23, 2005
If you find something here useful, feel free to donate bitcoin: Donations address: 14LHst9s1UEh8NMem87qaEd9tJWSCiNt1x.