Project

General

Profile

Actions

DTXr doc » History » Revision 76

« Previous | Revision 76/98 (diff) | Next »
David Fredriksson, 12/09/2025 04:51 PM


DTXr documentation

Installation

  • System Requirements
    DTXr can run on any machine that can run Java 17 and has sufficient with RAM and disk capacity.
Requirement System RAM System DISK Example
Minimal 512Mbyte 512Mbyte Raspberry 1, Raspberry Zero
Better 512Mbyte 512Mbyte Rasberry Zero 2
Avarage 1GByte 1Gbyte Raspberry 2-4
Top 2GByte 8Gbyte Raspberry 4, Raspberry CM4, Server, PC
  • Network Requirements
    DTXr can run stand alone without any active network connection. In that case the management pages is accessible via localhost interface. But for DTXr to be a fully functional BACnet/IP device it must be connected to an IP network that offers IP address via DHCP and where broadcast traffic is allowed.
  • Download DTXr software packages
    Currently only customers to DAVITOR can download DTXr. Contact for purchase information.
  • Install on Linux
    • There is special install scripts, please follow these steps:
      1. Download latest DTXr base image and copy to a SD-card that has 16Gbyte capacity or more

Or install a new image and install java

sudo apt install default-jdk 

  1. Insert the SD card, attach keyboard and screen via cable and start the device
  2. When you get prompt login as admin/davitor
  3. Download the installation script from davitor repository
    (note dtx.sh has an update since Jan 17th, 2024 see new parameter 'installfolder' below)
    (note dtx.sh has an update since Nov 6th, 2025 see new parameter 'type' below)
    wget --user=**** --password=**** https://artifacts.davitor.com/repository/dtx-raw/scripts/dtx.sh

    There is also a utillity script that can set the host name and MAC adress. Note, optional and only applicable on LION product appliances.
    wget --user=**** --password=****  https://artifacts.davitor.com/repository/dtx-raw/scripts/system.sh

    Make the scripts exec
    sudo chmod 770 *.sh
  4. Run installation as below where you first alter:
    • Required type (-t type) where type can be "scriptengine" for small platforms like RpiZ with 32-bit OS or "polyglot" for any 64-bits OS like servers or PC.
    • Required version (-v x.y.z)
    • The the install folder (-f myfolder) Note: Still relative to /usr/local so (-f myfolder) results in /usr/local/myfolder/dtx...
    • Partner user name (-u **)
    • Partner password (-p **)
    • Application password for the HTTP interface login on port 9090 (-app-password xxxxxxx)
    • BACnet Decvice Id (bac-device-id=nnnnn)
    • BACnet password which you will use to control the BACnet device DCC (bacnet-password=xxxxxx)
    • BACnet Device Name (bac-device-name=yyyy)
    • DAVITOR Reference Key (drk=xxxx) is used to mange and maintain this device from the DAVITOR PLM (Product Lifecycle Management) service. (drk=xxxx) The sequence of drk:s is in PLM instance database.
    • Hardware Platform Type (platform=xx) is used to control and switch on/off special features that is hardware dependent.
      For LION products use:
      sudo ./dtx.sh -t scriptengine|polyglot -v 3.2.2 -f myfolder -u **** -p **** -s "bac-device-id=nnnnn bac-device-name=yyyy app-password=xxxxxx bac-password=xxxxxx lion-enabled=true drk=xxxx platform=XX"

      For other installations like PC, Servers etc. use:
      sudo ./dtx.sh -t scriptengine|polyglot -v 3.1.23 -f myfolder -u **** -p **** -s "bac-device-id=nnnnn bac-device-name=yyyy app-password=xxxxxx bac-password=xxxxxx drk=xxxx platform=XX"
      1. Utillity script to set MAC and host name
        sudo ./system.sh -mac 70:B3:D5:16:E8:99 -hn DTX-L1-8R8DI
  • Upgrade on linux
    If you already have DTX installed and should upgrade to a new version (Don't forget to set correct installfolder with -f)
    sudo ./dtx.sh -t scriptengine|polyglot -v 3.1.23 -f myfolder -u **** -p ****
  • Manage the DTX service (Note, since 17th Jan, 2024 of dtx.sh the names of the services are appended with the instsall folder in order to install multiple instances of DTX in same machine.)
    Stop
    sudo systemctl stop dtx_{myfolder}

    Start
    sudo systemctl start dtx_{myfolder}

    Check status
    systemctl status dtx_{myfolder}

    Disable service, wont start at reboot
    sudo systemctl disable dtx_{myfolder}

    Enable service, will start automatically at reboot
    sudo systemctl enable dtx_{myfolder}
  • For other Linux distributions follow this steps
    1. TBD...
  • Install on Windows
    • Follow these steps:
      1. TBD...

LION Fieldbus

  • See LION Wiki for howto in installataion, channel assigmnets and testing.

Setup

DTXr is setup via Menu -> Setup page.

  • System
    • Administrator password - Password for the default (and not changeable) account "admin". Default is "davitor".
      When you log in you will start att /home/admin
      There is another user "pi" as well with a secret password.
    • Operator username - Username for the typical user of any HMI developed on this device. Typically a machine operator. [Optional]
    • Operator password - Password for the operator user. [Optional]
    • Operator start page - Set any web page in the project folder that will automatically shown on an operator login. [Optional]
    • Log Level - The system severity level for the system_app.log in /Logs tree directory.
    • Platform - This is where DTX gets its information on which hardware options to consider.
  • BACnet
    • TBD...
  • Davitor Advantage
    • TBD...
  • Wireless Mesh
    • TBD...
  • Bluetooth
    • TBD...
  • External Database Access
    • TBD...
  • File Integration
    • TBD...
  • HTTP
    • TBD...
  • LION Interface
    • TBD...
  • IoT HUB (BETA)
    • TBD...

User's Guide

DTXr Web Interface – End User Documentation

Important:
When selecting a remote BACnet device, the object list and notifications do not update automatically.
You must press Objects → Refresh to reload the data.

For the local device that hosts the web page, all updates (property changes, events, alarms) are received in real time.


1. Overview
The DTXr web interface allows users to:
  • View BACnet objects and their properties
  • Modify writable properties (e.g., Present Value)
  • Edit weekly schedules
  • Switch between local and remote devices
  • Monitor alarms, events, and notifications
  • Use real-time updates through WebSocket (local device only)


2. Navigation Bar

2.1 Objects Menu
  • Refresh reloads all object data and events.

Note: Refresh is required when a remote device is selected.

2.2 Devices Menu
  • Displays local device and all discovered BACnet devices.
  • Devices are grouped by network.
  • Selecting a device loads its object list.

2.3 Priority Menu
Controls the BACnet write priority used when writing Present Value.

Examples:
  • Priority 1 – Manual Life Safety
  • Priority 8 – Default
  • Priority 16 – Lowest

2.4 Notifications Menu
Shows:
  • Alarms
  • Events
  • Return-to-normal

The menu uses badge counters:
  • Yellow = events
  • Red = alarms
  • Green = normal transitions

3. Objects View

The main view lists all BACnet objects.

Features:
  • Collapsible categories (accordions)
  • Lazy loading of properties when expanded
  • Editable Present Value fields where supported
  • Real-time updates on the local device
  • Manual refresh required for remote devices

3.1 Expanding an Object
Expanding an object loads:
  • Properties
  • Values
  • Writable fields
  • Schedule editor button (if applicable)

3.2 Writing Property Values
Steps:
  1. Edit a value in the input field.
  2. Press the Write/Save button.
  3. DTXr sends a BACnet WriteProperty with the selected priority.
  4. A popup shows success or error.


4. Device Discovery

4.1 Discovering Devices
Opening the Devices dropdown sends a Who-Is request and populates the list.

4.2 Selecting a Device
When switching devices:
  • Properties reload
  • Notification list reloads
  • The selected device name appears in the navbar

4.3 Refreshing Content
Mandatory when using remote devices.

Use:
Objects → Refresh

This reloads:
  • Object list
  • Property values
  • Notifications

5. Notifications and Events

Notifications include:
  • Alarm
  • Event
  • Normal
Real-time updates:
  • Enabled for local device
  • Disabled for remote devices — manual refresh required

5.1 Acknowledgment
If a notification supports acknowledgment:
  • Press Acknowledge
  • DTXr sends BACnet AcknowledgeAlarm
  • Notification updates when completed


6. Weekly Schedule Editor

6.1 Opening the Editor
Click the schedule property to open the weekly calendar modal.

6.2 Creating Events
Select a time in the calendar to create a new event.

6.3 Editing Events
Click an event to modify:
  • Binary schedule → Active / Inactive
  • Analog schedule → numeric value

6.4 Saving the Schedule
Click Save changes to store the weekly schedule.

The data is:
  • Compiled into BACnet dailySchedule structures
  • Sorted chronologically
  • Sent to the device as JSON

7. Popups and Feedback

Popups indicate:
  • Success
  • Errors
  • Info
  • Warnings

8. Troubleshooting

8.1 Objects Not Updating
  • Remote device selected → press Refresh
  • Network or device may be unreachable

8.2 Write Errors
Possible reasons:
  • Incorrect priority
  • Object out of service
  • Invalid value

8.3 Schedule Issues
  • No events created
  • Missing object ID
  • Remote device requires manual refresh


Developer's Guide

IDE walk through
The DTXr Javascript guide
Blockly tutorials

Updated by David Fredriksson 6 days ago · 76 revisions