Skip to main content

Power & Energy Infrastructure

Project description

Arthexis Constellation

Coverage OCPP 1.6 Coverage

Purpose

Arthexis Constellation is a narrative-driven Django-based software suite that centralizes tools for managing electric vehicle charging infrastructure and orchestrating energy-related products and services.

Current Features

  • Compatible with the Open Charge Point Protocol (OCPP) 1.6 central system. Supported actions are summarized below.

    Charge point → CSMS

    Action What we do
    Authorize Validate RFID or token authorization requests before a session starts.
    BootNotification Register the charge point and update identity, firmware, and status details.
    DataTransfer Accept vendor-specific payloads and record the results.
    DiagnosticsStatusNotification Track the progress of diagnostic uploads kicked off from the back office.
    FirmwareStatusNotification Track firmware update lifecycle events from charge points.
    Heartbeat Keep the websocket session alive and update last-seen timestamps.
    MeterValues Persist periodic energy and power readings while a transaction is active.
    StartTransaction Create charging sessions with initial meter values and identification data.
    StatusNotification Reflect connector availability and fault states in real time.
    StopTransaction Close charging sessions, capturing closing meter values and stop reasons.

    CSMS → Charge point

    Action What we do
    ChangeAvailability Switch connectors or the whole station between operative and inoperative states.
    DataTransfer Send vendor-specific commands and log the charge point response.
    GetConfiguration Poll the device for the current values of tracked configuration keys.
    RemoteStartTransaction Initiate a charging session remotely for an identified customer or token.
    RemoteStopTransaction Terminate active charging sessions from the control center.
    ReserveNow Reserve connectors for upcoming sessions with automatic connector selection and confirmation tracking.
    Reset Request a soft or hard reboot to recover from faults.
    TriggerMessage Ask the device to send an immediate update (for example status or diagnostics).

    OCPP 1.6 roadmap. The following catalogue actions are in our backlog: CancelReservation, ChangeConfiguration, ClearCache, ClearChargingProfile, GetCompositeSchedule, GetDiagnostics, GetLocalListVersion, SendLocalList, SetChargingProfile, UnlockConnector, UpdateFirmware.

  • Charge point reservations with automated connector assignment, energy account and RFID linkage, and EVCS confirmation tracking.

  • API integration with Odoo, syncing:

    • Employee credentials via res.users
    • Product catalog lookups via product.product
  • Runs on Windows 11 and Ubuntu 22.04 LTS

  • Tested for the Raspberry Pi 4 Model B

Project under rapid active and open development.

Role Architecture

Arthexis Constellation ships in four node roles tailored to different deployment scenarios.

Role Description & Common Features
Terminal Single-User Research & Development
Features: GUI Toast
Control Single-Device Testing & Special Task Appliances
Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner
Satellite Multi-Device Edge, Network & Data Acquisition
Features: AP Router, Celery Queue, NGINX Server, RFID Scanner
Watchtower Multi-User Cloud & Orchestration
Features: Celery Queue, NGINX Server

Quick Guide

1. Clone

2. Start and stop

Terminal nodes can start directly with the scripts below without installing; Control, Satellite, and Watchtower roles require installation first. Both approaches listen on http://localhost:8000/ by default.

  • VS Code

    • Open the folder and go to the Run and Debug panel (Ctrl+Shift+D).
    • Select the Run Server (or Debug Server) configuration.
    • Press the green start button. Stop the server with the red square button (Shift+F5).
  • Shell

3. Install and upgrade

  • Linux:

    • Run ./install.sh with a node role flag:
      • --terminal – default when unspecified and recommended if you're unsure. Terminal nodes can also use the start/stop scripts above without installing.
      • --control – prepares the single-device testing appliance.
      • --satellite – configures the edge data acquisition node.
      • --constellation – enables the multi-user orchestration stack.
    • Use ./install.sh --help to list every available flag if you need to customize the node beyond the role defaults.
    • Upgrade with ./upgrade.sh.
    • Consult the Install & Lifecycle Scripts Manual for complete flag descriptions and operational notes.
    • Review the Upgrade Guide for manual steps required after releases that stop automating specific migrations.
  • Windows:

    • Run install.bat to install (Terminal role) and upgrade.bat to upgrade.
    • Installation is not required to start in Terminal mode (the default).

4. Administration

Visit http://localhost:8000/admin/ for the Django admin and http://localhost:8000/admindocs/ for the admindocs. Use --port with the start scripts or installer when you need to expose a different port.

Sigils

Sigils are bracketed tokens such as [ENV.SMTP_PASSWORD] that Arthexis expands at runtime. They make it possible to reference configuration secrets, system metadata, or records stored in other apps without duplicating values across the project.

Syntax at a glance

  • [PREFIX.KEY] — returns a field or attribute. Hyphens and casing are normalized automatically.
  • [PREFIX=IDENTIFIER.FIELD] — selects a specific record by primary key or any unique field.
  • [PREFIX:FIELD=VALUE.ATTRIBUTE] — filters by a custom field instead of the primary key.
  • [PREFIX.FIELD=[OTHER.SIGIL]] — nests sigils so the value after = resolves before the outer token.
  • [PREFIX] — for entity prefixes, returns the serialized object in JSON; for configuration prefixes, resolves to an empty string when the key is missing.

The platform ships with three configuration prefixes:

  • ENV reads environment variables.
  • CONF reads Django settings.
  • SYS exposes computed system information such as build metadata.

Additional prefixes are defined through Sigil Roots, which map a short code (for example ROLE, ODOO, or USER) to a Django model. You can review them from Admin → Sigil Builder (/admin/sigil-builder/), where a test console is also available.

Unknown prefixes remain in place (e.g. [UNKNOWN.VALUE]) and are logged.

Support

Contact us at tecnologia@gelectriic.com or visit our web page for professional services and commercial support.

Project Guidelines

  • AGENTS – operating handbook for repository workflows, testing, and release management.
  • DESIGN – visual, UX, and branding guidance that all interfaces must follow.

About Me

"What, you want to know about me too? Well, I enjoy developing software, role-playing games, long walks on the beach and a fourth secret thing." --Arthexis

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arthexis-0.1.27.tar.gz (561.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arthexis-0.1.27-py3-none-any.whl (496.8 kB view details)

Uploaded Python 3

File details

Details for the file arthexis-0.1.27.tar.gz.

File metadata

  • Download URL: arthexis-0.1.27.tar.gz
  • Upload date:
  • Size: 561.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for arthexis-0.1.27.tar.gz
Algorithm Hash digest
SHA256 df44e1d5b6dcfb14ee61be3c6ed76da8bfeda3035438b5367ba61a51bbd248f5
MD5 d1a72d6fa2e8f9a58c4b756705f33878
BLAKE2b-256 2d3d782a65eb0f1b6c355f5b3ee15318b4953737eae5b309c1bbeee12495b69f

See more details on using hashes here.

File details

Details for the file arthexis-0.1.27-py3-none-any.whl.

File metadata

  • Download URL: arthexis-0.1.27-py3-none-any.whl
  • Upload date:
  • Size: 496.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for arthexis-0.1.27-py3-none-any.whl
Algorithm Hash digest
SHA256 b38bc8fef8bb1390426ce258ed07a0d41001a97256c7622d0ad0fb6855b8157a
MD5 50c0946c94958832871332e81bbfd9c3
BLAKE2b-256 17f7e7ea4503750b2d6cddb81f8cf737f9928f88d9ae39912c226c813e6c27c8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page