Categories
Knowledge Support Support Categories Products exacqVision Hardware

Ruling out interfering software in Windows

Description

When troubleshooting exacqVision software in a Windows environment, it is likely that the customer has installed various monitoring or protection software which could be interfering with our communication or processes. The most common culprit is Anti-virus software.

However, there are many different methods of determining what software is running on a machine. There are several that actively hide themselves from the task tray or the Programs list. Below is an effective way of quickly determining what else is running on a system.

Utility – msconfig

The Microsoft System Configuration Utility can be used to see what services are running running with the ability to quickly rule out all Microsoft necessary services.

Open the msconfig utility by clicking on the “Start” button and typing msconfig – select the ‘System Configuration’ result.

You can also launch msconfig.exe from the “Run” dialog.

Once it loads, select the “Services’ tab.

Click on the ‘Service’ heading to sort them by name (useful for the next step).

Rule Out Windows Defender

Scroll down and look for anything that begins with Windows Defender…

There are several different names for Defender Anti-virus. On my machine it’s ‘Windows Defender Advanced Threat Protection Service’ and its status is ‘Stopped’ This tells me that it is not a concern for our software. However, the Firewall is enabled. This may be configured in a way that interferes with our communication.

In other situations, you’ll see Defender Anti-virus running. Normally Defender does not cause much of an issue for us, but it can be locked down and more aggressive in scenarios where they have attached the system to a Domain. It would be worth asking how the customer has configured Defender and trying setting exclusions for our software. See KB 853.

Ruling Out Other Services

Now that you’ve ruled out Microsoft’s own Anti-virus, you can check the box ‘Hide all Microsoft services’

The resulting list will be everything that has been installed on the machine since the time the Operating System was installed. These items may need to be researched if there is something unfamiliar. Discuss with the on-site technician or customer items that may be related to Anti-virus, security software, threat protection, anti-malware, heuristics, etc… It may be possible to set exclusions for our processes, but this is the responsibility of the customer to apply the changes..

Sometimes it is helpful to create a report of all the installed Services to supply to a customer or IT department. This can be accomplished in PowerShell with the “GetService” cmdlet. To see a list of all services, in PowerShell type:
Get-Service | Sort-Object status | Out-Gridview

This will open a window with all Services sorted by their Status. You can then use ‘Ctl-A’ to highlight all, and ‘Ctl-C’ to copy this data to the Clipboard. This can then be pasted into a spreadsheet or text file.

Ruling Out Other Processes

Now that you’ve seen all of the services running on the system, it’s time to see if any executables are running at startup that aren’t registered as Windows Services.

Right-click on the taskbar and select ‘Task Manager’. Then click on the ‘Startup’ tab.

Again, discuss with the technician or customer if these items are expected to be running on the machine. Utilize search engines and forums to research any that you are unfamiliar with.

Categories
Knowledge Support Support Categories exacqVision Hardware Products

Analog video freezing on tDVR 8016e capture boards – Linux

Description 

Some Exacq hybrid systems built since 7/23/2024 and running Ubuntu 22.04 have exhibited a freeze of the analog video after running for some period of time. This is likely a result of a false-positive error state in the PCIe ASPM (Active-state Power Management).

This can be confirmed using a Terminal with the following command:

cat /var/log/kern.log | grep pcieport

The result will include lines similar to the following:

pcieport 0000:00:01.0: PCIe Bus Error: severity=Corrected, type=Physical Layer, (Receiver ID)
pcieport 0000:00:01.0: device [8086:460d] error status/mask=00000041/00002000
pcieport 0000:00:01.0: [ 0] RxErr (First)
pcieport 0000:00:01.0: [ 6] BadTLP
pcieport 0000:00:01.0: AER: Error of this Agent is reported first
pcieport 0000:00:01.0: AER: Multiple Corrected error received: 0000:00:01.0
pcieport 0000:00:01.0: AER: can't find device of ID0008
pcieport 0000:00:01.0: AER: Multiple Corrected error received: 0000:01:00.0

Steps to Resolve

The resolution is to disable the power management mode for the PCI slots by adding a kernel boot parameter. This can be accomplished either by editing a file, or by downloading and running a script .

<br>

Method 1: Editing the /boot/refind_linux.conf file

  1. In a Terminal open the file in a text editor with sudo privileges with:
    sudo gedit /boot/refind_linux.conf

2. Edit the the highlighted lines to add “pcie_aspm=off” prior to the parentheses (“) so it matches the following:

3. Save the file and reboot the machine with:

sudo reboot

<br>

Method 2: Run the tdvrfix.sh file

  1. After logging in to the Support Portal (support.exacq.com), download the tdvrfix.sh file to the Linux Desktop.
  2. Open a Terminal and change directory to the Desktop with:
    cd Desktop
  3. Set the tdvrfix.sh file to be executable with:
    sudo chmod +x tdvrfix.sh
  4. Run the script with:
    sudo ./tdvrfix.sh
  5. Reboot the machine with:
    sudo reboot
    <br>

Confirmation

After a reboot, you can confirm the fix was applied successfully by opening a Terminal and running the following command:
cat /proc/cmdline

Confirm that “pcie_aspm=off” is in the results.

<br>

Categories
Knowledge Support exacqVision Enterprise Support Categories Products

Enterprise Manager downgrade from 24.03 not supported

Description

Beginning with Enterprise Manager version 24.03.0.0 (or 23.09.124), downgrading will fail due the update of an underlying resource. We now utilize Django v3.2.23, which necessitated a change to the database schema. This will cause downgrade database migrations to fail.

Prior to upgrading from 23.09 or lower, it is recommended to complete a Backup. Instructions for scheduling a backup can be found in the exacqVision Enterprise Manager User Manual HERE.

NOTE: If you are using Postgres DB, you will only need the backup file. If using MS SQL, you will also need to create a DB backup utilizing Microsoft utilities. More information can be found HERE.

Categories
Knowledge Support Support exacqVision Server Categories exacqVision Hardware Products

How to Determine the Age of a System Using a Serial Number

Exacq hardware serial numbers include both the year and the week number the system was built. See How to Find the Serial Number of an exacqVision System for help in finding your system’s serial number.

There are a few different serial number prefixes depending on where the system was built. They are:

  • D14A
  • AV
  • ER
  • 355S
  • BH
  • SR

After this, the next 2 digits will indicate the year – for example:
D14A2408123456
This system was built in the year 2024.

Next you will find 2 digits that indicate the week number – for example:
ER2408123456
This indicates that the system was built in the 8th week of 2024.

The remaining numbers are incrementing unique identification numbers.

<br>

Categories
Knowledge Support Support exacqVision Server Categories Products

32-bit Server Installer Fails on 32-bit Ubuntu 14.04

Description 

Upgrade or clean install of Server versions 23.06 and 23.09 failed on 32-bit Ubuntu 14.04

Product 

  • Ubuntu 14.04.4 LTS 32-bit
  • exacqVision Server 23.06 and 23.09

Steps to Reproduce 

Upgrade exacqVision Server using the GUI or terminal.

Expected Results 

Installer completes successfully.

Actual Results 

Installer fails. If run from terminal the output below is shown:

dpkg-deb (subprocess): cannot copy archive member from 'exacqVisionServer_23.06.1.0_x86.deb' to decompressor pipe: unexpected end of file or stream
dpkg-deb: error: subprocess paste returned error exit status 2
dpkg: error processing archive exacqVisionServer_23.06.1.0_x86.deb (--install):
cannot copy extracted data for './usr/local/exacq/server/webservice_installer.deb' to '/usr/local/exacq/server/webservice_installer.deb.dpkg-new': unexpected end of file or stream

Workaround

Install version 22.09 or prior.

It’s possible other version will also work. This was attempted remotely on a customer site via ssh. Issue not re-created in-house due to inability of Support Lab to connect 14.04 machines to the network.

<br>

Categories
Knowledge Support Cloudvue exacqVision EDGE Support exacqVision Enterprise exacqVision Client exacqVision Server Categories exacqVision Webservice Products exacqVision Hardware exacqVision Integrations

PortCheck Utility

When troubleshooting TCP/IP connectivity issues, it is often helpful to confirm that the network path is open over a specified port and that there is no interference from a firewall or antivirus. This also rules out software level problems that may be causing a failure to connect.

While there exists many utilities to accomplish this task (telnet, putty, nmap, etc…), often these utilities aren’t previously isntalled and can’t be accessed when troubleshooting.

This utility will attempt to make a TCP connection to a specified IP Address or hostname over a specified port and return either success or failure.

PortCheck – Windows

PortCheck.bat

If you are unable to transfer the file, the contents can be copy and pasted into a file manually and run from command line.

::PortCheck.bat
::This utility will check the network path to the specified IP address/Hostname.
::It will accept the first argument as the IP Address/Hostname, and the second argument as the port.
::Author - Isaac Penrod

@echo off

set $IP=%1
set $PORT=%2

IF "%~1" == "" set /p $IP="Enter the IP Address or Hostname: "
IF "%~2" == "" set /p $PORT="What TCP Port: "
set $COMMAND="^(New-Object System.Net.Sockets.TcpClient^).ConnectAsync^('%$IP%', '%$PORT%'^).Wait^(800^)"
echo.
echo Checking connectivity to %$IP%:%$PORT%
echo If the network path is open and something is listening at that location, the result will be "True"
echo.
powershell -command " %$COMMAND% "
echo.
pause

PortCheck – Linux

portcheck.sh

If you are unable to transfer the file, the contents can be copy and pasted into a file manually and run from terminal.

You will also need to make the file executable with – chmod +x portcheck.sh

#!/bin/bash
#This utility will check the network path to the specified IP address/Hostname.
#It will accept the first argument as the IP Address/Hostname, and the second argument as the port.
#Author Isaac Penrod

IP=$1
PORT=$2

if test -z "$IP"
then
read -p "Enter the IP Address or Hostname: " IP
fi

if test -z "$PORT"
then
read -p "What TCP Port: " PORT
fi

echo
echo Checking connectivity to $IP:$PORT
echo If the network path is open and something is listening at that location, the result will be "success"
echo
timeout 2 bash -c 'if > /dev/tcp/'$IP'/'$PORT'; then echo success; fi'
if [ $? != "0" ]; then
echo failure
fi
echo

Arguments

This utility will also accept command line arguments.
$1 – IP Address/Hostname
$2 – Port

Categories
Knowledge Support Cloudvue exacqVision EDGE Support exacqVision Enterprise exacqVision Client exacqVision Server exacqVision Mobile exacqVision Webservice Categories exacqVision Hardware Products exacqVision Integrations

Creating Documentation Tickets in Jira

New Documentation Request workflow. This applies to User Manuals, QSG’s, Integration Guides, etc…

In Jira, we can create a new ticket and set Project to Technical Communications (TCOM).

Required Fields:

  • Issue type will normally be “Enhancement”
  • Under Description:
    • Product – leave default option
    • Set Component to “Exacq”
    • Summary – as needed
    • Description – as needed
    • Set Priority – as needed
  • Under Resolution:
    • Set Label to “Documentation”

After creation assign it to Jack Murphy if it doesn’t happen automatically.

Categories
Knowledge Support Support Categories Products exacqVision Integrations

The ‘autoreconnect’ Utility

In 2017, a custom utility was written specifically for Inditex which was designed to discover cameras on the network that have changed their IP address. Then it would use evAPI calls to compare the MAC addresses listed in the current configuration to what currently shows in the ARP table, then update the IP plugin’s configuration to connect to the new IP address.

The purpose of this KB is to document what was discovered recently as the existence of this utility was not known to Support and not well known to the current Engineering team.

Inditex ONLY!

This utility was written at Inditex’s insistence as a workaround for an unstable network environment where their cameras would show up with unstable IP addresses.

This is not intended or advertised to be distributed to any other customers. Support should recommend to customers that they stabilize their network environment either by setting static IP addresses, or DHCP reservations.

Build

At the time of this KB, the utility is available in Artifactory HERE.

Only Linux .deb files are provided either for 32 or 64-bit environments.

Installation

The .deb file will need to be transferred to the machine and can be installed with:

sudo dpkg -i <packagename>.deb

This results in a new directory: /usr/local/exacq/autoreconnect/ and a service named autoreconnect is started and set to run at boot.

A configuration file is created here:

/usr/local/exacq/autoreconnect/config/config.json

This config file looks like the following by default:

{
"server_address": "127.0.0.1",
"server_port": 22609,
"server_user": "admin",
"server_password": "admin256",
"detect_interval": 300,
"instance_name": "evStayConnected (Integration)",
"log_level": 0
}

The ‘server_port’, ‘server_user’ and ‘server_password’ sections may need to be modified for the connection to work.

Logs

Daily log files are created and rotated in the following directory:

/usr/local/exacq/autoreconnect/logs

When the service starts (and every 5 minutes thereafter) and successfully connects to the Server, it pulls information for each of the connected IP devices. These will show

INFO CONNECTED_EX callback for device

Then it checks if any current devices are in a disconnected state and logs:

INFO Disconnected devices detected (Count: 1). Starting IP Camera Scan

It will then log discovered cameras. If the current IP/MAC of the camera matches what’s in our config, it gets ignored:

INFO Ignoring ONVIF Camera at IP 10.160.5.131
INFO Discovered Illustra3 device 00-50-F9-XX-XX-XX at IP 192.168.1.131
INFO Ignoring ONVIF Camera at IP 10.160.5.130
INFO Discovered Illustra3 device 00-50-F9-YY-YY-YY at IP 192.168.1.130

If it finds devices that need to be changed, you’ll see:

INFO 1 device(s) found with different IP
INFO Queuing IP change request for disconnected device 4592640 with MAC 00-50-F9-ZZ-ZZ-ZZ. 192.168.1.45 --> 192.168.1.136

Troubleshooting

The logs are pretty verbose and can be utilized to see what action autoreconnect has taken, if any.

For instance, one of Inditex’s sites was failing to connect the cameras after they had changed IP’s and the logs showed:

evAPI connect status code -2 EVAPI_Select error

This was due to the fact that the exacqVision Server service was listening at port 5000 rather than the default port of 22609. After changing that, the initial connection worked, but then we got several more EVAPI_Select errors. The reason was due to the authentication. After fixing their username and password in the config.json file, the utility functioned as expected.

Categories
Knowledge Support Support exacqVision Client exacqVision Server Categories Products

TCP Listener not showing “Connected”

When adding an IP Serial Port, most of the time you will see the Status go to “Connected”

However, the Type “TCP Listener” does not actually connect to the device sending data. We are simply opening up on that port and waiting for any unencrypted data to show up.

Because of this the Status will remain “Connecting” indefinitely. This is the expected behavior.

This also means the Port Status of the Serial Profile will show “Connecting” as well.

Categories
Knowledge Support Support Categories exacqVision Webservice Products

Browser Thin Client Output Trigger Not Staying On

Description 

When you activate the soft trigger on the thin client it stays on for about 10 seconds then turns off and on again automatically.

Product 

  • exacqVision WebServer / Thin Client

Version

Issue was confirmed on 21.12 and 22.09, but may exist on other versions.

Solution

This will be resolved in version 23.03 of the web service
AES-217