NSLU2-Linux
view · edit · print · history

The DSMG600 Serial Console

This article pertains to:

  • DSM-G600 Rev A Hardware only

This article is preliminary.


The DSM-G600 Rev-A Redboot bootloader lacks a driver for the internal network interface.

So, without network support in the bootloader, exactly how does one recover from "When Things Go Very Badly Wrong™"? Why, with the serial console, of course! Yes, that's the bad news - you'll have to do some soldering if you want to be able to change the firmware on your device. The good news is that the serial port support on the dsmg600 is a bit more general-purpose than the NSLU2, and you won't need to search for USB phone cables to modify, or purchase level converters, and suchlike. All you need to do is bring out three wires from the circuit board to a standard serial connector.

Required parts:

  • 10-pin header (2 rows of 5 pins, a larger header can be snapped apart to give 2 rows of 5 pins)
  • 10-pin to 9-pin D-sub serial cable
  • null modem serial cable (required for most setups)

The serial connector is located on the left front side of the device -- it's the ten-pin connector pad on the motherboard, the one arranged in two rows of 5 pins each. You'll need to solder a 10-pin header in place there, and then fit it with a standard 10-pin ribbon cable and a 9-pin serial port connector. While that sounds like a tall order, the fact that the 10-pin header pinout matches the serial-port pinout on the motherboard on the old IBM PC-XT systems means that it's not so difficult to find pre-made cables about (you'll probably have the best luck searching for the "second serial port expansion kit" for the IBM PC-XT or other old computers.) Some serial cables with a 10-pin header won't work until it's re-wired because 1 or more of the lines/pins won't match the layout on the DSM-G600. 1 way to determine the wiring layout is to consult the motherboard manual the cable came with.

  • Pin 3 is RX to the device (DSM-G600).
  • Pin 5 is TX from the device (DSM-G600).
  • Pin 9 is GND.

Pinout of the connector:

         1   2

  -----> RX  4

  <----- TX  6

         7   8

  ------ GND 10

Pin 1 has a square solder pad and is the upper left most pin when looking at the board from above with the Mini-PCI and IDE ports facing you.

"But I Can't Solder!"

You need to go find a friend, or someone, who can.

No, seriously. Anything less than a careful job of attaching the serial port properly may result in damage to the board. Or it may leave you with a device you can't recover. Either way, you shouldn't be messing with the firmware if you don't have a serial port properly attached.

"It's My Device and I'll Do What I Want With It!"

Well, yes, it is your device, and you can do with it what you wish. But be warned - without a serial port you are sunk if something goes wrong. There is no way to recover without it. There is no "reset-button" reflash of the firmware, like there is on the NSLU2. There is no ability to connect to Redboot by using cross-over network cables, and pinging the device as it powers up (like there is on the NSLU2). If something is wrong, the only way to do anything useful with it -- aside from taking the lid off, filling it with dirt, and using it as an ultra-modern version of a flower pot -- is via the serial port.

If you really find yourself unable to get the wires soldered on, (fill-in-url-here) how you might attempt to get temporary access to the serial port without soldering. Caveat Emptor. Perform at your own risk.

Got Serial? (Testing Access)

Terminal Settings:

  • Bits per second: 115200
  • Data bits: 8
  • Parity: None
  • Stop bits: 1
  • Flow control: None

Connect and power up the device. Do you see text? If so, great - half of your serial port is working. Don't forget to test the other half before you continue - can you send data to the dsmg600 as well? If you have the stock dsmg600 firmware up and running, just type <ctrl-c> -- if you have everything working, you'll interrupt the running program (which happens to be the D-Link GUI for the device), and you should have access to a shell. If you don't see text try connecting the 2 devices with a null modem serial cable.

view · edit · print · history · Last edited by Anonymous.
Based on work by Anonymous and mwester.
Originally by mwester.
Page last modified on December 12, 2008, at 11:53 PM