KISS for AVR

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

KISS for AVR

SSH Attacks

Today i faced some SSH Attacks from 3 different Servers. First i noticed unusual traffic at the network device. Looking to the traffic closer showed that it was SSH traffic. It seemed that it was a attack to break the Root password. SSH Login for Root is now disabled… Let´s see :(

New Version of GPS2LCD Software (V1.0)

I continued to hack my AVR software that displays GPS data on a 4×27 character LCD.
Now the software converts all the data into number format and uses this data to write to the display.
The advantage is that you might do some calculations with this data.
I wrote a routine that calculates the Maidenhead locator. This is now printed to the display as well
including the extended subfield. If Pin PD2 is pulled up the firmware prints all the received data
out to the UART again. For that it is possible to give the data to a existing APRS tracker or to the PC.
So far i saw no data loss at a speed of 4800 baud.
See a picture and find the archive below…
gps2lcd_10

GPS2LCD Version 1.0

GPS2LCD Version 1.0

Eigenartiges Routing Problem …

Seit einiger Zeit habe ich sporadisch das Problem, dass die Netzwerk Verbindung zu meinem Netzwerk Server Rechner für einige 10 Sekunden ausfällt.
Heute bin ich der Sache mal etwas nachgegangen und habe folgendes Problem eingekreist:
Die Netzwerkstruktur ist, dass ich einen DSL/WLAN Router habe. An dem ist ein Windows Rechner über WLAN angebunden. Über Draht gehts zu nem Switch und dort hängt auch ein Windows Rechner sowie der Server, welcher unter Ubuntu läuft. Hier laufen verschiedene Dienste, z.B. ein UPNP Server (Mediatomb).
Jedes mal, wenn der WinXP Rechner im WLAN eingebucht ist und der Mediatomb auf dem Linux Broadcasts an Port 1900 schickt ist für ca. 30 Sekunden die Netzwerkverbindung von allen Rechnern zu dem Linux Rechner weg. Auch die Pings vom Windows Rechner, der direkt am Switch hängt kommen nicht durch.
Es tritt wirklich nur auf, wenn der Win Rechner im WLAN Netzwerk ist. Auch ein zweiter Win Vista Rechner im WLAN verursacht das Problem. Nicht aber mein Windows Rechner, der direkt an dem Switch ist.
Wenn das Problem auftritt flackert auch die LED für Traffic auf dem Port zur Linux Kiste nicht. Die Pings gehen also offenbar über keinen Port mehr raus.
Meine Vermutung ist also, dass der WLAN Router, wenn ein Windows Rechner im Netz ist und der Mediatomb broadcastet aus irgenteinem Grund die MAC Route zu dem Linux Rechner zerstört und das auch an den Switch weiterleitet.
Einen anderen Switch oder Win Rechner über Draht am Router habe ich noch nicht versucht.
Übergangsweise ist der Mediatomb auf dem Linux Rechner also erstmal abgeschaltet…

Printing GPS information to LCD

Today i tried to code a small programm that displays information from a GPS receiver on a LCD display. It receives the data via the UART and searches for the GPGGA dataset. If one is received the information (character strings) is written to a 4×27 character HD44780 display. Currently there is no convertion of the data to numbers and no calculations too. A future version might calculate the Maidenhead locator and the distance to a certain coordinate. At my side the programm is running on a Atmega8535 at 16MHz.

GPS2LCD Version 0.8

GPS2LCD Version 0.8

gps2lcd_08

Alix1.C Mini PC

Für alle, die sich mal gefragt haben, wie klein ein “Zuhause-Server” sein kann hier mal ein Bild von dem Rechner auf dem dieses Blog läuft.

Es handelt sich um ein Alix1.C Board mit Geode LX. In das Gehäuse ist noch eine 250GByte 2,5 Zoll Festplatte eingebaut. Auf dem Rechner läuft der Webserver mit Blog, ein Multimedia Streaming Server, die AX25 Router Software XNet, Samba als File- und Druckserver und einiges mehr.

Der Stromverbrauch inclusive Netzteil wurde mit 11Watt gemessen.

Alix1.C Board in Betrieb....

Alix1.C Board in Betrieb....

UART2LCD

Just for fun i hacked a short program for Atmega that prints all the stuff that comes in at the UART to a 4×27 character LCD. The lines are wrapped automatically. Different baudrates can be selected via 3 input pins. Unfortunately printing to the display is not fast enougth. For that reason characters get lost if you send the complete input for 4 line at once in case a UART speed greater than 19k2 is used.
Future feetures might be:
– improvements to avoid loosing characters from the UART
– adding a mode that cuts lines longer than 27 characters instead of wrapping them
– adding keyboard input possibility

uart2lcd_09