Building a DLink DSL-502T Based IGate - TNC Schematic and Firmware

As mentioned elsewhere the TNC we use in the Igates is based on the ATMega8 based TNC design from Henry Carl Ott (N2RVQ).

For those interested in constructing their own here is the schematic

Mega8TNC Schematic

and version 1.9 AVR TNC firmware.

The firmware is a slightly modified version of N2RVQ's version 1.8 firmware which we call version 1.9.  

The difference is a startup delay to prevent the TNC transmitting via the serial port and preventing the DSL-502T from booting.

When programming an ATMega8 with the firmware ensure you set the fuses to 0xDA (High) and 0xBF (Low).   Incorrect fuse settings will prevent the chip from starting correctly.


DSL-502T IGate Front Panel LEDs

There are 5 LED's on the front of the DSL-502T.
DSL-502T IGate Front Panel 
Not much to say about the Power LED.  If the power is connected it should be lit.
The Status LED will start flashing as the unit boots and once the boot process is complete it will continue flashing at a slower rate (approximately once per second) as a "heartbeat".
The third (ADSL) LED does nothing.  Unfortunately it is not connected to a GPIO pin so we can't do anything useful with it.
The fourth Ethernet/Network LED has three states:
Off = Only during the initial stages of boot.
Flashing = Could not get an IP address on the network.  Check your network connection and that you have a DHCP server somewhere that will allocate an address.
On = Network running and IP address correctly assigned.
The USB/APRSD LED has three states:
Off = Only during the initial stages of boot.
Flashing = Could not find a configuration file for this unit at  The configuration files are named with the Ethernet MAC Address of the unit.
On = Configuration file loaded and aprsd running.
So if everything boots OK and is operational then the Power, Ethernet and USB LED's should be steady on and the Status LED will be flashing.

Programming the DSL-502T IGate using “Damn Small Linux”

Items you need to get started:
1.  The “Damn Small Linux” ISO from burn to a CD (approx size 50mb).
2.  A PC able to boot the Damn Small Linux CD with a connection to the internet.
Follow the programming steps as follows:
1.  Boot the “Damn Small Linux” ISO.

2.  To program the DSL502T the PERL and CURL software in the “Damn Small Linux” image needs to be updated
Start the “MYDSL Browser”.

Download the “MYDSL” application database if prompted.
Use “Text Search” to locate the “Perl 5.8.0DSL” package.

Select the “Perl5.8.0DSL” package and “Install Selected” (approx size 8mb).

Use “Text Search” to locate the “CURL.tar.gz” package.
Select the “CURL.tar.gz” package and “Install Selected” (approx size 300kb).
Close the “MYDSL Browser”.
3. Download the latest DSL-502T firmware:
Press the “Term” button on the toolbar to open a terminal window.
Download and extract the firmware with the command:
curl | tar xvz

On completion of the download you will have a “dsl502t” folder containing three files.
To program a DSL-502T with the downloaded firmware:
Change to the dsl502t folder
cd ./dsl502t
Ensure the DSL-502T is switched off.
Disconnect your PC from the internet connection and connect it the DSL-502T.
Ideally this should be done using a hub as most modern Ethernet cards take too long to power up if connected directly to the DSL-502T.
It is recommended that there be no other devices connected to the hub as other network traffic can interfere with the programming process.
4.  Set the IP address of “Damn Small Linux” to “”.
Press the “Panel” button on the toolbar to open the “DSL Control Panel”.

Press the "NetCardConfig" button to open the network configuration dialog.
Enter the network configuration as follows:

Use DHCP Broadcast  No 
Address IP
Network Mask
Save Configuration  Yes

Press “Apply” to activate the configuration.
Close the “DSL Control Panel”.
5. Program the DSL-502T in the terminal window by:
Entering the command:
Power on the DSL-502T.
All going well the DSL-502T will be detected, the programming will be performed and the DSL-502T will reboot at the end of the process.
Possible problems are:
1. The DSL-502T is not found on the network and the programming fails.

Repeat step 5 to ensure the IP address is correctly configured as
Try using a different network cable or hub.
2. A device is recognised but it is reported as being the wrong type. This may occur if you have a Generation II (C5 Hardware revision) DSL-502T or a different device. You will not be able to program the device using this procedure.
3. The device is recognised and the programming starts but the dots stop. This can occur due to other network traffic or timing issues when transferring data to the DSL-502T.
Press Cltr-C to stop the programming script.
Repeat step 5 without powering off the DSL-502T.

Mangaging your FT-7800R memories.... with a VX5 bonus

I really like my FT-7800R, I found it to be a basic but reliable 2m rig with good wide band coverage... at least wide enough to cover the aircraft band.
What isn't so good is the effort required to manage the memories... particularly if you want to program more than a few frequencies.  If you are like me you probably have a limited set of frequencies programmed and everything else is done through the VFO as and when neaded.
After having the rig for a couple of years and feeling I really wasn't getting the best use out of it (particularly when scanning), it really was time to investigate programming software and the hardware required for an interface cable.
My software selection was based on the following criteria:
  • Not expensive
  • Positive comments on
  • Quick review of the demo version suggested that it would do the job OK.
I also needed an interface cable.... something equivilent to the Yaesu CT-91.  
Some internet digging turned up a few designs but nothing that matched the junk box parts... the level conversion was easy... standard MAX232 design but additional interfacing was required to covert the two line TTL serial to one line to suit the FT-7800R.  I discovered this design for the Three to Two Wire Converter ... and I had a 4069 in the junk box so combined it with the MAX232 as shown.
Yaesu Programming Cable
.. and it works really well.  A recycled PS2 keyboard extender cable provided the connection for to the FT-7800R.  It worked first time.... 
For many years my VX5 had a similar managment problem with it's lack of memory management.... could the new interface work for the VX5 as well?  The internet suggested so but many times over the years I had looked at VX5 programmer schematics but always been put off by the difficulty in getting the 3.5mm plug with 4 connections.
These must have finally become popular for some consumer devices and they now (2010) appeared in the Jaycar catalog.  Replacing the interface PS2 connector with a 4 connection 3.5mm and testing using EVE on the VX5 worked well.
But the really big bonus is the relationship between FTB-7800 and KC8UNJ's free VX-5 Commander software..... FTB-7800 will export in VX-5 Commander format and if you can keep your FT-7800 definition within the VX-5 limits, especially limiting the number of memories to 220 and memory banks to 5 means you have have exactly the same memory configuration on the FT-7800 and VX5 with no extra work.
I can only say thank you to G4HFG and KC8UNJ for their software tie up... it really was an added bonus I didn't expect.
I don't have one of the more recent Yaesu radios such as the VX2, VX6 or VX7 but FTB-7800 supports exports for KC8UNJ's Commander software for each of these so you probably get the same benefits.

Page 16 of 24

Powered by Easytagcloud v2.1

Contact Andrew Quinn