How-To Install Intelligence Hub on an Opto22 Goov EPIC
What Does This Article Cover?
This guide will walk through the steps to install the HighByte Intelligence Hub on an Opto22 Groov EPIC.
Instructions:
Install JRE 17 LTS build for 32bit ARM
To run the Intelligence Hub Java 11 or newer is required. The Groov Epic comes pre-installed with Java 8 which is not sufficient to run the Intelligence Hub. The Groov EPIC has a 32 bit ARM processor which requires a special build of Java. Oracle OpenJDK does not provide Java builds compatible with the Groov EPIC.
- Navigate your web browser to https://bell-sw.com/pages/downloads/
- Select JDK 17 LTS
- Scroll down to the 32 bit section
- Click ARM
- Choose Package: Standard JRE
- Download the
TAR.GZ
“Liberica Standard JDK 17.0.6+10 arm 32 for Linux” - Copy the file onto your Groov Epic
- Uncompress and store the files in
/opt/jdk
–sudo tar xvf bellsoft-jre17.0.6+10-linux-arm32-vfp-hflt.tar.gz --directory /opt/jdk
Install the Intelligence Hub
To run the Intelligence Hub, the product files are required. These steps are a suggestion. The reader may choose to copy the intelligence files to an alternate location but will need to update file paths later in the guide.
- Download the Intelligence Hub from the portal https://portal.highbyte.com
- Copy the Intelligence Hub zip file onto your Groov Epic
- Uncompress and store the files in
/opt
sudo unzip HighByte-Intelligence-Hub-3.0.0 (Build 2023.2.22.471).zip -d /opt
Create a firewall rule to allow access to the Intelligence Hub
Consult the Opto22 Groov EPIC manual on how to create a firewall rule allowing access to port 45245
Configure linux to start the Intelligence Hub on reboot
The Groov EPIC uses SysV init scripts to manage application startup on the device. To ensure the Intelligence Hub is automatically started after a power failure or the device reboots we will add an init script.
-
Use vim to create
/etc/init.d/highbyte
with these contentsbash#!/bin/bash ## Demonstrate creating your own init scripts # chkconfig: 2345 92 65 ### BEGIN INIT INFO # Provides: HighByte # Required-Start: $local_fs $all # Required-Stop: # Default-Start: 2345 # Default-Stop: # Short-Description: Run HighByte # Description: Run HighByte intelligence Hub ### END INIT INFO ##case statement to be used to call functions## case "$1" in start) pushd /opt/HighByte-Intelligence-Hub-3.0.0/runtime > /dev/null 2>&1 || return /opt/jdk/jdk-17.0.6/bin/java -cp "intelligencehub-runtime-3.0.jar:lib/*" \ com.highbyte.intelligencehub.runtime.Main start > /dev/null 2>&1 & popd > /dev/null 2>&1 || return ;; stop) pushd /opt/HighByte-Intelligence-Hub-3.0.0/runtime > /dev/null 2>&1 || return /opt/jdk/jdk-17.0.6/bin/java -cp "intelligencehub-runtime-3.0.jar:lib/*" \ com.highbyte.intelligencehub.runtime.Main stop > /dev/null 2>&1 & popd > /dev/null 2>&1 || return ;; *) echo $"Usage: $0 {start|stop}" exit 5 esac exit $?
-
Make the newly created script executable
chmod +x /etc/init.d/highbyte
-
Create symbolic links for runlevels 3, 4 and 5 to start the Intelligence Hub:
#sample commands
sudo ln -s /etc/init.d/highbyte /etc/rc3.d/S99highbyte
sudo ln -s /etc/init.d/highbyte /etc/rc4.d/S99highbyte
sudo ln -s /etc/init.d/highbyte /etc/rc5.d/S99highbyte
- The setup is complete, test it out by running
sudo /etc/init.d/highbyte start
, then once the Intelligence Hub starts access the web based config from your web browserhttp://<Groov Epic IP>:45245
where<Groov Epic IP>
is the IP address of your device. - Be sure to reboot your device and ensure the hub starts running on its own before going to production.