QnA
Slow initial loading of values in views
When I open a view, the bound values remain red for a long time until they finally get their values.
This could indicate communication problems in the underlying EXO project.
When a view is loaded, Arrigo sets up advises for all variables in the view and then wait for the EXO subsystem to deliver the updates.
If these updates take longer than expected, you need to verify that there are no bottlenecks in the project setup (many serial controllers behind a station master etc.). Please contact the Regin support team if you need help with this.
Adding new chart signal gives "This content was not properly loaded"
If I add a new chart signal, I get the error This content was not properly loaded
.
If you are using your own theme this is caused by missing fields in your theme files. Download updated theme files here to make sure all theme fields are correct. Specifically, there are missing colors in the order
section.
Broken image links
I'm getting broken image links in my views with the error 400 Bad Request
.
Why, and how do I fix it?
This is an error in the IIS web server. The default limitation of "url parts" (segments) is 260 characters, so if you have long(er) nested area names this error can occur. This setting can be modified in the Windows Registry using the Registry Editor.
Danger
This solution contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, see How to back up and restore the registry in Windows
- Start the Registry Editor with administrative privileges.
- Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
. - Create a new
REG_DWORD
in calledUrlSegmentMaxLength
. - Set its value to 400 hex or 1024 decimal.
Restart the computer for the changes to take effect.
My scheduled task runs in foreground (blue box)
When I setup a scheduled task in windows, the task runs in the foreground. I can't seem to configure the task to run hidden and not disturb the user.
Excellent article that explains how to configure your scheduled task. See How do I set a Windows scheduled task to run in the background?
Controllers Web swipe does not work on panel PC
Controller Web touch scroll does not work on DP156NX panel pc. However if a mouse is installed it all works fine.
To enable touch events add --touch-events
as an argument in Target of the shortcut to your Chrome browser.
Chrome shortcut → Properties → Target: "C:\Program Files\Google\Chrome\Application\chrome.exe" --touch-events
Arrigo button in view maneuver open document does not work
Open document work with link icons, why doesn't it work in view buttons?
We recommend instead to use the OpenLink option in the button and redirect to the configured linkIcon with the document. During 2022/2023 we will build Arrigo Studio with the new ViewDesigner, therefore we do not want to alter too much in the existing view designer as it is legacy code.
Use Arrigo's process management for my own services
If I have my own Node.JS application, can I piggy-back on Arrigo's services to manage startup and shutdown?
Arrigo uses a process manager called PM2 for its process management. At a glance it is an advanced process manager for production Node.js applications with load balancer, logs facility, startup script and micro service management.
PM2 uses a file called ecosystem.config.js and it is located in your project folder (eg. C:\EXO Projects\Regin\Arrigo\pm2). All documentation about the file is located here: https://pm2.keymetrics.io/docs/usage/quick-start/
In short, add an entry (the command line command) to that file with the information of the Node.JS application you wish to run with Arrigo. Attach the project again and the Node.JS application should be started.
Arrigo Services are not starting up after reboot
After a reboot of the server views with SSF code (ServerSide Functions) and reports aren't displaying correctly.
For example, if I click a report nothing is shown except the loader.
Verify (on the server) whether the Arrigo Services are running or not:
- Open the Task Manager
- Check for processes starting with "arrigo-". An example of a working server:
If they are running you should instead look at this document which talks about websockets.
Solution 1
- Open a command prompt or PowerShell prompt in admin mode
- Run the command
npm install pm2-windows-startup -g
- Run the command
pm2-startup install
If the commands ran without errors you can reboot the machine and verify that the Arrigo Services are running.
If the services still aren't running you can try solution 2.
Info
These commands will fail if your server isn't connected to the internet. In that case you can contact arrigosupport@rssoftware.se for further instructions.
Solution 2
- Open the Task Scheduler in Windows
- Create a new Basic Task with the name "pm2 resurrect"
- Configure it to run when the computer starts
- Select "Start a program" as the Action
- Enter
pm2
as the Program/script andresurrect
as an argument - Tick the "Open the Properties dialog..." checkbox and click "Finish"
- Select the option "Run whether the user is logged on or not"
- When you click "OK" you will be prompted for the password of the currently logged on user. Enter it and click "OK"
Reboot the machine and verify that the Arrigo Services are running.
If the services still aren't running you can try solution 3.
Solution 3
Basically the same as Solution 2 but changing the Scheduled Task to run as SYSTEM
.
Edit the existing task by following the instructions at https://stackoverflow.com/a/6568823
If the services still aren't running you can can contact arrigosupport@rssoftware.se for further troubleshooting.
User Admin window does not open
When I try open the User Administration window, using the correct credentials, nothing happens. Why?
This could happen if you have set up your IIS (Internet Information Services) to bind to a DNS address.
When opening the User Administration window, Arrigo Local does a "behind the scenes" login to EXOscada.
And it assumes EXOscada is available at http://localhost/EXOscada
.
If you have bound your web server to a DNS address, and all requests are redirected, the request to localhost will fail and the window cannot be opened.
By entering the base URL (the same as the DNS addess) with no trailing slash in globalsettings.json and restarting the App Pool you can force Arrigo Local to use the correct login url.
User Admin window only shows an error
When I try open the User Administration window, it only displays some error text. Why?
If you, in your browser instance/session (regardless of which tab), have navigated to the EXOscada login page and then try to open the UserAdmin from within Arrigo it will fail. EXOscada sets a cookie that we cannot manipulate and therefore the wrong cookie will be sent when trying to open the UA.
If this happens you need to restart the browser (not just close the "infected" tab) for the cookie to be flushed.
HTTP error 500.19
When I open Arrigo Local and/or check the status I get HTTP error '500.19 - Internal Server Error'.
Something went wrong during the Dotnet Hosting Bundle installation, and the installer wasn't able to detect it.
Repair the current bundle (Microsoft .NET Core [version] - Windows Server Hosting) and contact arrigosupport@rssoftware.se if the error persists.
Repairing the Windows Server Hosting bundle
- Open Installed apps or Apps & features (depending on Windows version).
- Locate the Hosting Bundle, select it and click Modify.
- Select Repair in the installer dialog and wait for the installer to finish.
HTTP error 500.30
When I open Arrigo Local and/or check the status I get HTTP error '500.30 - ANCM In-Process Start Failure'.
This error could occur if the ArrigoAppPool lacks MODIFY permissions for the folder Proj:\Arrigo
.
Start by attaching Arrigo to your current EXO project. The Attach Tool should be able to set the correct permissons.
If the problem still persists you need to manually verify that the folder has correct permissions. If not: add IIS AppPool\ArrigoAppPool
with MODIFY permissions.
HTTP error 500.31
When I open Arrigo Local and/or check the status I get HTTP error '500.31 - ANCM Failed to Find Native Dependencies'.
Something went wrong during the Dotnet Hosting Bundle installation, and the installer wasn't able to detect it.
Repair the current bundle (Microsoft .NET Core [version] - Windows Server Hosting) and contact arrigosupport@rssoftware.se if the error persists.
Repairing the Windows Server Hosting bundle
- Open Installed apps or Apps & features (depending on Windows version).
- Locate the Hosting Bundle, select it and click Modify.
- Select Repair in the installer dialog and wait for the installer to finish.
HTTP error 500.37
When I open Arrigo Local and/or check the status I get HTTP error '500.37 - ANCM Failed to Start Within Startup Time Limit'.
This error can occur when a large number of apps are configured to start automatically after a restart.
The error is usually fixed by restarting the Arrigo App Pool.
If you get this error often you can try adjusting the startup time limit for the Arrigo App Pool:
- Open the Internet Information Services (IIS) Manager by clicking Start and then navigating to Programs/Windows Administrative Tools
- In the IIS Manager, expand the main server node and select Application Pools
- Right-click on ArrigoAppPool and select Advanced Settings...
- Increase the Process Model/Startup Time Limit (seconds) from 90 (default) to 180
- Click OK to close the dialog
If you still get the error after adjusting the time limit please contact arrigosupport@rssoftware.se.
Error when opening ViewDesigner
When I open View Designer I get this error. Why?
This is most likely due to some other program "stealing" the default port for the View Designer backend. Start by verifying that this is the case by opening the Resource Monitor. Go to the Network tab and expand the Listening Ports section.
In this example we see that the software stealing-port-8001.exe is already listening on port 8001, which is the default port for the View Designer backend.
Solution 1
Terminate/disable the software that is using port 8001.
Solution 2
Change the default port for the View Designer backend.
Do this by opening the file Prod:\Program\ViewDesignerFramework.config
in a text editor (in admin mode). Find the line containing 8001
and change it to an available port (you can use Resource Monitor to find one).
<viewdesigner>
<wcfexoconfig>
<url>net.pipe://localhost/exoconfig</url>
</wcfexoconfig>
<wcfviewdesigner>
<url>net.pipe://localhost/visualcontrol</url>
</wcfviewdesigner>
<flashhttpserver>
<url>http://+:8001/</url> <!-- This is the line that you need to edit -->
</flashhttpserver>
</viewdesigner>
In most cases you do not have to restart your computer for the change to take effect, but do that if you still get the same error.
Certain file types cannot be loaded
The login page looks strange and the browser doesn't seem to load all files
This could happen if some MIME types are not configured/set in the IIS.
Solution
Open the IIS Manager, select the root node and open the MIME Types feature:
Add the following MIME types if they are not registered:
Extension | MIME Type | Entry Type |
---|---|---|
.json |
application/json |
Local |
.woff |
font/x-woff |
Local |
.woff2 |
application/font-woff2 |
Local |
Change listening/bound port for IIS
I have a software installed that must run on port 80, the same as the default setting for IIS. How do I change the bound port in IIS and will Arrigo Local function correctly?
Yes, Arrigo Local will work just fine with any port you throw at it. Just make sure that the port you intend to use is available by using the Resource Monitor.
Danger
8080 is the common alternative HTTP port, but is is also the default port for the internal services of Arrigo Local.
In some cases, it might appear to be available but we strongly recommend to use another available port.
Solution
Open the Internet Information Services (IIS) Manager by clicking Start and then navigate to Programs/Windows Administrative Tools.
In the IIS Manager, expand the main server node, select Sites/Default Web Site and then click Actions/Bindings....
Select the http / Port 80
binding and click Edit....
Replace 80
with the new and available port number and Close/OK your way out of the dialogs.
Https and SSL certificates
We want to use SSL/TLS and therefor need a certificate. Can we create one ourselves and use it?
Solution
No. Don't use self-signed certificates.
Buy a valid certificate from a trusted certificate authority.
Most (if not all) browsers will limit its functionality if it encounters a self-signed certificate. Websockets are commonly disabled when you access a site without a valid certificate. So, images might load and display correctly but you will not get any value updates. In some cases you might not even get into the site as some files will not load correctly (theme.json
and others).
And once you have a valid certificate installed (preferrably in a firewall, not locally on the machine) do not forget to update the certificate when needed! Otherwise you will run in to the problems described above when the certificate expires.
More signal colors than the nine available
I have a chart with more than nine signals configured. But the tool (Arrigo Chart tool) only has nine pre-defined colors for signals.
How do I select unique colors for each signal?
Solution
There are two options for solving this:
- Enter a hex formatted color string into the
Color
attribute: 0xFF0000 for red, 0x00FF00 for blue etc.
This gives you roughly 16 million different colors to choose from. - Use the pre-defined legacy colors in the theme. You find all the colors in the theme definitions, and then you can pick any of the
legacy
colors from thecolors/order
section. Just enter the name of the in theColor
attribute: legacy.primary.magenta etc., but also note that some of these colors are already defined in the tool (for example legacy.primary.paleRed).
Fonts in views
How do I change the font size and/or family in my views?
Solution
This can be done using the configurable font sizes ExtraFont1-9.
Open your view in the designer tool and change the Font size
attribute to ExtraFont1:
Then open the file Proj:\Shared\theme\Standard.cwvt.json
in a text editor.
Locate the settings for ExtraFont1 and change them according to your preferences.
In this example we will change both the font size and family.
Original values:
New values:
{
"Name": "ExtraFont1",
"Font": "Times New Roman",
"Size": "24px",
"Style": "Regular",
"IconSize": "20px"
}
Restart EXOscada for the changes to take effect.
The elements before the changes:
After the changes:
Note
Please note that you can use only ExtraFont1-9 for customized fonts.
Reinstalling EXOscada/EXOdesigner
If you choose to reinstall EXOscada/EXOdesigner by deleting the entire program folder first (default location: %ProgramFiles%\Regin
), make sure to run the Arrigo Local Installer afterward. This is necessary because Arrigo Local installs various tools and services in that specific folder.
Also note that you have to run the installer with the force
argument set. Read more about that here.