Myth BOX
The home of guides for Myth TV, IPTables, and other linux based phenomena.
 
HD version
Preamble
Home
News
Spec
General guides
Partitioning
Installation
Firewall
Channel setup
Home automation
Product overview
Other
Useful links
SD version
Preamble
Functionality
Hardware
Software
Screenshots
Gallery
General guides
DVB Card
Myth TV
Broadband modem
Wireless network
Firewall
Network shares
Network IDS
Extra security
Streaming
Gensplash
EPIA specific guides
TV-Out cables
Audio/USB cables
Backplate
Wireless network
EPIA Kernel
Openchrome drivers
Surround sound
VPN
Online store
Prebuilt mythbox
Other
Useful links

Setting up the broadband modem

  1. To get the modem working the first thing we need to do is adjust the USE flags in /etc/make.conf, adding: atm.
  2. Create or amend the file /etc/portage/package.keywords by adding:
    net-dialup/ppp ~x86
    
  3. I assume at this point that you have USB and hotplug working.
  4. Recompile the kernel, ensuring that the following are selected:
    Device Drivers -->
        Network device support -->
            PPP (point-to-point protocol) support
            PPP Deflate compression
            PPP BSD-Compress compression
            PPP over ATM (as module)
        USB support -->
            USB DSL modem support -->
                USB DSL modem support
                Speedtouch USB support (as module)
    Networking -->
        Networking options -->
            Asynchronous Transfer Mode (ATM) (EXPERIMENTAL)
            Classical IP over ATM (EXPERIMENTAL)
    
  5. Now we need some drivers from portage. So do:
    emerge linux-atm
    emerge ppp
    
  6. Download the firmware extractor (found here). Now go into /root/ and untar the archive.
  7. Next we need to get hold of the microcode for the modem. This can be found on the same website as above, or here as a backup.
  8. Uncompress and copy the ZZZL_3.012 file to /root/firmware-extractor/. Run ./configure ; make ; make install in this directory. The firmware binaries should have been copied to /lib/firmware.
  9. Now edit /etc/ppp/peers/adsl and put in the following:
    lock
    defaultroute
    noipdefault
    noauth
    holdoff 4
    maxfail 25
    persist
    passive
    asyncmap 0
    usepeerdns
    lcp-echo-interval 2
    lcp-echo-failure 7
    user "<username>"
    name "<username>"
    plugin pppoatm.so
    0.38
    
  10. Fill in /etc/ppp/pap-secrets, and copy this to /etc/ppp/chap-secrets.
  11. Reboot and surf the web!
  12. If you have an account with dyndns, you will want to update your IP that is held with them periodically. For this you will need to emerge dyndnsupdate.
  13. Ensure that you have a cron daemon installed using emerge vixie-cron.
  14. Make a file in /root/updatedyndns.sh with 711 permissions, containing:
    dyndnsupdate -f -i ppp0 -h <dyndns_hostname> -u <dyndns_user>:<dyndns_password> 
    
  15. Use crontab -e to edit the cron file and add the following:
    0 1 */25 * * /root/updatedyndns.sh
    
    This would force an update every 25 days so that your account is kept alive.
  16. To update your dyndns account everytime ppp restarts (including boot), add the following line to /etc/ppp/ip-up:
    cat /root/updatedyndns.sh | at now + 1 minute
    
  17. Make sure at is emerged and always running by executing emerge at ; rc-update add atd default.

Troubleshooting:
  • In /var/log/messages, I get something like cannot find microcode!
    You must have the wrong version of the microcode or you have specified the path to the microcode incorrectly. There are many versions of the microcode out there - do a search and try some other ones. Watch the /var/log/messages file closely, and check out dmesg. Or just get the silver modem :)