Uploading the application into the terminal via CAN without CANopen

(only available for certain terminals without CANopen)

This document describes how the terminal application can be uploaded into devices with CAN, but without CANopen. This applies to terminals like "MKT-View", and possibly some others.
If does NOT apply to terminals with CANopen protocol, because a CANopen network has all the protocols we need to access the terminal (SDO).

Contents

See also:

How to upload via CAN (without CANopen)

Because we don't know which CAN-Identifiers will be used in generic CAN networks ("without CANopen"), we cannot reserve certain CAN-Identifiers for this purpose. Instead, the terminal must be switched manually into transfer mode as follows :

The terminal will now listen for CAN-messages on a certain CAN identifier (see tech notes), so the PC can communicate with it.
Now start the program transfer from PC to terminal "via CAN":

Connecting to a remote device without a keyboard (through its unique serial number)

In 2009, new devices were introduced which neither had a keyboard, nor a rotary control knob ("encoder"), nor a touchscreen. So there was no way to enter the system menu for these devices, thus it was impossible to set  Transfer via CAN = ON  (see previous chapter) - at least not without the remote control protocol, which was added later.

First solution (kludge) : Such devices could be switched into transfer- or remote control- mode by operating them at a higher 'programming voltage' .

Better solution (available since 2010-05-12) : Such devices can be permanently switched into a third state for the 'Transfer via CAN' parameter in the system menu, which is described below.

The option 'Transfer via CAN' can now be set to

Transfer via CAN = OFF / Auto

in the system menu (if necessary, via remote control, which is possible through other communication ports besides CAN). In this state ...

This way, it's almost impossible to activate the transfer mode by accident, because the special 256-byte sequence includes the remote device's serial number. So you must enter it in the programming tool's Transfer menu before starting :

First, select Transfer ... Connection Parameters ... Remote Serial Number  in the programming tool's main menu, and enter the device's serial number () :


(Screenshot of the dialog for entering the serial number.
Please not that "123" is just an EXAMPLE !
You will hopefully find the serial number on the device's faceplate.... if not :
It is shown on the device's display shortly after power-up, for example SerialNr: 123 )

Next, select Transfer ... Send Application to Terminal in the main menu .

The programming tool will first try to establish a connection the usual way (without sending the serial number in a pseudo-random noise sequence). This will fail after a few seconds, because Transfer via CAN isn't set to ON but OFF in the device's system menu. After a few seconds (if no response is received), the programming tool will switch over from the 'usual' protocol to the one described above using the pseudo random number sequence, and -if the remote device's serial number has been entered correctly- a connection will be established, and finally the upload process begins.

Because the serial number is unique (at least, for the same class of devices), only ONE device will respond by sending a CAN message (*). So, in this special case, it wouldn't hurt if more than device are connected to the same physical bus.

(*)  Of course, this only works if the option 'Transfer via CAN' is set to 'OFF / Auto' for all devices on the same CAN-bus. If any of them is set to Transfer via CAN = ON , there will be collisions because two devices will try to send  a response on the same CAN-ID (0x7F1). This is illegal, and must be avoided under any circumstance !

If you don't want that your terminal can be uploaded via CAN at all, set

Transfer via CAN = Disabled

in the system menu, then select 'System Setup' ... 'Save and Exit' . In this state, the device cannot be connected for program up/download, at least not via CAN .

Technical Notes (communcation terminal <-> PC via CAN, without CANopen)

As noted in the introduction, we cannot  simply reserve two CAN-identifiers to communicate between programming tool and terminal in all circumstances (this would lead to collisions sooner or later, or make things complicated).

But in fact, two CAN identifiers are used for this communication, but the terminal (!) only uses them after being switched to "Transfer Mode via CAN". The CAN-identifiers are:

The transfer uses a proprietary, text-based protocol which uses commands and keywords. In fact, most of the transmitted lines have the same format as used to save the terminal application in a text file. More information are available on request ("subject to change") .


File: ..?..\uptwin1\help\canup_01.htm
Author: W.Büscher, MKT Systemtechnik
Last modified: 2010-05-12 (ISO8601, YYYY-MM-DD)

back to top