DeviceMaster Software Developer Kit Using the Diagnostic Serial Port

The DeviceMaster circuit board has two diagnostic serial ports. Each port is accessed via 4-Pin header near one end of the board. The signal levels on the headers are not RS-232, and a converter cable is required to convert them to RS-232 levels for use with a standard serial port.

The DeviceMaster circuit board has two diagnostic serial ports. Each port is accessed via 4-Pin header near one end of the board. The signal levels on the headers are not RS-232, and a converter cable is required to convert them to RS-232 levels for use with a standard serial port.

[Note]
Note

The converter cable is included with the Software Development Kit.

The first diagnostic port is used for diagnostic output from calls to diag_printf(). It is also used by RedBoot as a command console.

The second diagnostic port also functions as a RedBoot console port. The second port can be used for a serial remote GDB connection, see Using GDB with Diagnostic Port 2 . The positions of these connectors are shown in the figures below.

4/8-Port Board (Top View)

16-Port Board (Top View)

Use the following procedure to set up the diagnostic serial port:

  1. Plug the diagnostic cable into the first diagnostic port (Diag Port 1) and connect it to a serial port configured for:

    • 57600 baud

    • 8 data bits

    • no parity

    • 1 stop bit

    • No flow control

  2. Connect a null-modem cable from an available COM port on your PC to serial Port 1 on the DeviceMaster.

    [Note]
    Note

    You may want to purchase or build a straight-through cable and purchase a null-modem adapter.

  3. If you monitor the data from that port and cycle power on the DeviceMaster, you should see startup messages from the bootloader and then a prompt:

       RAM OK 
       Sum OK 
       + 
       Comtrol DeviceMaster Boot Version 1.06 
       RedBoot(tm) debug environment - built 14:18:19, Jul 18 2001 
       Platform: Comtrol DeviceMaster (ARM 7TDMI) 
       Portions Copyright (C) 2000, Red Hat, Inc. 
       Portions Copyright (C) 2001, Comtrol Corp. 
       FLASH: 0x05030000 - 0x05400000, 61 blocks of 0x00010000 bytes each. 
       ks32c5000_eth_init() 
       found MAC address 00:C0:4E:0B:FF:F9 
       ks5000_ether: installInterrupts() 
       EthInit(00:C0:4E:0B:FF:F9) 
       ks32C5000 eth: 00:C0:4E:0B:FF:F9  Hardware CRC 
       ks32c5000_eth_start() 
       IP: 192.168.250.250, Mask: 255.255.255.0, Gateway: 192.168.250.1,
       Server: 0.0.0.0 
       RedBoot> 
      
  4. At this point you can type bootloader commands. If a default application is configured in flash, and the default application time-out is set (15 seconds), you will see the default application start up after the time-out period:

       ARM DeviceMaster HAL (no virtual vectors) 
       AIOPIC serial driver: 16 channels 
       ks32c5000 old_init_handler() 
       Network stack using 262144 bytes for misc space 
       262144 bytes for mbufs 
       524288 bytes for mbuf clusters 
       ks32c5000_eth_init() 
       found MAC address 00:C0:4E:0B:FF:F9 
       ks5000_ether: installInterrupts() 
       EthInit(00:C0:4E:0B:FF:F9) 
       ks32C5000 eth: 00:C0:4E:0B:FF:F9  Hardware CRC 
       SocketServer 1.13 
       Copyright Comtrol Corp. 2001 
       Build date: Tue Jun 19 12:21:54 CDT 2001 
       
       Free RAM at 280700,  Len = 53F900 
       starting madmin 
       Bg started 
       madmin running 
       madmin MyMacAddr=00:C0:4E:0B:FF:F9 
       ks32c500 old_set_config_handler() 
       ks32c5000_eth_start() 
       IP = 0A000005 
       Mask = FF000000 
       Gate = 0A000001 
       Net init complete. 
       Net init done 
       socket server init 
       socket server active config: 05002000 
       TcpRx0: waiting on semaphore 
       TcpTx0 started 
       [...] 
      

nice color