installingtranssecsdeploymentsonrpi

Installing Deployments from TransSECS Servers or Devices on a Raspberry Pi

Complete Raspberry Pi Base Setup first.

These instructions apply to both TransSECS Devices and TransSECS Servers.

The examples assume:

/home/mix/secs

If your login user is pi, the equivalent location is /home/pi/secs.

1. Copy the TransSECS deployment to the Pi

The deployment normally contains run.sh, one or more .jar files, log4j.xml, and ErgoTechConfiguration.properties.

Use SFTP or SCP rather than ordinary FTP. SSH/SFTP uses port 22 and does not require a separate FTP server on the Pi.

Using scp

From a PC in the directory which contains the secs deployment folder:

scp -r secs [email protected]:/home/mix/

Replace the IP address with the Pi’s actual address.

Using sftp

sftp [email protected]
put -r secs
quit

Using a graphical file-transfer program

WinSCP or FileZilla can also be used.

Choose:

Setting Value
ProtocolSFTP
Host Pi IP address or mix.local
Port 22
User mix
PasswordErgoErgo

Copy the complete secs folder into /home/mix.

2. Test the deployment manually

In the SSH session:

cd /home/mix/secs
chmod +x run.sh
./run.sh

On the first start, TransSECS should report a prelicense key. Send this number to ErgoTech.

Press Ctrl+C to stop the application after recording the key.

If the message contains prelicense code: but no number, contact ErgoTech. The deployment may need to be rebuilt for the Raspberry Pi before it can be licensed.

Serial or SECS-I equipment

For a serial connection, the Pi’s serial library is normally under /usr/lib/jni.

Edit:

nano run.sh

Set the library path to:

export LD_LIBRARY_PATH=./:../lib/:/usr/lib/jni

Save with Ctrl+O, Enter, Ctrl+X.

HSMS network connections do not require this change.

3. Install the license

ErgoTech will provide:

ErgoIOTLicense.lic

Copy it into the TransSECS deployment folder:

scp ErgoIOTLicense.lic [email protected]:/home/mix/secs/

Run the deployment once more:

cd /home/mix/secs
./run.sh

It should start without the missing-license message.

Press Ctrl+C to stop it. The next step configures automatic startup.

4. Run TransSECS automatically as a Linux service

Linux uses systemd to manage background services. Running TransSECS as a service means it starts automatically when the Pi boots and can restart automatically if the process stops.

It is also important to send Java console output to a dedicated TransSECS log. Otherwise Linux may copy repeated application messages into syslog or daemon.log, which can consume a large amount of SD-card space.

Create the log directory:

mkdir -p /home/mix/secs/logs

Create the service:

sudo nano /etc/systemd/system/transsecs.service

Paste:

[Unit]
Description=TransSECS
After=network-online.target
Wants=network-online.target
 
[Service]
User=mix
WorkingDirectory=/home/mix/secs
ExecStart=/bin/sh /home/mix/secs/run.sh
Restart=always
RestartSec=10
StandardOutput=append:/home/mix/secs/logs/transsecs-console.log
StandardError=append:/home/mix/secs/logs/transsecs-console.log
 
[Install]
WantedBy=multi-user.target

Save with Ctrl+O, Enter, Ctrl+X.

Tell systemd about the new service, enable it for future boots, and start it now:

sudo systemctl daemon-reload
sudo systemctl enable transsecs
sudo systemctl start transsecs
sudo systemctl status transsecs

Look for:

active (running)

Press q to leave the status display.

Check the application console log:

tail -n 20 /home/mix/secs/logs/transsecs-console.log

You should see recent TransSECS startup messages.

If you use tail -f instead, the command deliberately stays open and shows new messages as they arrive. Press Ctrl+C to return to the command prompt.

5. Limit the TransSECS console log

Create:

sudo nano /etc/logrotate.d/transsecs-console

Paste:

/home/mix/secs/logs/transsecs-console.log {
    size 5M
    rotate 5
    compress
    delaycompress
    missingok
    notifempty
    copytruncate
    create 0644 mix mix
}

Save with Ctrl+O, Enter, Ctrl+X.

Check the configuration safely:

sudo logrotate -d /etc/logrotate.d/transsecs-console

The output should mention the TransSECS console log, a 5 MB threshold, and 5 rotations. There should be no error messages.

copytruncate allows logrotate to rotate the file without stopping TransSECS.

SECSMessages.log is already limited by the log4j.xml supplied with the deployment and does not need another logrotate rule.

6. Reboot and verify

sudo reboot

Reconnect after about a minute and run:

systemctl status transsecs
tail -n 20 /home/mix/secs/logs/transsecs-console.log
df -h /
ls -lh /var/log

Verify:

  • TransSECS is active (running).
  • The console log contains recent application messages.
  • The SD card has plenty of free space.
  • Linux logs such as syslog and daemon.log are remaining reasonably small.
installingtranssecsdeploymentsonrpi.txt · Last modified: by wikiadmin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki