I setup a new PC and tried to get Linpac AX25 terminal working again.
This was not so easy since calling some standard functions has changed since the last release of Linpac in 2003. It compiled on a Xubuntu 12.04 system.
If you need the sources just send me a mail. I have put the tgz of the sources to my Download page.
Am letzten Samstag fand in Dresden ein Treffen zum Thema Datenfunk im Amateurfunk mit Schwerpunkt Hamnet statt. Ab 9 Uhr gab es Gelegenheit, sich zu Technik zu informieren und rege über Planungen für die nächste Zeit zu diskutieren. Die 16 Teilnehmer kamen aus Sachsen-Anhalt, Sachsen, Brandenburg und Berlin.
Mehr Informationen sind in der Yahoo Gruppe http://groups.yahoo.com/group/digafusax/ zu finden.
Since friday/saturday the digipeater DB0TUD operates with a DLC7 (data link controller). This makes the setup even smaller and consumes less power. A further advantage is that the XNET runs native on this hardware which should result in higher datarates although the CPU speed is much less than at the former linux/MIPS solution.
The 76k8 user port and the 19k2 link towards DB0PU use the both modems connected to the internal SCC’s.
The 9k6 user 70cm, 9k6 user 23cm (currently offline) and 9k6 link DB0DSD are operated with a TNC2 and a TNC3S connected to UART2 of the DLC7. The connection towards mailbox and TCP/IP services goes via ethernet. The serial terminal port remains unconnected for services.
digital parts of digipeater setup at DB0TUD
Today i tried OpenWRT backfire 10.03 with AX25. Last versions i had hard problems getting ax25 compiled for brcm47xx and also problems with the floting point emulation inside the kernel. First made usage of the native linux ax25 tools impossible and last prevented usage of the popular ax25 router software xnet (which is unfortunately closed source). Either one or the other worked.
Today first the AX25 stuff was not build as well when i selected kmod-ax25 inside “make menuconfig”. But after i selected the ax25 kernel support inside “make kernel_menuconfig” suddenly the kmod-ax25 module was build. That happened never before ;) I also switched on kernel FPU emulation which is off per default. And what should i say. Also XNET worked after i flashed all the stuff to the router. So OpenWRT backfire should be an excellent point to start AX25 operation with.
I created a new yahoo group for communication about digital amateur radio topics in our local area. E.g. planning link-tests.
Last weeks i tested D-Star. Jan Alte, DO1FJN developed a digital voice modem PCB which can be mounted to the C5 cellphone from Siemens. The modem firmware and the user software that runs on the phone´s microcontroller is still in development but it does quite well already. I made a qso via the repeater DM0MW in Mittweida and also a direct qso with Peter, DL5DTL here in Dresden.
Overall the voice quality of the AMBE codec used in D-Star is not satisfying and FM sounds much better at the same signal level. The advantage of D-Star seems to be that you can carry data while doing a voice qso and you can receive a data channel on a repeater frequency. But is it worth investing the money for that ?
Anyway the modem from Jan is really impressive because the firmware is open source and it features a AVR32 microcontroller as well as an CPLD which enables to implement also other standards like APCO25, POCSAG or Packet Radio on it. Sounds it can be an interesting platform for implementing new ideas.
Last day´s i continued working on my HDLC/AX25 KISS TNC software. It is far away from beeing finished but may be useful for someone already.
What´s it ?: You can connect an RF modem with NRZ or NRZI coded output. I just tested 1k2 and 9k6 bps AX25 modems. The microcontroller (currently Atmega644) decodes the frames and forwards it to a host PC via a serial KISS interface. This interface supports plain KISS, SMACK and RMNC-CRC-KISS. What´s not in this version is the CRC check for the received packets. This will be one of the next steps.
What it should be somewhen: A complete KISS/SMACK TNC which uses an external modem. Most probably this will not work on a Atmega644 because of the RAM limitations. I try to get it into an Atmega8515 with external SRAM. Another option might be a Atmega1281 or 1284 without external memory. For 1k2 (not sure for 9k6) is would also be possible to add the modem functionality directly to the microcontroller and therefore to safe the external modem.
AVR HDLC decoder source
These days i wrote some code to dig into packet radio. I started with some coding to implement KISS (keep it simple and stupid) that was invented in 1987 by KA9Q and K3MC. It is a small protocoll that is similar to the Serial Line Internet Protocoll. It is used to transfer HDLC data over a asyncronous serial interface. KISS adds some capabilities to control some radio parameters for wireless transmissions. At the picture you see the result so far. Data can be received via the serial line. The SLIP decoding is done (removing FEND´s), control parameters are extracted. In addition the path in the header of the transferred AX25 frame is decoded and printed to the display (which is just for understanding all the stuff).
My goal is to design a small KISS/SMACK terminal node controller that can interface a HDLC modem or even do the AX25 frame generation on its own.
Most probably it would be necessary to add some more RAM in order to get enougth frames buffered for transmission. Currently i use a Atmega644 with 4kByte of SRAM. I plan to add external memory to a Atmega8515 but maybe it is cheaper to use one of those new XMEGA´s with 16kByte…
For sure, just for doing some APRS stuff less memory would be sufficient.
KISS for AVR
… Kamikaze 7.09 and Kernel 2.6.22.
It took a while but finally i got it ;)
Compiling a Kamikaze with build in AX25 support, manual copy of crc16.ko because the package is not built automatically. Afterwards install stty manually because i did not know whether the serial port was working with the correct speed. In the end i discovered that you have to set the correct speed in /etc/ax25/axports because this number is used by kissattach to overwrite the value that was set before. Nice to know. This was not the case some years ago.
The connection from the terminal to my XNET TNC3S looks like this: