Howto compile HSF/HCF drivers for Puppy2

How to do things, solutions, recipes, tutorials
Message
Author
User avatar
jcoder24
Posts: 604
Joined: Fri 06 May 2005, 12:33
Location: Barbados

Howto compile HSF/HCF drivers for Puppy2

#1 Post by jcoder24 »

Updated 20070624
License restrictions on these drivers prevents me from providing packages for them so I've compiled some instructions for those of you who don't mind 14.4kbs (with the free version) or paying $19.99 for a license.

0) Make sure your modem is installed and you know if it is a hcf/hsf. If you are unsure download the scanmodem.gz file, gunzip it and run the script to see which modem you have.

1) Make sure you have the devx file loaded. The devx file adds developer tools to puppy that allows you to compile. To "install" download devx_202.sfs or devx_210.sfs or devx_211.sfs or devx_212.sfs (depending on your version of puppy) to the same area where your pup_save file is located and reboot.

2a) For Puppy 2.11 and lower
Download these files missing from the devx file linux-2.6.16.7-scripts.tar.bz2 (0.4M/1.9M - download/extracted) needed from the kernel source for compilation to succeed. Extract them via tar xvfj linux-2.6.16.7-scripts.tar.bz2 -C /usr/src

2b) For Puppy 2.12 and higher
Download these files missing from the devx file linux-2.6.18.1-scripts.tar.bz2 (0.4M/1.9M - download/extracted) needed from the kernel source for compilation to succeed. Extract them via tar xvfj linux-2.6.18.1-scripts.tar.bz2 -C /usr/src

3a) Download the source drivers for your modem (the binary packages avilable are kernel specific and I haven't seen any with the same kernel version as puppy).

If you agree to the hcf license you can download the hcf driver here

If you agree to the hsf license you can download the hsf driver here

[Added 20070624]
3b) For the more recent versions of the drivers some additional libraries are needed. These libraries were identified by craftybytes and packaged as missing_files.rar by telemetric_au
.

4) Extract the downloaded source file, change working directory to the source directory and run make install. ie
for hcf

Code: Select all

tar xvfz hcfpcimodem-1.10full.tar.gz[/b] 
cd hcfpcimodem-1.10full
make install
for hsf

Code: Select all

tar xvfz hsfmodem-7.47.00.03full.tar.gz
cd hsfmodem-7.47.00.03full make install
make install
5) Once the "make install" has completed without error, run /usr/sbin/hcfpciconfig for hcf modems or /usr/sbin/hsfconfig for hsf modems. Accept the default by hitting enter when it asks "Where is the linux source build directory that matches your running kernel?"

If all goes well you should see something like the following:
Building modules for kernel 2.6.16.7, using source directory
/lib/modules/2.6.16.7/build. Please wait...
done.


NB you may notice an error re: HDA support not active which should be safe to ignore. It appears that the hsf driver provides support for Intel HDA modems.


6) The config script will then ask you a few questions (eg email address, license type, etc), answer them appropiately and your modem should be ready to go.

7) Modify /etc/rc.d/rc.local to have the drivers load on boot as follows (thanks to EdFromHouston for testing):

Code: Select all

#Load modem drivers on boot. This adds 10 or more seconds to the boot time.
rm -f /dev/modem /dev/cuaHSF0 /dev/ttySHSF0 2>/dev/null
hsfconfig --serial 
jc24
Last edited by jcoder24 on Sun 24 Jun 2007, 15:41, edited 9 times in total.

User avatar
mouldy
Posts: 663
Joined: Wed 04 May 2005, 21:47

#2 Post by mouldy »

Er...um...only thing I am going to say is anybody wanting to do this might want to go to this link to fedora forum and read the last post especially. http://www.fedoraforum.org/forum/showthread.php?t=1510

I havent tried it and have no idea if it works. I just stumbled across it. You are on your own.

Kannada-Puppy
Posts: 8
Joined: Thu 27 Jul 2006, 13:24
Location: India

#3 Post by Kannada-Puppy »

Another thing ; after installation of modem driver do not run modem wizard- it is not necessary. Instead run GK dial or other dialup program to configure dialup settings. I was able to connect to internet without problems.
Rao

cai
Posts: 2
Joined: Fri 24 Nov 2006, 10:12

#4 Post by cai »

2) Download these files missing from the devx file kernel_source_scripts.tar.gz (0.4M/1.4M - download/extracted) needed from the kernel source for compilation to succeed. Extract them via tar xvfz kernel_source_scripts.tar.gz -C /usr/src
I've trying to install my D-Link Modem in puppy.. I tried the above instruction but I got some error adding "kernel_source_scripts.tar.gz " there is a problem in the above extraction command. I don't have "src" folder under usr.
Do I need to create the "src" folder?.

cai
Posts: 2
Joined: Fri 24 Nov 2006, 10:12

#5 Post by cai »

I tried adding the src folder under usr so I could do the extraction of kernel source scripts. But I still got problem in installing " hsfmodem".
I can't make run the "make install" command. Is there anything I need to install / intialize to nake it run?

Or maybe you can give me links for solutions or way in installing D-Link 562IS modem in puppy linux. Thanks!

User avatar
jcoder24
Posts: 604
Joined: Fri 06 May 2005, 12:33
Location: Barbados

#6 Post by jcoder24 »

cai wrote:I've trying to install my D-Link Modem in puppy.. I tried the above instruction but I got some error adding "kernel_source_scripts.tar.gz " there is a problem in the above extraction command. I don't have "src" folder under usr.
Do I need to create the "src" folder?.
Make sure your devx_2xx.sfs file is loaded. you can type which gcc in a console window to check. It should reply with /usr/bin/gcc

User avatar
jcoder24
Posts: 604
Joined: Fri 06 May 2005, 12:33
Location: Barbados

#7 Post by jcoder24 »

Added missing scripts for the puppy 2.12 kernel version and re-uploaded the scripts for the other puppy 2 versions.

User avatar
Ian
Official Dog Handler
Posts: 1234
Joined: Wed 04 May 2005, 12:00
Location: Queensland

#8 Post by Ian »

With the hsfconfig I got as far as:
'Please enter region name for modem unit 0 [USA]: '
and when I try to enter a country it comes up with:

'ERROR: Region XXX is not supported.
Available countries:
/usr/sbin/hsfconfig: line 56: fold: command not found
/usr/sbin/hsfconfig: line 56: fold: command not found
Please enter region name for modem unit 0 [USA]:'

Of course the XXX is the country I am trying to input and it does not respond to any entry at all.

A look in /usr/sbin/hsfconfig shows the two files that the script reads in /var/run are empty.

I ran it again and then it came up with :

'/usr/sbin/hsfconfig line 1615: sysctl: command not found'

then back to not being able to determine region, defaulting to "USA" & not doing so.

Back to 'Please enter region...etc'

I am going to take a break from this for the moment as it is quite frustating and I can feel the BP going up.

This is in Puppy 2.13.

User avatar
Gn2
Posts: 943
Joined: Mon 16 Oct 2006, 05:33
Location: virtual - Veni vidi, nihil est adpulerit

#9 Post by Gn2 »

Use of -C option is what caused directory failure until it was created -
It is NOT mandatory - nor good practice to untar into standard location of /usr/src (for kernel sources)

Better to create a dedicated folder (if hard drive install)
to user's folder path.
All that is required - is the clean headers

Do you have command (sysctl) in Puppy
Already checked the reference makefile lines

Locale is set in profile

User avatar
craftybytes
Posts: 298
Joined: Fri 17 Nov 2006, 10:32
Location: QLD AUSTRALIA

#10 Post by craftybytes »

jcoder24,
I found that I needed the following extra files to make MY hsf modem compile to work properly:

sysctl
libproc-3.2.5.so
ls
libacl.so.1
libattr.so.1

+ any symlink files associated with any of the above ALSO..

I made sure I had the 'kernel-source-2.6.18.1' files, 'kernel-header' files and your extra 'scripts' files installed to - '/usr/src' - PLUS these above extra files installed to their respective 'folders' ..

I used the latest "Linuxant" hsf driver files (for the Conexant modem) to do my compile with - the compile ONLY properly worked ONCE I had included the extra files as above - so you might want to add these to the 'download' files for completeness..

NOTE: you may need to include a script to have the 'existing' Puppy - "ls" command file renamed BEFORE the new - 'ls' command file is installed - reason is that 'existing' is the - 'Busybox-ls' - command, whereas the new is standard linux - 'ls' - command, which allows more 'options' than the busybox one - could cause system clash if both installed ..

HTH..
3 x boot:- ASROCK VIA 'all-in-one' m/b; AMD Duron 1.8Ghz+; 1.0GB RAM; 20GB hdd (WinXP Pro); 80GB hdd (MEPIS 3.4-3/Puppy v2.15CE Frugal); 1GB USB pendrive (Puppy 2.15CE Frugal); CD/DVDRW; 17" LCD monitor; HSF 56k modem... MEPIS is great.. Puppy ROCKS..

User avatar
Ian
Official Dog Handler
Posts: 1234
Joined: Wed 04 May 2005, 12:00
Location: Queensland

#11 Post by Ian »

Alas! after downloading MEPIS & extracting the files I am back to

'ERROR: Region "AUSTRALIA" is not supported

(I can believe that) :-)

/usr/sbin/hsconfig: line 56: fold: command not found'

I followed the procedure as outlined above.

Renamed ls and installed the one from MEPIS.
Installed the libs and created links as required.
Installed sysctl in sbin.
Downloaded the latest hsf driver.

I tried using the default /usr/src directory and also the files that jcoder24 posted plus combining them in one.

muggins
Posts: 6724
Joined: Fri 20 Jan 2006, 10:44
Location: hobart

#12 Post by muggins »

very strange...i definitely got jcoder's files working on pup2.13. at first i had to accept the default of USA, but then ran hsfconfig -c and it accepted AUSTRALIA.

( i ended up wiping it as it absolutely crawled. there was mention of using a hex editor to circumvent the speed restrictions of the free driver, but it made no diff)

nhnam
Posts: 4
Joined: Tue 03 Oct 2006, 06:05

#13 Post by nhnam »

please give me, the missing lib but working,
thank a lot

User avatar
Ian
Official Dog Handler
Posts: 1234
Joined: Wed 04 May 2005, 12:00
Location: Queensland

#14 Post by Ian »

I have tried everything and now it is coming up with a 'clock skew' problem.

I am going to try it on a couple of other machines and if I can't get it to work I am giving it up as a bad joke.

User avatar
craftybytes
Posts: 298
Joined: Fri 17 Nov 2006, 10:32
Location: QLD AUSTRALIA

#15 Post by craftybytes »

Ian..

The - 'fold' - command in the hsfconfig script is part of the - 'GNU Coreutils' - package - which really should be installed to your system - if not many of the 'base' linux commands will not work correctly ..

EDIT::: Just realised that - 'Busybox' - is installed to Puppy in liu of - 'Coreutils' - package - so maybe some commands such as 'fold' will need to be sourced from another linux distro to make everything work as expected - though in MY hsfmodem compile efforts - the prob with the 'fold' in the hsfconfig script did not happen - so could be also related to the 'REGION' prob as well ..

As to the 'REGION' setting prob - this is most probably linked to either an incorrect 'locale' setting or to an incorrect - 'timezone' - setting ..

Just to be sure - try checking if you have the relevant 'zoneinfo' files for AUSTRALIA - found in folder - '/usr/share/zoneinfo' - in Puppy ... If none exist this may be your problem..

FYI: you may want to check out the links in the forum :-

Hardware - Networking - Dialup

for some usefull info related to MY particular hsf modem install..

HTH..
.
.
3 x boot:- ASROCK VIA 'all-in-one' m/b; AMD Duron 1.8Ghz+; 1.0GB RAM; 20GB hdd (WinXP Pro); 80GB hdd (MEPIS 3.4-3/Puppy v2.15CE Frugal); 1GB USB pendrive (Puppy 2.15CE Frugal); CD/DVDRW; 17" LCD monitor; HSF 56k modem... MEPIS is great.. Puppy ROCKS..

telemetric_au
Posts: 54
Joined: Wed 28 Feb 2007, 13:14

looking for file, plz help

#16 Post by telemetric_au »

as listed above, the dotpups.de site is down, plz someone share...

linux-2.6.18.1-scripts.tar.bz2


http://dotpups.de/dotpups/Wifi/compilin ... ts.tar.bz2

telemetric_au
Posts: 54
Joined: Wed 28 Feb 2007, 13:14

#17 Post by telemetric_au »


telemetric_au
Posts: 54
Joined: Wed 28 Feb 2007, 13:14

missing files

#18 Post by telemetric_au »

libacl.so.1.1.0 (libacl.so.1)
libattr.so.1.1.0 (libattr.so.1)
libproc.so.3.1.8 (libproc.so.3.1.9) (`_3_1_5' )
libselinux.so.1
libsepol.so.1
ls
sysctl


well i got it install, and dialing but it drops almost straight after a few screeches....
there's also apparently a speed limit of 14kbps in freeware version...

so would interested to hear if anyone can use them all the way...

telemetric_au
Posts: 54
Joined: Wed 28 Feb 2007, 13:14

solved: "The line is busy"

#19 Post by telemetric_au »

well im making this post from puppy with wvdial working after several days non-stop...

i just overcame my largest problem which was getting a "The line is busy" error and it dropping after dialing.

this was solved by editing the /etc/wvdial.conf so that the first init line read: (this stops it from detecting a busy tone)

Init1 = AT &F X1

i also read other possibilities on linmodems mailing list such as: AT &F X3, AT FX 1, X1 inserted... and also booting with kernel option: pci=usepirqmask, and or pci=noacpi

then it would drop in the negotiation part with some ppp error:

this was solved by adding the file:

/etc/ppp/peers/wvdial

and making the first line read: noauth

some handy tips:

run: wvdial >/var/log/wvdial.log 2>&1 &

(this will create a log of the conection attempt in /var/log )

also /var/log has a messages file where i found:
"Can't open options file /etc/ppp/peers/wvdial: No such file or directory" -which put me onto the final solve. :lol:

i am dialing from 10km rural area from city, and may need these extra options due to isp, line quality, electric fence interference, though i used the noauth option for my zaurus while travelling with success :) !

User avatar
jcoder24
Posts: 604
Joined: Fri 06 May 2005, 12:33
Location: Barbados

#20 Post by jcoder24 »

Good news for hsfmodem owners --your days of hex-editing drivers or applying hsfpatch to get full speed from your free conexant drivers may soon be over.

NathanF has compiled hsf drivers into the latest version of grafpup. When booting grafpup they actually initialise my modem. I manually setup the devices and it was detected by wvdialconf and the modem actuall dialed the number but then gave an error which I can't remember (that was over a month ago).

I'm to do more research when I find the time, but if we can get this working it would be a welcomed addition.

What little research I did back then indicated that someone had ported the older free hsf drivers over to the 2.6 kernel. I assume that this work should make it easy for someone with the know-how to port over the hcf drivers as well.

Post Reply