NEW - Kantronics KAM hostmode driver (including newly revamped HFDD code) By Maiko Langelaar / VE4KLM - 20 March 2007 This is BETA, expect some issues here and there. This software update is being made available so that people have something to play with. In actual fact, I have found this version to be very stable and consistent, and it is actually what I now run in my so called production environment. More updates will appear down the road, for example, a switch so that people can use GTOR instead of PACTOR for example. This is simply the first release. Please report any problems. HOPEFULLY, I have not forgotten anything :-) 1. Introduction ------------ I have revamped alot of the HFDD code, resulting in greater stability, and more consistent operation. The latest addition to the HFDD code is a hostmode driver for Kantronics KAM modems. This first release of the new revamped code will let you run a KAM (version 6.0 or higher) in Pactor mode on a JNOS 2.0e system. Remote pactor users can connect to JNOS and forward mail back & forth, and JNOS itself can initiate a pactor connect to remote systems and forward mail back and forth as well (this second part where JNOS is the client is not ready yet for this first release, but the code infrastructure is in place). As well, you can have JNOS send unproto (FEC) beacons to let people know that your system is on frequency, or to help remote stations tune up your signal. NOTE : This update is in the form of a software patch. This patch can only be applied to JNOS 2.0e source, nothing earlier ! 2. How to install the patch on your JNOS 2.0e source distribution -------------------------------------------------------------- NOTE : the software patch can only be applied to JNOS 2.0e source code ! Follow these instructions below to patch your existing 2.0e source : * place the file 'hfddupd1.tar.gz' into the SAME directory as your current JNOS 2.0e source code, then from that directory uncompress the file using the following command : gunzip hfddupd1.tar.gz * then extract the files using the following command : tar xvf hfddupd1.tar * recompile your JNOS using the following commands (one after the other) : make clean make * move your new JNOS executable into your JNOS runtime directory (ie, /jnos). 3. Configuration ------------- A) Plug your KAM into a free serial port on your linux box, make sure you have no GETTY (login) processes, mouse drivers, etc, running on that particular serial port you have chosen to use for the KAM tnc. Note the device name, for example - /dev/ttyS1 - you will need it further below. B) Edit the kam.cfg file you downloaded - using nedit, gedit, vi, pico, emacs, or whatever other favorite linux editor you like to use. All you need to do is change my callsign (VE4KLM) to your own, then save the file, then exit. C) Your autoexec.nos configuration file will require the following entries : # Attach the KAM modem (change ttyS1 to whatever device you are using) attach asy ttyS1 - hfdd kam 4096 256 9600 # Describe the port ifconfig kam desc "hf - Pactor on 20/30/40" # Tell JNOS you are using the KAM for pactor param kam Pactor 1 # Start listening for Pactor requests hfdd server kam start 4. Start (or restart) JNOS ----------------------- Once you have done all the above, simply start JNOS (or restart it) if you had it running already. If all goes well, you will see something like the following in the jnos runtime log file (example only) ... root@sith:# tail -f /jnos/logs/20Mar07 20:08:44 - JNOS 2.0e (Linux) was stopped (0) 20:08:44 - Core: 1484, Up: 0:00:00:42, Logins: 0, Users: 0, Count: 0 20:08:44 - Sent: 0, Read: 0, Rcvd: 0, Fwd: 0 20:08:45 - allocating maximum of 4 Axip (axudp + axip) devices 20:08:45 - allocating maximum of 2 dynamic gateways for routes 20:08:45 - using new [tun0] device 20:08:45 - tun_rx - listening for packets 20:08:47 - attaching HF digital device ... 20:08:47 - start hfdd server on port [kam] 20:08:47 - JNOS 2.0e (Linux) was started (availmem=3085574144) 5. Plug and Play - A quick note before we continue ----------------------------------------------- The whole idea behind part of this project was so that all one had to do was plugin their KAM and JNOS would do the rest. The configuration file, kam.cfg, is very important to this. The only thing you should change in the file is the callsign (of course). Now of course, if you decide to PERM the settings in the kam.cfg (which is probably not a bad idea), then you can slim the kam.cfg down to simply setting the KAM in host mode (the last two entries). NOTE (and a bit of a disclaimer) : I am led to believe that you are only allowed a finite number of PERM operations. In my kam.cfg I start off by restoring factory defaults. I DONT KNOW if doing the restore counts as a PERM operation or not. So I would suggest you take the kam.cfg, PERM it, then strip the kam.cfg down (ie, take out all but the last 2 entries). I don't want to have people screaming at me one year down the road, and saying they have run out of PERM space (if that makes any sense to anyone). 6. initializing the KAM after starting JNOS, and moving on ------------------------------------------------------- Once you have JNOS running with the KAM, power the KAM OFF and ON. If all goes well, JNOS will initialize the KAM, and automatically put it into the proper HOSTMODE. If the KAM stays powered on, then it *should* stay in host mode the whole time. At this point, JNOS should be ready to respond to any Pactor requests that the KAM picks up. I did all my testing using an Airmail client. I connected to JNOS using Airmail, and once I was connected, I was able to flawlessly forward from Airmail to JNOS and reverse forward from JNOS to Airmail all in the one and only connection. NOTE : Under Airmail TOOLS / OPTIONS /SETTINGS, use the BF (binarly level 0) setting if you plan on forwarding text based messages between JNOS and your Airmail client. Sorry, B2F not available (yet) and might not be. 7. Sending email DIRECT (yes DIRECT) from Airmail to JNOS over Pactor ------------------------------------------------------------------ Once connected to JNOS via the KAM in Pactor mode, you can actually compose an email in Airmail so that on the next PACTOR (BBS) connect, the email will be taken by JNOS and DIRECTLY sent out to the internet. All you have to do is when you compose a new message in Airmail, just use a VALID INTERNET EMAIL ADDRESS in the TO: field and make sure POST VIA: is set to the callsign of the JNOS pactor server. That's all you have to do. Leave the Email Gate: field blank ! It's not required for JNOS server. 8. JNOS and the KAM have suddenly stopped *talking* to each other -------------------------------------------------------------- IMPORTANT : From time to time, or in a fluke situation, you will find that JNOS will have lost communications with the KAM. I found that in some cases, while waiting for a DISCONNECT to occur, the KAM would not come back with the proper message saying so. As a result, it's stuck in HOSTMODE, but JNOS is mixed up. One solution in that case is to simply take the KAM out of host mode, which *should* force JNOS to reinitialize the hostmode again. YOu can do this from the JNOS command console, using a command similar to the following : hfdd server kam exit where 'kam' the port (interface) name 9. How do I transmit a unproto beacon from JNOS to HF ? ---------------------------------------------------- Make sure you listen on frequency, and if there is no traffic, then you can issue the following command to send out an unproto (FEC) beacon : hfdd server kam unproto This will cause the TNC to send out a (presently hardcoded) BEACON : INTERNET GATEWAY 10. One last note - Take it slow ---------------------------- One last note. Give JNOS at least a minute between subsequent pactor sessions, in other words, after you disconnect from a pactor station, wait a minute or so before trying again. Same thing with issuing the 'hfdd server kam unproto' or 'hfdd server kam exit' commands. Just wait a minute or so after you have issued these commands, before you do do them again. I have not yet put in place all *safeguards* necessary to avoid conflicts if you have stuff going too fast one after the other. The hostmode needs time to respond to TNC commands, etc. Future updates will better address that, but for the most part, it should not be that big of a problem for people. Feedback is always welcome. I hope people will actually try and use this. I think you'll be happy with the results. This is by far the best one !