Release notes for ax25-patch 2.2.14 =================================== G'day. Here is this weekend's product. News: - No IP-Address neccessary any more for AX25-interfaces - Fixed a stupid bug which stopped several baycom drivers from working and nailed down the eppflex-conversion. Now every driver work, except: YAM, 6Pack, BPQ, DMASCC, Pi2 (Device driver developers: *** _Please_send_patches!!!_ ***). Tested successfully: KISS, SoundModem, PCISCC-4, EPPFLEX, EPP, PicPar Untested but should work: Baycom Serial 1k2, SCC - Some minor bug fixes - I spent 1.5 days converting Craig Small's ax25lib, ax25-tools and ax25-apps. They are available on my web pages http://www.afthd.tu-darmstadt.de/~dg1kjd . At compile time they figure out whether they are being built for the old or the new AX.25 engine automatically (just do ./configure && make as usual), but you can't use new binaries with old kernel and vise versa. You can now discard those old hacked ax25-utils. How to become QRV: Get the kernel patch, and the modified libax25, ax25-tools and ax25-apps packages from my weg pages. It is assumed that you have linux source tree 2.2.14 installed at /usr/src/linux, sufficient HDD space and all neccessary building tools available. Follow the following steps: 1.) cd /usr/src/linux-2.2.14 2.) zcat patch-2.2.14-newax25.gz | patch -p1 No rejects should occur. 3.) make config / make menuconfig / make xconfig / whatever Configure the your kernel. Remember to *DISABLE* module versions and to *ENABLE* RT Netlink. Enable AX.25, NETROM and ROSE support and enable the device driver(s) you want to use. I suggest to build everything as modules. 4.) make zImage 5.) make modules 6.) make install_modules 7.) Install your kernel and configure lilo etc. 8.) untar libax25-kjd-1-0.0.7.tar.gz, ax25-tools-kjd-1-0.0.5.tar.gz and ax25-apps-kjd-1-0.0.4.tar.gz in /usr/src 9.) cd libax25..., ./configure && make && make install 10.) same with ax25-tools 11.) same with ax25-apps Your installation is complete now. You may want to fetch the recent linkt version and install it, too. How to set everything up (here: KISS link): Note: KISS can not be used to connect non-intelligent RF link controller hardware like standart-TNCs since it provides no means for reasonable channel-access methods. 1.) insmod ax25 2.) insmod kiss 3.) kissattach /dev/ttyS0 ax0 Note: You have to set up ax25 configuration files in /usr/local/etc/ax25, especially /usr/local/etc/ax25/axports to be able to do so. Read the AX25-HowTo on how they look like. Here is an example for axports: # /etc/ax25/axports # # The format of this file is: # # name callsign speed paclen window description # sm0 DG1KJD-8 9600 255 7 SoundModem fsk9600 ax0 DB0AI-10 38400 255 7 KISS link to RMNC dscc0 dg1kjd-1 9600 255 7 DSCC-4 Port 0 dscc1 dg1kjd-3 9600 255 7 DSCC-4 Port 1 dscc3 dg1kjd-4 9600 255 7 DSCC-4 Port 3 4.) ifconfig ax0 hw ax25 db0ai-10 up Set callsign and start interface. 5.) axparms -route add ax0 db0ai-1 Set route to DB0AI-1. 6.) call ax0 db0ai-1 Try connect to db0ai-1 Or simply use linkt instead of 5.) and 6.) . You may want to put the configuration steps 1-4 into a system startup script so that you don't have to enter them everytime after reboot. If you want to use TCP/IP you need to configure the IP coupling interface ipax0 which provides advanced features such as VJ header compression over VCs and a "protocol booster" (little piece of trash that increases TCP sessions over slow AX.25 links). Take a look at the setpciscc manual page (man setpciscc) for an idea about how this works and take a look at the AX25-HowTo. Have fun, 73 + 42, -- Jens Here are some still-applicable paragraphs from old release notes: ------------------------------------------------------------------------------ release-notes-ax25kernel-2.2.13-kjd-1 ===================================== G'day. This file contains release notes for the ax25-kernel patch against 2.2.13. Right now it is pretty small. For additional information you should really read DG2FEF's notes at http://dl0td.afthd.tu-darmstadt.de/~dg2fef/ax25. However, I am sure there are still a lot of topics which still need to be documented. Known Bugs with this release: ============================= - ax25 socket autobind does not work, will cause oops - sethdlc still causes problem on soundmodem mode list Soundmodem: =========== The new modulators/demodulators are available, but these modes must be selected with the sethdlc utility: sethdlc -i sm0 -p mode wss:fsk9600_5.fsk9600_5_30 To use sample rate of 48 KHz (5*9600) on TX and 48 KHz on RX, interpolated to 30 samples per symbol using the RX fractionally spaced FIR filter. RX filter and TX filter (TX impulse shape) can be dynamically get/set with these modes using the smfilter tool from ax25utils. Default are filters pre-calculated by Alex, DL8AAU as presented on the last international packet radio symposium. These are pretty well suited for loopback response. You can also use the standard demodulator by using the old mode: sethdlc -i sm0 -p mode wss:fsk9600_5.fsk9600_5 Note that only WSS cards accept sampling rates of 48 KHz. Soundblaster cards need 44.1 KHz: sethdlc -i sm0 -p mode sbc:fsk9600_4.fsk9600_4_32 Forward error correction is not implemented, until we have some link layer protocol that makes some real sense of doing so. PCISCC-4 driver: ================ This driver should be rock stable now. Please note that when configuring an interface, no matter whether global or local configuration settings, all interfaces of the controller in question must be down. Otherwise you will get -EBUSY. How to set up an interface with kernel-AX.25 ============================================ This section is copied from the setpciscc manual page, but in principle it applies to all devices: ------------------------------------------------------------------------------- When the module is inserted (or at kernel bootup respec- tively) the PCISCC-4 boards are recognized and for each board four interfaces are created, the first board gets the interfaces dscc0 to dscc3 which represent the connec- tors SCC0 through SCC3. The default interface configura- tion (suitable for DF9IC modem at 9600 bps with pretty conservative TX-delay and -tail settings) is copied to the interfaces. The configuration can be changed using the setpciscc command with the -g and -d switches. After this step is finished a MAC address can be assigned to the interface in question and the interface can be upped: ifconfig dscc0 hw ax25 dg1kjd-8 mtu 256 up The transmitter will be keyed for a short time while the transmit bit rate is probed. When this was not successful, a message will be printed telling you so. The interface will be up in any case, but later if you try to send some- thing a TX hang will be detected and the driver will down the interface again. The configured interface is ready for operation in princi- ple now. You can check that by adding an AX.25 route axparms -route add dscc0 db0dar and connecting that node: call dscc0 db0dar Of cause I assume you got the ax25-utils compiled and working by now. If you want to go into TCP/IP, configure the IP coupling interface: ifconfig ipax0 44.130.24.229 hw ax25 dg1kjd-9 mtu 1200 up Add host route to one of your neighbours and default route: route add -host 44.130.25.80 ipax0 route add default gw 44.130.25.80 Add ARP table entry for your neighbour: Of cause an AX.25 route is also mandatory... axparms -route add dscc0 db0ais-10 db0dar And you should be ready to go... ping -i 20 44.130.42.3 -------------------------------------------------------------------------------