Como parchear una Eprom KISS

Página de interés histórico: información no actualizada desde el año 2003

Todavía es frecuente el uso de TNCs en Modo KISS, sobre todo si trabajamos Packet-Radio en TCP/IP.

En estos casos, lo mas útil es equipar la TNC con una Eprom "Solo-KISS" en lugar de usar la Eprom habitual que exige teclear los Comandos "kiss on" y "restart" para entrar en Modo KISS.

Las Eprom "Solo-KISS" que he encontrado en la Red para TNC2 y sus clónicos son estas:

Una vez instalada cualquiera de esas dos Eprom Solo-KISS en nuestra TNC, ya sólo nos queda fijar los Parámetros de Acceso al Canal de Radio en nuestro Programa de Packet-Radio, que los enviará a la TNC y esta los aceptará, sobreescribiendo en la Ram los parámetros por defecto leídos desde la Eprom.

Sin embargo, hay situaciones en las que nuestro programa de Packet no envía parámetros a la TNC, aunque si envía y recibe las tramas AX25 correctamente.
Esto sucede, por ejemplo, al usar FlexNet con su Driver KISS, que ha sido diseñado para comunicarse por RS-232 con otro FlexNet, y no para controlar a una TNC KISS.
En esta situación, el TxDelay está fijado a  50  ( 500 mseg. ) en la propia Eprom , valor sin duda exagerado hasta para una transmisión de 1200 bps y completamente inadecuado a 9600 bps.

Asi las cosas, no queda mas remedio que editar el contenido binario de la Eprom y cambiar el valor por defecto de esos parámetros por los valores que estimemos adecuados a nuestro caso particular.

En la siguiente tabla podemos ver la ubicación de esos parámetros en el archivo TNC2KISS.BIN, asi como sus valores por defecto:
 

Parámetro
Situación (Hex)
Valor (Hex)
Valor (Dec)
TxDelay
 013C
 32
 50
Persist
 0141
 40
 64
SlotTime
 0146
 0A
 10
TailTime
 014B
 03
 3
TNC2KISS.BIN es la Versión 3.2 de KISS para TNC2 y sus clónicos.
Se identifica fácilmente porque en los Bytes 4 a 16 podemos leer:  v.32 26Mar 87



En esta otra tabla podemos ver los mismos datos para el archivo KISSV4.BIN :
 

Parámetro
Situación (Hex)
Valor (Hex)
Valor (Dec)
TxDelay
013D
32
50 
Persist
0142 
 40
64
SlotTime
0147 
 0A
10
TailTime
014C
 03
3
KISSV4.BIN es la Versión 4 de KISS para TNC2 y sus clónicos.
Se identifica fácilmente porque en los Bytes 4 a 16 podemos leer:  v.4 11 Dec 89

Ambas tablas muestran el valor de cada parámetro en Hexadecimal y en Decimal.
Para convertir de uno a otro podemos usar la Calculadora Científica del Windows.
En estas Eprom, los tres parámetros de tiempo van en unidades de 10 milisegundos.
La Persistencia puede ir desde 0 hasta 255 en Decimal, o sea, desde 0 hasta FF en Hexadecimal.

Por tanto, según vemos en las tablas, ambas Eprom asignan por defecto un TxDelay de 500mseg. , una Persistencia de 64, un SlotTime de 100mseg. y y TailTime de 30mseg.

Mediante un Editor Hexadecimal podemos modificar el TxDelay y/o cualquier otro parámetro en los archivos .BIN.
Después mediante un Grabador de Eprom volcamos el archivo editado a la Eprom.

En mi caso, para pruebas con un Nodo en un canal de 1.200 bps poco usado, he modificado el TxDelay a 250mseg. y la Persistencia a 196 , manteniendo SlotTime a 100mseg. y TailTime a 30mseg.


Volver a la página de cacharreo de EA7GLU