Hardcoded Configuration

From lechacal
Jump to navigation Jump to search


RPICT series have a convenient way to store the configuration in memory using the lcl-rpict-config.py tool.

It is found that eeprom memory might not be always stable especially in noisy industrial environment. This usually lead in having to reconfigure the card.

For users requiring high level of stability and minimum intervention we suggest the use of hardcoded configuration.

The hardcoded configuration means that all user parameters are set in the code of the firmware. This require reflashing the microcontroller. Following that parameters can only be modified by reflashing a new firmware with the updated value.

Which model can use the hardcoded configuration?

All of them. However the way to flash the microcontroller will differ from one board to another.

The RPICT produced lately will make this easier. For the former ones some special operations might be needed.

Firmware with hardcoded configuration

Getting a firmware setup with the desired parameters requires editing the code by hand and compile it. As we understand not all of you are necessarily comfortable doing so we have build a set of firmware ready to flash. This list is in IDCode.

We give each individual firmware a 8 digit random code to make sure we can identify it. For example FXOMGBOL. This code appears on the serial port when the RPICT board boots up.

How to identify a firmware

There 2 ways to find out which firmware is loaded on a RPICT board. In both options make sure nothing is using the ttyAMA0 serial port or it will conflict.

1/ Manual reset. Start the cat command and press the white button to reset the board.

stty -echo -F /dev/ttyAMA0 raw speed 38400
cat /dev/ttyAMA0

Then press reset. The header will appear showing the firmware version being used.

2/ Auto-reset Only valid for version 5.x and 3.1 units. Use the lcl-show-header.py command to show the header

wget lechacal.com/RPICT/tools/lcl-show-header.py.zip unzip lcl-show-header.py.zip sudo mv lcl-show-header.py /usr/local/bin/

Then run it with

lcl-show-header.py

The header will then appear.