Delphi (Pascal) Open Source for eHouse IoT | BAS | BMS | BIM | AI | PM » Open Source Software | Libraries | API functions | Windows | Linux.


eHouse » Development | Integration | Artificial Intelligence and Autonomous Algorithms

eHouse and eCity systems contain auxiliary programming libraries for boundless individual development of software, communication with controllers and seriously expand system functionality and integration possibility.
This software is required to develop own solutions and new use-cases using our universal controllers without interfere in hardware, firmware, core/server software, Applications for control, visualization, management.
This is auxiliary, supportive and overlay software for "feeding" external systems with eHouse statuses/data and developing own solutions "from scratch":
  • Smart Monitoring
  • Machine Learning
  • Edge Computing
  • Predictive Maintenance
  • high-level communication applications to indirect communication to the system via eHouse Server/Cloud/Proxy
  • Building Information Modeling - BIM optimizing functionality and efficiency of (HVAC) Heating, Air Conditioning, Lighting systems
  • Various Layers communications protocols for integrations
  • Multi-protocol and multi-communication interface gateways for integrations
  • Artificial Intelligence (AI)
  • Anomaly Detection and Signaling
  • low-level communication drivers to direct communication to controllers via main interface
  • Autonomous Control and Monitoring
  • Cloud Computing
  • mid-level communication drivers to indirect communication to controllers via CommManager, eHouse PRO/Hybrid/BMS server and other Server & gateways applications: "eHouse4Java", "eHouse.exe", "eHouseWiFi.exe"

This Delphi Software Package contains workable binary and open source-code for further development of own solutions based on this template.

This application is as simple as possible (no decorations) to assure low Hardware and OS requirements:
  • resolution, colors of displays, HMI panels (monochrome is possible and optimal resolution 1024px*800px). It can be up/down-scaled for different display sizes
  • computer system overall efficiency: low-cost processors, low memory, low performance (eg Windows NetBooks with Atom/Celeron processors)
  • Universal software - works under any Windows operating system versions (XP, Vista, 7, 8, 10)

General Functionality of the software:
  • This software need to be compiled with Delphi to executive/binary form ".exe" (in case of change Pascal source code). It is much faster comparing to on-the-run processed/parsed script. Reverse engineering of hard-coded binary after development is rather non profitable. Software receives statuses in the real-time directly from IP controllers (LAN/WiFi) via UDP. It do not require (for IP Controllers) any server software to be run for autonomous work of Delphi application or as a RoomPanel.
  • contains Low level binary protocol decoder of eHouse WiFi (Pascal) controllers (TCP/UDP eHouse LAN/WiFi/PRO protocol)
  • contains Low level binary protocol decoder of eHouse One (RS422/485) in Pascal controllers {RoomManager, ExternalManager, HeatManager} indirectly via eHouse Server (TCP/UDP eHouse LAN/WiFi/PRO protocol)
  • contains Low level binary protocol decoder of eHouse LAN (Ethernet) in Pascal controllers (EthernetRoomManager, CommManager, LevelManager) - (TCP/UDP eHouse LAN/WiFi/PRO protocol)
  • Decoding low-level binary status for eHouse LAN, eHouse WiFi, eHouse One (RS422/485)
  • Sending commands via TCP/IP (with challenge-response authorization algorithm over TCP/IP with eHouse LAN/WiFi/PRO protocol)
  • Online Automatic Visualization and Control - (online controllers' statuses are automatically received by build in UDP Listener/Server. Selected Room (RoomManager) may be displayed on single screen Panel.
  • Room Panel most recent revision - eHouse One, LAN, WiFi - decoders and control panel software - 2021 Delphi Pascal
  • Displays measurements inputs, active programs, etc.
  • Room Panel eHouse LAN, eHouse RS485/422 - Mature solution before 2012
  • Cooperation with eHouse One (RS422/485) system under CommManager, "eHouse.exe" application or eHouse PRO Server
  • Displays "active buttons" for visualization of output states and control outputs by pressing buttons (sending commands to controllers or sever)
  • Online Control - via TCP/IP over LAN, WiFi network (sending commands to IP controllers directly (eHouse WiFi, eHouse LAN) and indirectly via Server (non IP Controllers eg. RS-485)
  • contains integration via windows file system (with eHouse.exe application - mature solution before 2008)
  • Continuous operation application - can work all the time (might be monitored by "WDTKiller.exe" for valid working)
  • RS-422/485 direct Communication in Pascal for Linux (Lazarus)
  • continuously logging device statuses (to the text files)
  • reads configuration from "eHouse.exe" and "eHouseWiFi.exe" applications
  • Caching device statuses in local memory and array variables for complete and integrated system data processing
  • can works locally or remotely via local network
  • This Software supports eHouse WiFi, eHouse LAN {ERM, CM/LM}, eHouse One RS485/422 systems {EM/RM/HM}. Other systems variants software library might be disclosed to the partners.

  • eHouse One - since 2000


    HeatManager - HVAC + Central Heating Autonomous Controller


    Language description stored in text files and can be translated to any different language
    HeatManager - eHouse One Panel
    RoomManagers Example with names (configured in eHouse.exe application in text files).
    RoomManager - eHouse One Living Room 1 Panel
    RoomManager - eHouse One Kitchen Panel

    eHouse Ethernet - since 2008


    EthernetRoomManagers example (configured in eHouseWiFi.exe application).
    EthernetRoomManager - eHouse LAN Living Room 1 Panel
    EthernetRoomManager - eHouse LAN Kitchen Panel

Full spectrum of software in many programming language for optimizing data processing, performance, efficiency, GUI, Web Interface, integrations:
  • web applications templates
  • application templates
  • API functions
  • Open Source
  • Binaries for various platforms Linux, Windows, Android, Java,.NET
  • source codes
  • Server software templates
  • programming libraries

To create and develop software for computer hardware such as:
  • PCs
  • SmartPhones (Android, Windows, WWW)
  • Mini Computers (RaspberryPi 1..4, Banana Pi/PRO, Orange Pi, Thinker Board)
  • SmartTV (Android, WWW)
  • PADs
  • Data Center Servers (based on Linux binary code or Web services)


We provide libraries for the following operating systems:
  • Linux PC (Java), Server Software (C)
  • Apple iPhone, iPad, iPod - web browser
  • Windows, XP..10 (Delphi - Pascal)
  • Other systems that support Java
  • Android (Java)
  • web servers (C, PHP, JavaScript, HTML, SVG, CSS)
  • Other mobile systems supporting Java MIDP 2.0
  • web browsers (JavaScript, HTML, SVG, CSS)
  • Windows Mobile/Phone (.Net/.Net CF)

We are currently providing libraries for the following programming languages:
  • Java MIDP
  • C#, C Sharp for.NET (DotNet),.NET CF
  • HTML, SVG, JavaScript
  • Java
  • Java Android
  • PHP
  • Delphi (Pascal)
  • C (low level), C++

The software contained in the libraries has the following functions:
  • graphic control online - from SVG graphic visualization
  • text control from the list
  • collecting status from controllers and keeping in your own manual memory for further processing, creating advanced control algorithms, logs, reports
  • configuration export to the OpenRemote.org
  • creation of communication gateways to integrate other systems and software with the automation of the eHouse building.
  • Online graphic visualization - scaled SVG vector graphics
  • receiving statuses (in the real-time) from non IP controllers (RS-422/485, CAN, RF, Central, LoRaWAN, GSM), Internet, TCP, UDP Broadcast
  • voice control, speech recognition
  • direct and online receiving statuses (in the real-time) from LAN/WiFi controllers, Internet, TCP, UDP Broadcast
  • sending events to the eHouse system via SMS, WiFi, Ethernet, Internet, Wireless LAN, WAN, BlueTooth, e-mail
  • communication with eHouse controllers or with eHouse software
  • integration with the OpenRemote.org (Source Code)

More information about creating software in the eHouse system eHouse Building Automation DiY Blog examples, programming, do it yourself.