Home page of WD4NMQ

Jeff Pierce, wd4nmq Mail me questions or updated info

Yamaha Venture.

Home page of Jeff Pierce, wd4nmq, This Home page is under construction.It will eventually contain information about and pretaining tothe Linux operating system, Ham Radio, Radio Control aircraft and motorcycle touring.Please bear with me as I explore how to set up and maintaina home page. Thank you.


This is just a quick hack to test out my decoding of the packets exchanged between the ilink/echolink server and a client system. It is released under the GNU GPL license for non-comercial use.
It will connect to the server specified and allow you to:
log on
change status
get stations
log off
list stations by repeater, link or user node type
To build, first edit the code placing your password and call in the PASSWORD and CALLSIGN defines.
Then build with cc -o ilinkserver ilinkserver.c
and execute ilinkserver server1.echolink.org.

Right press here and select 'Save as' to download ilinkserver.c Linux ilink server code.


The PIC code included on the original WB2REM/VA3TO iLink first generation radio interface boards has a serious problem concerning the PTT timeout timer. There isn't one. What that means is that should either the iLink sysop program or Windows itself were to crater while the PTT were asserted, it would remain asserted, the radio keyed, until either power is removed from the interface board, Windows is rebooted and iLink sysop app is restarted or the radio melts down.

The code I have available here is completly compatible with the original code for WB2REM/VA3TO first generation interface boards. The big modification I have made is that when the "T" command is sent to the interface to key the transmitter, a 4 minute timer is started. If an "R" command is not sent to the interface, which unkeys the transmitter, within that 4 minute window, the code releases the PTT. After a timeout has occured, the code continues watching for commands like nothing had happened.

I have talked to several link/repeater operators who have mentioned this has happened to them. Remember, even if you have an auxiliary radio link to, it won't work if the Windows sysop app isn't there to respond to the touch-tones.

Right press here and select 'Save as' to download timeout.hex PIC code.

The plans and software for a very simple PC parallel port programmer is available at http://www.covingtoninnovations.com/noppp/ There is also information on some PC serial port programmers available on the web.

Yamaha Venture Intercom Pinout

Pinout diagram for Yamaha Venture intercom headphone system. This diagram is provided by Joe Patrick.

Click on thumbnail to view Full size Drawing

1983 Yamaha Venture XVZ1200 Service Manual Exploded Drawings

I recommend that you download these file and view them locally. They average about 100k in size.

Cooling System Drawing Crankshaft Drawing Cylinder head Drawing Electrical 1 Drawing Electrical 2 Drawing
Final Gear & Drive Shaft Drawing
Front Brake Drawing Front Fork Drawing Front Wheel Drawing Middle Gear Drawing
Rear Shock Drawing Rear Wheel Drawing Steering Head Drawing Swingarm Drawing Transmission Drawing
Carburation Drawing

APRS Tracking Program in Tcl/TK
that runs on both LINUX/X and WINDOWS95
and uses the on-line TIGER map service
to get maps
Version 1.0 Beta, Jan 6, 2000

Missing house1.gif has now been included in the zip file, sorry.

Version 1.0 Beta - Click on image for full size APRS window
Released under GPL License
OS Platforms: Linux/Unix, Macintosh and Windows95/98/NT
I have personally tested it on Linux 2.0.30 and Windows 95 making NO source code changes.
I really need some others with other OS's to try it and let me know.

Tcl/Tk versions needed:
For Linux 8.0 or later.
For Windows, 8.2 or later. fileevent handling for serial ports was not supported in tcl for Windows until 8.2.

Mapping options:
Enter coordinates and map resolution (size in latitude degrees) by hand.
Display the latitude and longitude of the mouse's position in the map.
Left mouse click re-centers map on that position.
Right Mouse click zooms in 2x on that position.
Shift-Right mouse click zooms out 1/2x on that position.

This program is intended to provide an Automatic Position Reporting System , APRS, that runs on Windows, Mac's, and Linux/Unix systems WITHOUT having to worry about system specifics and having to worry about keeping seperate source trees. The only change required in the source is specifying the serial port the TNC is hooked to.

This application also uses the US Census Dept.'s Tiger map service available at http://tiger.census.gov home page . The actual map server software is at http://tiger.census.gov/cgi-bin/mapgen. Follow the home page links to see how it is used.

THIS IS NOT A FULL UP APP LIKE winAPRS and javaAPRS. It was really a learning expierence for the APRS system and Tcl/Tk to keep me occupied during Christmas to New Years vacation I took. Now that I'm back at work and kids are playing ball again I will not be able to give a lot of development time UNLESS there is a reason to. That means people actually using the program and contributing ideas and code.
Yes, code. What I would like is for this to take a life of it's own and be developed by others via the web like Linux did. Albeit at a smaller scale. That is why I chose Tcl/Tk. So anybody can use it no matter what os platform they are using. Tcl/Tk is a scipting language like Perl, and it is FREE!!!!! Just go to http://www.scriptics.com and follow the links.
The only APRS frames supported at this time are those starting with "=" and "!" with no time extraction. The symbols are not decoded yet. All stations are shown as a house.
There is still quite a bit to be done to really make it a full blown app and I hope that this will help get the ball rolling and others WILL contribute to the expansion of the app. I will gladly try to coordinate this effort.
Tcl/Tk is really not that bad, with a lot of net support and expansion packages already developed by others. Restrictions at this time:
1. TNC must be set up BEFORE program is run.

Future enhancements: (By me or others, hint, hint)
Add all formats.
Decode symbols
A database of stations plotted so that they can be added to a new map immeadiatly
Handle graphics off screen so mobile stations are "moved"
Load maps saved to disk.
Save maps to disk for future use
Cache maps so that needless repeat downloads are needed, Tiger map server can be slow.
Add support for connecting to APRS servers that are popping up on the web.

To get the code:
tigerAprs.zip - the Tcl/Tk program.

Some good Tcl/Tk sites with code and tutorials to get started.

Tcl/Tk TS140/440/940 Control Program
Version 1.1 Dec 16, 1999

Version 1.1 changes:
Fixed a bug detecting an error on frequency out of range.
Added key binding to the key pad widget. Use the 0-9 for entering a frequency and the "c" key to clear and the "e" key to enter it.
Up and Down arrow keys move frequency.

After several false starts, and waiting for the Windows version of Tcl/Tk to include a fileevent command that also worked for serial ports, I have finally got a control program for the Kenwood TS-140/440/940 line of amateur radio transceivers that runs under Linux and Windows using the exact same source file. In fact, it should run on any OS that Tcl/TK 8.2.2 has been ported to.

As you can see there is is a noticable difference in the appearance of the GUI. I think this has to do with the way fonts are handled, and for my money, the X version is much better. I guess that a person could go through it and put if's conditional on the OS to make it more tailored.

A quick operation and setup tutorial.

The only code change required for different OS's is in the selection of the serial port. since each specifies it differently. In my setup I use Linux /dev/cua1 and Windows COM2:. Change these to the appropriate ports for your setup.

The main tuning knob is a tcl implementation originally authored by Roger E Critchlow and is available at http://purl.org/thecliff/tcl/wiki/569.html. It is a "variable output" dial. The closer to the center you click and hold the mouse, the larger the increment change. Around the edge the change is about 10-20 hz and about 30 Khz toward the center. Using the Up and Down arrow keys changes the frequency by 10 Hz increments.

The frequency may also be changed by using the keypad widget. Just use the mouse to enter the frequency. Selecting the "C" key just zeros the display and the "E" key sends the frequency to radio and zeros the display. Also, when the mouse is in the keypad widget the keyboard can be used to enter the frequency with the "c" key clearing and the "e" and Return keys entering the frequency.


This code is no where near what it can be. It started out as a way to learn Tcl/Tk with the purpose of developing code to run under both Linux and Windows with little or no code changes. I plan to add memory channel selection/programming and the such. Also, in this version is a test to see if another host is selected. If so, it opens a tcp/ip connection to that hsot using port 9734 (an arbitrary port number at this point). My main goal is to have the radio remotely operated. Using something like GSM encoding for audio transfer. The radio server is just a simple server that listens on both the tcp port and the serial port and sends what is received on one out the other.

To get the code:
kentcl.zip - the Tcl/Tk program.
serialserver.c.gz - A simple serial server program for Linux/Unix.

LINUX Xforms TS140/440/940 Control Program

A Linux/Unix program that runs using the Xforms 0.86+ library available from http://world.std.com/~xforms

Click on thumbnail to view Full size Facplate

Right press here and select 'Save as' to download program.

It has the following features:

Mode seletion.
VFO A or B selection.
Split VFO enable/disable.
RIT enable/disable and change.

The frequency may be changed several ways.

The main dial can be used. 
Pressing the left mouse key and moving the dial causes frequency
change in 10 hz increments, about 100 hz per rotation.
Pressing the right mouse key and moving the dial causes frequency
change in 100 hz increments, about 1 Khz per rotation.

By placing the mouse over a particular digit and clicking a mouse button.
Clicking the left button INCREASES the frequency by that digit. Example, displayed
14.200.00, place the pointer over the '2'(100 Khz) and click the left button and
the new frequecy will be 14.300.00. Clicking the right button DECREASES the

Using the keypad. Entry is either by keyboard or mouse. The 'c' key will clear
the entry and the 'e' or 'return' key will enter the frequency.

The first ten memories are read and displayed in a browser box. Double clicking
on one will tune the radio to that frequency and mode.

Download area. - Find all files, including the ones above.