XRPi Home

Documentation Index
Alphabetic Index

XRPi Documentation - Interfacing

YAM Modem

Name

YAM -- "Yet Another Modem" HDLC Modem.

Description

The "YAM" modem connects to a COM port, and implements the functions of a TNC in a FPGA (Field Programmable Gate Array).

XRPi includes support for the YAM modem, and the interface should be defined in XROUTER.CFG as follows:

	INTERFACE=10       <- Adjust to suit
		TYPE=YAM
		COM=/dev/ttyUSB1           <- COM port to which YAM is connected
		MTU=256
		SPEED=1200      <- Radio speed (not serial comms speed!)
		PROTOCOL=HDLC   <- Only HDLC supported at present
	ENDINTERFACE

SPEED is the *radio* baud rate and should match the modem's configuration, otherwise TXDELAY and TXTAIL timings will be wrong. You can omit SPEED and define RFBAUDS in the port instead. Communication between between XRPi and YAM via the RS232 cable always takes place at 19200 bauds.

PROTOCOL *must* be HDLC. No other protocols are supported at present.

Each YAM interface supports only one PORT. You must use a separate INTERFACE and PORT for each YAM board. A typical PORT might be defined as follows:

	PORT
		ID=YAM 1200 Bauds 144.650MHz
		INTERFACENUM=10
		CHANNEL=A
		SPEED=1200
		FULLDUP=0
		TXDELAY=150
	ENDPORT

CHANNEL is ignored, but must be present. FULLDUP can be used, as the YAM is capable of full duplex operation, but SOFTDCD is ignored because it has no meaning for a YAM board.

YAM will INTERLOCK with other YAM interfaces and with all types of SCC card, but not with KISS TNC's since XRPi has no knowledge of, or control over when a KISS TNC is transmitting.

Notes

The YAM modem uses TXD, RXD, RTS, CTS, DTR, DSR, RI and DCD so a full 8 wire plus ground cable is required.

Some PC's either don't provide enough DC voltage/current to supply the YAM board or the RS232 inputs sink too much current. This is a hardware problem, not an XRPi problem. It can be overcome by using an external supply to power the YAM board.

XRPi does not program the FPGA therefore YAM modems must be initialised by running a suitable initialisation program before starting XRPi. It is probably best to do this in a startup script file.

In the DOS days this was done by YAMINIT (supplied with the modem). "YAMINIT yam12v11.mcs 1" would program the YAM for COM1 with 1200 baud RF speed. The YAM is capable of 1200, 2400 or 9600 baud simply by choosing the appropriate .MCS file.

It is not known if there is an equivalent Linux program to YAMINIT. If not, and if there is suitable interest, we might be able to adapt it or incorporate the code into XRPi itself.

For further information you must refer to the YAM manufacturer's documentation.

Caveats

YAM has not been tested since the XRouter code was ported from DOS to Windows. Reports would be welcome.

See also

XROUTER.CFG(8) -- Main Configuration File.