Re-flashing a DCM to install Platinum Firmware

Platinum is Güralp Systems’ next-generation firmware for EAMs, NAMs and DCMs. Platinum firmware offers a number of advantages for DCM users over the previous DCM firmware and we recommend that all DCM units being redeployed to new installations are upgraded to Platinum.

This page describes the procedure for re-flashing a DCM to use Platinum firmware where the DCM has corrupt flash memory and cannot boot. If the DCM is working properly, please use this procedure instead.

The Re-flashing Procedure

This procedure requires Internet access, as the firmware image is too large (around 40 to 50 Mb) to transfer over a serial port. Unfortunately, the minimal image does not have USB support. Güralp Systems recommends this procedure is carried out in a laboratory or workshop with stable power and networking. We advise against performing this procedure in the field on a working station.

Required Cables and Connections

The following cables and connections are required:

Required Files

The two files linked below must be saved onto the computer being used in the process. They will be uploaded to the DCM over the serial port. They are used to install a base image with enough functionality to allow the DCM to update itself over the Internet.

If you are using Linux, you can verify the integrity of the files after download with the md5sum utility:

File MD5 sum
boot.gz 76f345c2defb72c1c0f41a1e5b44318a
root.gz 3a8473b1c9cf6602d4c20380bb6c4b2c

Gaining Access to the Bootloader

The first step in the re-flash procedure is to gain access to the bootloader.

  1. Using extraPuTTY (www.extraputty.com) on Windows, or minicom (or another terminal emulator) on Linux, connect to the DATA OUT port of the DCM at 115200 baud, 8 data bits, no parity, 1 stop bit (8N1). Configure the emulator to use no flow control – neither hardware (RTS/CTS) nor software (XON/XOFF).

  2. Power-cycle the DCM, and repeatedly type fishsoup followed by a space until you see the prompt:

    Bootloader fishsouped and ready
    boot>
    This is a time-sensitive operation. It is easiest to type fishsoup and the following space into a text editor, such as Notepad++Notepad++ is a free (both as in “free speech” and also as in “free beer”) and highly-recommended text-editor, source-code editor and Notepad replacement that supports several languages. It can be downloaded from The Notepad++ web site. or geditgedit is the GNU text editor. It is provided as standard in many Linux distributions. See The Gedit page on the Gnome wiki for more information., and then copy it to your PC's clipboard. (Do not forget to copy the space as well.) You can then simply paste it repeatedly into the session rather than having to type it quickly and accurately each time.
  3. If the message “Enter the receive enable string now to enable this port” does not appear, and step 2 fails to achieve anything within 20 seconds, the unit may be using the old bootloader. In this case, disconnect the data cable from your serial port (leaving the power plugged in to the PC) and connect the internal console cable between the DCM and the PC’s serial port, then retry step 2.

Uploading the Minimal Image Files

Having gained access to the bootloader, the minimal image files (from the required files section) need to be uploaded and flashed. This part of the procedure takes approximately 15 minutes to complete.

Note that there have been several revisions of the bootloader, so the messages that you encounter may differ slightly from the ones reproduced in these instructions. However, in all cases, you can simply follow the same procedure.

  1. Press ENTER a few times to make sure you are successfully talking to the boot loader, then type the text shown in emphasis below. A typical session looks like this:

    boot> nand 0 erasechip Scanning for nand chip ... nand_maf_id = 0x000000EC nand_dev_id = 0x00000076 nand device name: Samsung K9D1208V0M nand erasechip: Erasing entire chip nand erasechip: passed boot> nand 1 erasechip Scanning for nand chip ... nand_maf_id = 0x000000EC nand_dev_id = 0x00000076 nand device name: Samsung K9D1208V0M nand erasechip: Erasing entire chip nand erasechip: passed boot> boot> nand 2 erasechip Scanning for nand chip ... nand_maf_id = 0x000000EC nand_dev_id = 0x00000076 nand device name: Samsung K9D1208V0M nand erasechip: Erasing entire chip nand erasechip: passed boot> load boot After receiving file, will automatically uncompress .gz images loading flash region boot using ymodem ready for YMODEM transfer...
  2. The following step differs, depending on which terminal emulator you are using.

    It is possible that, in the time you take to do this, the DCM will time out and give up (often printing an “RXstat timeout” error message). If this happens, press enter to get the bootloader prompt, then repeat this step by typing load boot again.
  3. Once the image is uploaded you should see:

    02CF170D454B000464C86C989C3FC2D0 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx boot-xxxxxxxxxxx xxxxxxxx bytes loaded to C0000400 img_size is not a multiple of 4 -- are we sure that's OK? Scanning for nand chip ... nand_maf_id = 0x000000EC nand_dev_id = 0x00000076 nand device name: Samsung K9D1208V0M Looks like a gzipped image, let's verify it... Looks like a gzipped image, let's verify it... Verifying gzipped image ......................... verifyGZipImage: calculated CRC = 0xXXXXXXXX verifyGZipImage: read CRC = 0xXXXXXXXX programming flash...erasing ... Erasing NAND region Erasing from 0x00000000 Erasing bytes 0x00100000 writing flash.. Programming NAND region YAFFS image: Programming/Verifying 0x000C0750 Block ok at page 0x00000020 .... YAFFS partition programming Success verifying ... Verifying NAND device nand: verified ok done. boot>

    Errors about bad blocks can be ignored (this is normal NAND flash behaviour) but the procedure must verify and end with the success message as shown above.

  4. Load the root image with:

    boot> load root After receiving file, will automatically uncompress .gz images loading flash region root using ymodem ready for YMODEM transfer...

    Send the “root” file in the same way, and wait for the boot> prompt.

Completing the Firmware Re-flash

  1. Now power cycle the DCM. As this is the first boot with the new firmware, the DCM will need to generate new key-pairs for the ssh program. This takes 2–3 minutes. During this time, the DCM will appear unresponsive. Once it has completed, the DCM will present a login prompt: localhost login:

  2. Log in as root with the DCM default password, which is .
  3. If your network is configured to use DHCP, the DCM is now ready to be upgraded and you can continue to the next step. You can verify the address of the DCM by running the command

    ip addr show dev eth0

    If you need to set a static address, this is done with the following commands (changing the values in italics to suit your network):

    ip addr add xxx.yyy.zzz.aaa/NN dev eth0 ip route add default via gatewayIP echo "nameserver 1.1.1.1" >> /etc/resolv.conf

    The NN at the end of the IP address you wish to assign is the CIDR notation for the netmask; it is usually 24 (which corresponds to the netmask value of 255.255.255.0) or 16 (which corresponds to a netmask of 255.255.0.0). If you know the address of a local DNS server, you can substitute it in place of 1.1.1.1 in the last line above.

    The 1.1.1.1 DNS server is operated by Cloudflare. If it is blocked in your jurisdiction, search the Internet for free public DNS servers for a list of other suitable addresses..
  4. Run the command upgrade and wait for the process to complete.

  5. Then run the command hash -r

  6. Finally, run upgrade once more.

  7. After rebooting the DCM, it is ready to be configured and used with the latest Platinum firmware.

The previous default root password is now routinely tried by hackers during brute-force attacks. As a result, this procedure now changes the root password to . We strongly recommend that you change this to something secure if the unit is to be connected to the Internet. Please see our Platinum security guide for more information.

For more information, first contact your local distributor or email .