Skip to content

Releases: citrineos/citrineos-core

v1.5.1

28 Jan 22:04
Compare
Choose a tag to compare

1.5.1 Release Notes

Patch release with some QoL updates:

  • OCPP logs added via new collection associated with ChargingStation
  • UserPreferences added to support persisting user preferences about reporting metrics

This release, in combo with the CitrineOS-Operator-UI release 0.2.0, has been certified by the OCA in OCPP 2.0.1 Core and Advanced Security! This includes the following use cases (Note: CitrineOS supports ALL use cases in OCPP 2.0.1, however the other certification profiles are not available yet for certification. These use cases are only the ones in the certification offered by the Open Charge Alliance):

Core

  • Basic Authentication
  • TLS - server-side certificate
  • Update Charging Station Password for HTTP Basic Authentication
  • Security Event Notification
  • Booting a Charging Station
  • Configuring a Charging Station
  • Resetting a Charging Station / EVSE
  • Authorization incl. GroupId
  • Stop Transaction with a Master Pass
  • Local start transaction - Cable plugin first & Authorization first
  • Start / Stop transaction options
  • Disconnect cable on EV-side
  • Check Transaction status
  • Remote start / stop transaction
  • Remote unlock Connector
  • Remote Trigger
  • Change Availability - Charging Station / EVSE / Connector
  • Clock-aligned Meter & Sampled Meter Values
  • Install CA certificates
  • Retrieve certificates from Charging Station
  • Delete a certificate from a Charging Station
  • AdditionalRootCertificateCheck
  • Retrieve Log Information
  • Get / Clear Customer Information
  • Secure Firmware Update
  • Store / Clear Authorization Data in Authorization Cache
  • Authorization through authorization cache

Advanced Security

  • TLS - Client-side certificate
  • Update Charging Station Certificate
  • Upgrade Charging Station Security Profile

v1.5.0

02 Dec 19:34
8b4fe08
Compare
Choose a tag to compare

1.5.0 Release Notes:

These changes primarily serve to support our new Operator UI:

  • Enabling Cors headers for data & message apis
  • ChargingStationSequences added to create station-level serial integers for requestIds, such as for OCPP 2.0.1's RequestStartRequests or GetLogsRequests
  • Persisting installed certificate hashes from GetInstalledCertificateIds request
  • LatestStatusNotification table for storing up-to-date charging station statuses
  • ServerNetworkProfiles added, in order to track relations between CitrineOS's websocket servers and SetNetworkProfileRequests in order to enforce SecurityProfile restriction: charging station should be unable to connect to a lower security profile than the ones associated with their already configured network profiles

bugfixes:

  • TransactionEvent authorization now only checks for ConcurrentTx on 'Started'
  • SetVariable rejections are appropriately rolled back in station's device model

enhancements:

  • OpenAPI spec now populates #ref values

v1.4.3

18 Sep 20:09
a6701d6
Compare
Choose a tag to compare
  • Local Auth List support added, completing support for OCPP 2.0.1 certification profiles!
  • Unit test coverage expanded, including authentication
  • 00_Base/json-schema-processor.js improved - null added to optional array types, const removed from enum declarations
  • Some dependency versions updated to satisfy renovate
  • fixes citrineos/citrineos#41 and citrineos/citrineos#38

v1.4.2

19 Aug 19:35
823849c
Compare
Choose a tag to compare

Fix for desync bug preventing application start.

v1.4.1

19 Aug 17:29
049c3e3
Compare
Choose a tag to compare

Patch update - Miscellaneous fixes:

  • #194 - (Release 1.4) Adding retry setup support for sequelize
  • #223 - (Release 1.4) Enhancing Boot Notification Service/Handler tests
  • #219 - [Cost updated] Improve accuracy of cost calculations

v1.4.0

16 Aug 20:06
d4d40af
Compare
Choose a tag to compare

New Features:

  • Unit tests!
    • Coverage will increase in each release from now on.
    • Test runner added to github actions.
  • OCPI no longer referenced here
    • citrineos-ocpi/Server can be used to start up OCPP 2.0.1 + OCPI 2.2.1
  • Advanced MeterValue handling
    • Support for deprecated MeterValues CallAction
    • Support for SignedMeterValues in TransactionEvents & MeterValues messages
  • @AsDataEndpoint decorator expanded
    • Now can support authentication middleware
  • OCPP Message types now explicitly allow Null
    • json-schema-processor.js updated to generate these updated interfaces
  • Support for Reservations!
  • Support for ISO15118-based SmartCharging!
  • Subscription API supports direct-to-database subscriptions via Directus without restarting Citrine
  • Sequelize database connection now retries if it fails initially, such as due to the database not being ready to accept connections yet
  • Renovate added
  • automated interval for CostUpdated messages for transactions can now be cleared (necessary for various transaction fail states)

v1.3.2

01 Aug 16:15
7659cea
Compare
Choose a tag to compare

Updates to support OCPI new features & fixes

  • Authorization interface added to support real time authentication (will be useful for custom authorization flows beyond OCPI)
  • SQL Views added to sort OCPP data with queries referencing data beyond Core
  • Miscellaneous fixes & functions added

v1.3.1

17 Jul 20:59
89fc3bd
Compare
Choose a tag to compare

Changes to support citrineos-ocpi 0.1.1

Fixes in citrineos-core:

  1. When SetVariablesResponse Rejects, VariableAttribute value now rolls back
  2. Issue where Transactions.isActive was never set to false fixed
  3. New start-everest script in Server/ for starting the OCPP 2.0.1 compliant software-in-a-loop version of dockerized EVerest, the Linux Foundation Energy project for open source charging station firmware

v1.3.0

10 Jul 17:58
db65995
Compare
Choose a tag to compare

Release 1.3.0:

OCPI 2.2.1 support now available! See initial citrineos-ocpi release.

Payments module (powered by Stripe) open sourced! See initial release notes. Includes support for novel Scan & Charge feature allowing anonymous payments via credit card at any charging station with a user interface display capable of the appropriate OCPP 2.0.1 use cases.

New Core features:

  • OCPP 2.0.1 Smart Charging added
  • New, streamlined Data API endpoint for setting charger password (old method of using the device model crud api still supported)
  • MessageOrigin changed and usage altered: 'CentralSystem' now 'ChargingStationManagementSystem' to match OCPP 2.0.1's terminology; MessageOrigin now always refers to the party which generated the message, not the party which initiated the call
  • GeneratedAt iso timestamps added to message broker message context and VariableAttribute data entity
  • New Tenant module added, will contain Data API for managing multi-tenancy in future releases
  • Relationship between IdToken and AdditionalInfo made from one-to-many to many-to-many
  • StatusNotification and NotifyEvent now update DeviceModel; StatusNotifications associated with ChargingStation as well
  • Location expanded, now includes address info
  • Tariff expanded, 'unit' replaced with new fields: pricePerKwh, pricePerMin, pricePerSession, taxRate, authorizationAmount, paymentFee
  • TotalKwh now populated in Transaction
  • New Base database methods: readAllBySqlString, readNextId, findAndCount
  • RepositoryStore class added to simplify handling of repository singletons
  • OCPI 2.2.1 support added to Server

!NOTICE! Breaking Changes:

  • Introduction of IdTokenAdditionalInfo join table will require removing IdToken and AdditionalInfo tables in order to restructure them
  • Ocpi support added to Server REQUIRES that citrineos-ocpi be cloned in the same root folder as citrineos-core for builds to work

v1.2.3

10 Jun 21:08
51f665f
Compare
Choose a tag to compare

Urgent bug fixes:

  • TransactionEvent handling issues: repositories declared with incorrect namespace, sequelize transaction not correctly passed to all db access, meterValues not correctly referenced
  • Local SystemConfig used docker filepath for acme certificate; has been updated to resolve from cwd