Skip to content
View arthexis's full-sized avatar
🎯
Aiming at All
🎯
Aiming at All

Block or report arthexis

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
arthexis/README.md

Constellation

OCPP 1.6 Coverage OCPP 2.0.1 Coverage OCPP 2.1 Coverage CI PyPI License: GPL v3 Watchtowers

Purpose

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

Visit our Changelog Report to browse past and future features and other updates.

Suite Features

  • Compatible with the Open Charge Point Protocol (OCPP) 1.6 by default, while allowing Charging Stations to upgrade to newer protocols if they support them.

    Charge point → CSMS

    Action 1.6 2.0.1 2.1 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.
    LogStatusNotification Report log upload progress from the charge point for diagnostics oversight.
    MeterValues Persist periodic energy and power readings while a transaction is active.
    SecurityEventNotification Record charge point security events for audit trails.
    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 1.6 2.0.1 2.1 What we do
    CancelReservation Withdraw pending reservations and release connectors directly from the control center.
    ChangeAvailability Switch connectors or the whole station between operative and inoperative states.
    ChangeConfiguration Update supported charger settings and persist applied values in the control center.
    ClearCache Flush local authorization caches to force fresh lookups from the CSMS.
    DataTransfer Send vendor-specific commands and log the charge point response.
    GetConfiguration Poll the device for the current values of tracked configuration keys.
    GetDiagnostics Request a diagnostics archive upload to a signed URL for troubleshooting.
    GetLocalListVersion Retrieve the current RFID whitelist version and synchronize entries reported by the charge point.
    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.
    SendLocalList Publish released and approved RFIDs as the charge point's local authorization list.
    TriggerMessage Ask the device to send an immediate update (for example status or diagnostics).
    UnlockConnector Release stuck connectors without on-site intervention.
    UpdateFirmware Deliver firmware packages to chargers with secure download tokens and track installation responses.

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

  • Linux: open a terminal and run git clone https://github.com/arthexis/arthexis.git.
  • Windows: open PowerShell or Git Bash and run the same command.

For preloaded environments without Git remotes configured, see the remotes note in the Install & Lifecycle Scripts Manual.

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 localhost:8888 by default.

For local bootstrapping, run ./install.sh --terminal to install with defaults, start the server with ./start.sh (optionally passing --reload or --celery), and execute a quick smoke test with pytest -k smoke. Override the role, port, reload, Celery, and test selection with the script flags when needed.

  • 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 --terminal to bootstrap a default Terminal node (pass --control, --satellite, or --watchtower as needed). Override the port with --port 8888 (the default fallback) and control Celery with --celery or --no-celery. Use ./install.sh --help to see every available option.
    • Use ./upgrade.sh with --stable (weekly) or --latest/-l/--unstable (daily) to follow the preferred release cadence.
    • Consult the Install & Lifecycle Scripts Manual for complete flag descriptions and operational notes.
    • Review the Auto-Upgrade Flow for how delegated upgrades run and how to observe them.
  • Windows:

Upgrade channels (opt-in during install/upgrade or with scripts/delegated-upgrade.sh):

Channel Check cadence Purpose Opt-in flag
Stable Weekly (Thu before 5:00 AM) Tracks release revisions with automated weekly checks. --stable (default)
Latest Daily (same hour) Follows the newest mainline revisions with daily checks. --latest / -l or --unstable
Manual None (manual upgrades only) Disables the automatic upgrade loop for full operator control. Run upgrades on demand without specifying a channel flag.

4. Administration

Support

Arthexis Constellation is still under very active development and new features are added every day.

If you decide to use our suite for your energy projects, you may contact us at [email protected] or visit our web page for professional services and commercial support.

Pinned Loading

  1. gway gway Public template

    Software Project Infraestructure

    Python 2

  2. arthexis arthexis Public template

    Energy & Power Infrastructure

    Python 1