How to setup and use a SpringPark as a SmartReader over TCP

The aim of this tutorial is to configure a SpringPark as a Network SmartReader. The SpringPark in this configuration acts as a TCP server (default factory port is 4000) and sends its tags to the client connected to this port.

For this howto, we will assume that:

  • your SpringPark is using a default (from factory) configuration.
  • you have some networking basis.

Our SpringPark will output tag information using the SCRDR format (cf. SCRDR Protocol).

We’ll see, in a forthcoming howto, that there are multiple output formats available.

You can find all the relevant files at the end of this tutorial.

Prepare the configuration file

To configure our SpringPark as networked SmartReader, we have to change its profile (cf. Profile configuration):

“Network option” has to be “TCP server” and “Primary profile” has to be “Serial, SmartReader mode”

The final value of register 02C0 has to be 0x24.

There are multiple ways to send a configuration to a SpringPark. One of those uses JSON files and that is the format chosen for this howto.

Using DHCP

Nothing but register C0 is set. Our SpringPark will request an IP address to the local DHCP server.

Using a static IP address

Register 80 is used to specify which IP address our SpringPark will use (cf. IPv4_Settings). This is a 20 bytes long register, all unused settings have to be set to 0x00.

In this example, I’m going to use those network settings:

  • IP address: 192.168.5.152
  • Netmask: 255.255.255.0
  • Gateway: 192.168.5.1
  • DNS1: unused, 0.0.0.0
  • DNS2: unused, 0.0.0.0

You can use online tools (like this one for example: https://convertir.github.io/outils/convertir-ip-en-hex-en-ligne.html) to convert your Ip settings to hexadecimal or simply use Windows’ calculator in Programmer mode:

Using SpringCoreConfig to write the parameters into the device

Your device has to be connected to the host using USB for the configuration stage (We’ll see, in a forthcoming howto, that there are multiple ways to set up a SpringPark) .

First of all, check if the device is well connected to your computer. You can first check if the device is present in the device manager:

You can also use SpringCardConfig.exe with the ‘-l’ option:

You can now push your configuration file to your SpringPark using SpringCardConfig.exe:

At this stage, your SpringPark will restart with its new configuration. You can then see, in the device manager, that your device is now seen with a different name:

Validating the network configuration

SpringPark’s default behavior, when usb connected to a computer, is to disable its network interface (this is useful for reconfiguration. Options are available to change this behavior but that is not the aim of this howto). To start your SpringPark on the network, unplug all cords but the DC jack. You should see activity on both network interface LEDs.

Check if your device is present on the network

  • using the ping command:
  • using SpringCard’s Network Device Detection Utility (cf. NDDU):

Receive tags over the network

  • using a Python script:

Ressources


Posted

in

,

by