Add extracted tools: CitrineOS, OpenOCPP, ShapeShifter

- CitrineOS core extracted (CSMS OCPP 2.0.1)
- OpenOCPP extracted (firmware OCPP 1.6J/2.0.1)
- ShapeShifter library installed (pip install -e)
- ShapeShifter specification extracted
- EVerest extracted

TODO updated with progress
This commit is contained in:
Eric F
2026-06-08 00:38:27 -04:00
parent 468cfeaa50
commit d398a6ced2
7326 changed files with 1177561 additions and 7 deletions

View File

@@ -0,0 +1,38 @@
generate_config_tmux_run_script(CONFIG bringup-api-display-message)
generate_config_tmux_run_script(CONFIG bringup-api-error-history-consumer)
generate_config_tmux_run_script(CONFIG bringup-api-evse-board-support)
generate_config_tmux_run_script(CONFIG bringup-api-evse-bsp-and-ovm)
generate_config_tmux_run_script(CONFIG bringup-api-isolation-monitor)
generate_config_tmux_run_script(CONFIG bringup-api-ocpp-consumer)
generate_config_tmux_run_script(CONFIG bringup-api-over-voltage-monitor)
generate_config_tmux_run_script(CONFIG bringup-api-powermeter)
generate_config_tmux_run_script(CONFIG bringup-api-power-supply-DC)
generate_config_tmux_run_script(CONFIG bringup-api-slac)
generate_config_tmux_run_script(CONFIG bringup-api-system)
generate_config_tmux_run_script(CONFIG bringup-DZG)
generate_config_tmux_run_script(CONFIG bringup-EVerestAPI-entrypoint)
generate_config_tmux_run_script(CONFIG bringup-LEM)
generate_config_tmux_run_script(CONFIG bringup-bender-isocha)
generate_config_tmux_run_script(CONFIG bringup-dold-rn5893)
generate_config_tmux_run_script(CONFIG bringup-huawei)
generate_config_tmux_run_script(CONFIG bringup-isolation-monitor-sil)
generate_config_tmux_run_script(CONFIG bringup-nxpnfcfrontend-token-provider)
generate_config_tmux_run_script(CONFIG bringup-pn532-token-provider)
generate_config_tmux_run_script(CONFIG bringup-system)
generate_config_tmux_run_script(CONFIG bringup-uugreen)
generate_config_tmux_run_script(CONFIG bringup-yetidriver)
# install configs
install(
DIRECTORY "."
DESTINATION "${CMAKE_INSTALL_SYSCONFDIR}/everest"
FILES_MATCHING PATTERN "*.yaml" PATTERN "*.json" PATTERN "run_tmux_helper.sh"
)
# install helper script to start bring up configs in tmux
install(
FILES "run_tmux_helper.sh"
DESTINATION "${CMAKE_INSTALL_SYSCONFDIR}/everest"
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
)

View File

@@ -0,0 +1,375 @@
settings:
telemetry_enabled: false
# mqtt_broker_socket_path: /run/mosquitto/mosquitto.sock
active_modules:
# 4x Carlo Gavazzi EM580 powermeters on the same Modbus/serial line (unit IDs 1..4)
cgem580_1:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 1
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20 # pause 20 seconds on communication error before retry
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000 # once per second
device_state_read_interval_ms: 10000 # once per 10 seconds
connections:
modbus: # required interface: serial_communication_hub
- module_id: comm_hub
implementation_id: main
cgem580_2:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 2
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_3:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 3
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_4:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 4
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_5:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 5
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_6:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 6
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_7:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 7
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_8:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 8
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_9:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 9
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_10:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 10
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_11:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 11
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_12:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 12
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0 # adjust to your device path
baudrate: 115200
parity: 0 # 0=None,1=Odd,2=Even (match your device)
within_message_timeout_ms: 5
# 4x BringUp powermeters, one per EM580 instance
cli_1:
config_module:
evse_id: "DE*ENBW*BER001*EVSE01"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_1
implementation_id: main
cli_2:
config_module:
evse_id: "DE*ENBW*BER001*EVSE02"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_2
implementation_id: main
cli_3:
config_module:
evse_id: "DE*ENBW*BER001*EVSE03"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_3
implementation_id: main
cli_4:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_4
implementation_id: main
cli_5:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_5
implementation_id: main
cli_6:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_6
implementation_id: main
cli_7:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_7
implementation_id: main
cli_8:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_8
implementation_id: main
cli_9:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_9
implementation_id: main
cli_10:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_10
implementation_id: main
cli_11:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_11
implementation_id: main
cli_12:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_12
implementation_id: main

View File

@@ -0,0 +1,405 @@
settings:
telemetry_enabled: false
# mqtt_broker_socket_path: /run/mosquitto/mosquitto.sock
active_modules:
# 4x Carlo Gavazzi EM580 powermeters on the same Modbus/serial line (unit IDs 1..4)
cgem580_1:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 1
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20 # pause 20 seconds on communication error before retry
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000 # once per second
device_state_read_interval_ms: 10000 # once per 10 seconds
connections:
modbus: # required interface: serial_communication_hub
- module_id: comm_hub
implementation_id: main
cgem580_2:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 2
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_3:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 3
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_4:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 4
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_5:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 5
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_6:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 6
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_7:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 7
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_8:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 8
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_9:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 9
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_10:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 10
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_11:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 11
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_12:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 12
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_13:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 13
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 10
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0 # adjust to your device path
baudrate: 115200
parity: 0 # 0=None,1=Odd,2=Even (match your device)
within_message_timeout_ms: 5
# 4x BringUp powermeters, one per EM580 instance
cli_1:
config_module:
evse_id: "DE*ENBW*BER001*EVSE01"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_1
implementation_id: main
cli_2:
config_module:
evse_id: "DE*ENBW*BER001*EVSE02"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_2
implementation_id: main
cli_3:
config_module:
evse_id: "DE*ENBW*BER001*EVSE03"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_3
implementation_id: main
cli_4:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_4
implementation_id: main
cli_5:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_5
implementation_id: main
cli_6:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_6
implementation_id: main
cli_7:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_7
implementation_id: main
cli_8:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_8
implementation_id: main
cli_9:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_9
implementation_id: main
cli_10:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_10
implementation_id: main
cli_11:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_11
implementation_id: main
cli_12:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_12
implementation_id: main
cli_13:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_13
implementation_id: main

View File

@@ -0,0 +1,195 @@
settings:
telemetry_enabled: false
# mqtt_broker_socket_path: /run/mosquitto/mosquitto.sock
active_modules:
# 4x Carlo Gavazzi EM580 powermeters on the same Modbus/serial line (unit IDs 1..4)
cgem580_1:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 1
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20 # pause 20 seconds on communication error before retry
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000 # once per second
device_state_read_interval_ms: 10000 # once per 10 seconds
connections:
modbus: # required interface: serial_communication_hub
- module_id: comm_hub
implementation_id: main
cgem580_2:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 2
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_3:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 3
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_4:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 4
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_5:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 5
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_6:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 6
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0 # adjust to your device path
baudrate: 115200
parity: 0 # 0=None,1=Odd,2=Even (match your device)
within_message_timeout_ms: 50
# 4x BringUp powermeters, one per EM580 instance
cli_1:
config_module:
evse_id: "DE*ENBW*BER001*EVSE01"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_1
implementation_id: main
cli_2:
config_module:
evse_id: "DE*ENBW*BER001*EVSE02"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_2
implementation_id: main
cli_3:
config_module:
evse_id: "DE*ENBW*BER001*EVSE03"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_3
implementation_id: main
cli_4:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_4
implementation_id: main
cli_5:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_5
implementation_id: main
cli_6:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_6
implementation_id: main

View File

@@ -0,0 +1,225 @@
settings:
telemetry_enabled: false
# mqtt_broker_socket_path: /run/mosquitto/mosquitto.sock
active_modules:
# 4x Carlo Gavazzi EM580 powermeters on the same Modbus/serial line (unit IDs 1..4)
cgem580_1:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 1
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20 # pause 20 seconds on communication error before retry
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000 # once per second
device_state_read_interval_ms: 10000 # once per 10 seconds
connections:
modbus: # required interface: serial_communication_hub
- module_id: comm_hub
implementation_id: main
cgem580_2:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 2
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_3:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 3
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_4:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 4
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_5:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 5
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_6:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 6
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
cgem580_7:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 127 # unused device ID
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000
device_state_read_interval_ms: 10000
connections:
modbus:
- module_id: comm_hub
implementation_id: main
comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0 # adjust to your device path
baudrate: 115200
parity: 0 # 0=None,1=Odd,2=Even (match your device)
within_message_timeout_ms: 50
# 4x BringUp powermeters, one per EM580 instance
cli_1:
config_module:
evse_id: "DE*ENBW*BER001*EVSE01"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_1
implementation_id: main
cli_2:
config_module:
evse_id: "DE*ENBW*BER001*EVSE02"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_2
implementation_id: main
cli_3:
config_module:
evse_id: "DE*ENBW*BER001*EVSE03"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_3
implementation_id: main
cli_4:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_4
implementation_id: main
cli_5:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_5
implementation_id: main
cli_6:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_6
implementation_id: main
cli_7:
config_module:
evse_id: "DE*ENBW*BER001*EVSE04"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_7
implementation_id: main

View File

@@ -0,0 +1,42 @@
settings:
telemetry_enabled: false
# mqtt_broker_socket_path: /run/mosquitto/mosquitto.sock
active_modules:
cgem580_1:
module: CarloGavazzi_EM580
config_implementation:
main:
powermeter_device_id: 1
communication_retry_count: 1
communication_retry_delay_ms: 10
communication_error_pause_delay_s: 20 # pause 20 seconds on communication error before retry
initial_connection_retry_count: 1
initial_connection_retry_delay_ms: 100
timezone_offset_minutes: 60
live_measurement_interval_ms: 1000 # once per second
device_state_read_interval_ms: 10000 # once per 10 seconds
connections:
modbus: # required interface: serial_communication_hub
- module_id: comm_hub
implementation_id: main
comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0 # adjust to your device path
baudrate: 115200
parity: 0 # 0=None,1=Odd,2=Even (match your device)
within_message_timeout_ms: 10
cli_1:
config_module:
evse_id: "DE*ENBW*BER001*EVSE01"
tariff_text: "This-is-just-a-long-string-to-test-the-tariff-text-functionality. The-kWh-price-is-2.30-EUR/kWh"
identification_data: "A1z */-+.()[]{}$%^&*_+-=[];',"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: cgem580_1
implementation_id: main

View File

@@ -0,0 +1,21 @@
settings:
telemetry_enabled: false
active_modules:
dzg:
config_implementation:
main:
serial_port: '/dev/ttyUSB0'
baudrate: 115200
num_of_retries: 3
publish_device_data: false
publish_device_diagnostics: false
module: DZG_GSH01
cli:
config_module:
evse_id: "api"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: dzg
implementation_id: main

View File

@@ -0,0 +1,64 @@
settings:
telemetry_enabled: true
active_modules:
dm_1:
module: display_message_API
config_module:
cfg_communication_check_to_s: 5
cfg_heartbeat_interval_ms: 5000
access:
config:
allow_global_read: true
ps_dc_1:
module: power_supply_DC_API
config_module:
cfg_communication_check_to_s: 10
cfg_heartbeat_interval_ms: 5000
access:
config:
allow_global_read: true
ps_dc_2:
module: power_supply_DC_API
config_module:
cfg_communication_check_to_s: 10
cfg_heartbeat_interval_ms: 8000
access:
config:
allow_global_read: true
err_hist_1:
module: error_history_consumer_API
config_module:
cfg_communication_check_to_s: 10
cfg_heartbeat_interval_ms: 10000
connections:
error_history:
- implementation_id: error_history
module_id: error_history
access:
config:
allow_global_read: true
error_history:
module: ErrorHistory
config_implementation:
error_history:
database_path: /tmp/error_history.db
cli_ps1:
module: BUPowerSupplyDC
standalone: true
connections:
psu:
- module_id: ps_dc_1
implementation_id: main
cli_ps2:
module: BUPowerSupplyDC
standalone: true
connections:
psu:
- module_id: ps_dc_2
implementation_id: main
# send "{"headers": { "replyTo": "my/reply/topic" } }" to "everest_api/discover"
# and receive a bunch of messages: array of (module_id, type, version) tuples on the reply topic
# send "{"headers": { "replyTo": "my/reply/topic" } }" to "everest_api/query-modules/power_supply_DC"
# and receive the same reply as above, but limited to the ones with type==power_supply_DC

View File

@@ -0,0 +1,28 @@
settings:
telemetry_enabled: false
active_modules:
lem:
config_module:
ip_address: '192.168.1.2'
ntp_server_1_ip_addr: ''
ntp_server_1_port: 0
ntp_server_2_ip_addr: ''
ntp_server_2_port: 0
cable_id: 6
tariff_id: 0
meter_dst: '{"activated": false, "offset": 60, "start": {"order": "last", "day": "sunday", "month": "march", "hour": "T01:00Z"}, "end": {"order": "last", "day": "sunday", "month": "october", "hour": "T01:00Z" }}'
SC: 1
UV: "user sw version"
UD: "some text"
temperature_warning_level_C: 40
temperature_error_level_C: 50
module: LemDCBM400600
cli:
config_module:
evse_id: "api"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: lem
implementation_id: main

View File

@@ -0,0 +1,14 @@
settings:
telemetry_enabled: false
active_modules:
dm_1:
module: display_message_API
config_module:
cfg_communication_check_to_s: 5
cli:
module: BUDisplayMessage
standalone: true
connections:
dm:
- module_id: dm_1
implementation_id: main

View File

@@ -0,0 +1,22 @@
settings:
telemetry_enabled: false
active_modules:
error_raiser:
module: generic_error_raiser_API
config_module:
cfg_communication_check_to_s: 60
cfg_heartbeat_interval_ms: 1000
error_history_1:
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 1000
module: error_history_consumer_API
connections:
error_history:
- implementation_id: error_history
module_id: error_history
error_history:
module: ErrorHistory
config_implementation:
error_history:
database_path: /tmp/error_history.db

View File

@@ -0,0 +1,20 @@
settings:
telemetry_enabled: false
active_modules:
bsp_1:
module: evse_board_support_API
config_module:
cfg_communication_check_to_s: 0
cli:
module: BUEvseBoardSupport
standalone: true
connections:
bsp:
- module_id: bsp_1
implementation_id: main
lock_motor:
- module_id: bsp_1
implementation_id: connector_lock
ac_rcd:
- module_id: bsp_1
implementation_id: rcd

View File

@@ -0,0 +1,28 @@
settings:
telemetry_enabled: false
active_modules:
bsp_1:
module: evse_board_support_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 1000
ovm_1:
module: over_voltage_monitor_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 1000
bsp_ui:
module: BUEvseBoardSupport
standalone: true
connections:
bsp:
- module_id: bsp_1
implementation_id: main
ovm_ui:
module: BUOverVoltageMonitor
standalone: true
connections:
ovm:
- module_id: ovm_1
implementation_id: main

View File

@@ -0,0 +1,25 @@
active_modules:
bsp_ui:
standalone: true
module: BUIsolationMonitor
connections:
imd:
- implementation_id: main
module_id: iso_monitor
powersupply_ui:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
iso_monitor:
module: isolation_monitor_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 10000
powersupply:
module: power_supply_DC_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 10000

View File

@@ -0,0 +1,17 @@
settings:
telemetry_enabled: false
active_modules:
ocpp_api:
module: ocpp_consumer_API
config_module:
cfg_communication_check_to_s: 0
connections:
ocpp:
- module_id: cli
implementation_id: ocpp
data_transfer:
- module_id: cli
implementation_id: ocpp_data_transfer
cli:
module: BUOcppConsumer
standalone: true

View File

@@ -0,0 +1,15 @@
settings:
telemetry_enabled: false
active_modules:
ovm:
module: over_voltage_monitor_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 10000
cli:
module: BUOverVoltageMonitor
standalone: true
connections:
ovm:
- module_id: ovm
implementation_id: main

View File

@@ -0,0 +1,15 @@
settings:
telemetry_enabled: false
active_modules:
ps_dc_1:
module: power_supply_DC_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 10000
cli:
module: BUPowerSupplyDC
standalone: true
connections:
psu:
- module_id: ps_dc_1
implementation_id: main

View File

@@ -0,0 +1,17 @@
settings:
telemetry_enabled: false
active_modules:
powermeter_1:
module: powermeter_API
config_module:
cfg_communication_check_to_s: 0
cfg_heartbeat_interval_ms: 10000
cli:
config_module:
evse_id: "api"
module: BUPowermeter
standalone: true
connections:
powermeter:
- module_id: powermeter_1
implementation_id: main

View File

@@ -0,0 +1,14 @@
settings:
telemetry_enabled: false
active_modules:
slac_api:
module: slac_API
config_module:
cfg_communication_check_to_s: 0
cli:
module: BUSlac
standalone: true
connections:
slac:
- module_id: slac_api
implementation_id: main

View File

@@ -0,0 +1,14 @@
settings:
telemetry_enabled: false
active_modules:
system_1:
module: system_API
config_module:
cfg_communication_check_to_s: 0
cli:
module: BUSystem
standalone: true
connections:
system:
- module_id: system_1
implementation_id: main

View File

@@ -0,0 +1,24 @@
active_modules:
cli:
module: BUIsolationMonitor
standalone: true
connections:
imd:
- implementation_id: main
module_id: iso_monitor
iso_monitor:
config_implementation:
main:
imd_device_id: 3
connections:
serial_comm_hub:
- implementation_id: main
module_id: comm_hub
module: Bender_isoCHA425HV
comm_hub:
config_implementation:
main:
serial_port: /dev/cb_rs485
baudrate: 19200
parity: 2
module: SerialCommHub

View File

@@ -0,0 +1,25 @@
active_modules:
im_cli:
standalone: true
module: BUIsolationMonitor
connections:
imd:
- implementation_id: main
module_id: dold_rn5893
serial_comm_hub:
module: SerialCommHub
config_implementation:
main:
serial_port: /dev/ttyUSB0
baudrate: 115200
dold_rn5893:
module: DoldRN5893
connections:
serial_comm_hub:
- module_id: serial_comm_hub
implementation_id: main
config_module:
device_id: 1
power_supply_type: DC

View File

@@ -0,0 +1,12 @@
active_modules:
cli:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
powersupply:
config_module:
module_addresses: ""
module: Huawei_R100040Gx

View File

@@ -0,0 +1,19 @@
settings:
mqtt_everest_prefix: everest_infy_acdc
controller_port: 8849
active_modules:
cli:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
powersupply:
config_module:
can_device: can0
# module_addresses: "0"
group_address: 0
device_connection_timeout_s: 15
controller_address: 240
module: InfyPower

View File

@@ -0,0 +1,19 @@
settings:
mqtt_everest_prefix: everest_infy_dcdc
controller_port: 8850
active_modules:
cli:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
powersupply:
config_module:
can_device: can1
module_addresses: ""
group_address: 0
device_connection_timeout_s: 15
controller_address: 240
module: InfyPower

View File

@@ -0,0 +1,19 @@
active_modules:
im_cli:
standalone: true
module: BUIsolationMonitor
connections:
imd:
- implementation_id: main
module_id: iso_monitor
powersupply_cli:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
iso_monitor:
module: IMDSimulator
powersupply:
module: DCSupplySimulator

View File

@@ -0,0 +1,18 @@
settings:
telemetry_enabled: false
active_modules:
tokenprovider:
module: NxpNfcFrontendTokenProvider
config_implementation:
main:
debug: true
token_debounce_interval_ms: 3000
no_physical_nfc_reader: false
standalone: true
cli:
module: BUTokenProvider
standalone: true
connections:
token_provider:
- module_id: tokenprovider
implementation_id: main

View File

@@ -0,0 +1,19 @@
active_modules:
cli:
connections:
ovm:
- implementation_id: main
module_id: ovm
module: BUOverVoltageMonitor
standalone: true
ovm:
module: OVMSimulator
config_implementation:
main:
simulate_error_shutdown: true
simulate_emergency_shutdown: false
simulate_error_delay: 5
connections:
power_supply:
- module_id: powersupply_dc
implementation_id: main

View File

@@ -0,0 +1,16 @@
active_modules:
tokenprovider:
module: PN532TokenProvider
config_implementation:
main:
serial_port: /dev/ttyUSB0
baud_rate: 115200
debug: true
read_timeout: 2
cli:
module: BUTokenProvider
standalone: true
connections:
token_provider:
- module_id: tokenprovider
implementation_id: main

View File

@@ -0,0 +1,21 @@
settings:
telemetry_enabled: false
active_modules:
system:
module: System
connections:
store:
- module_id: persistent_store
implementation_id: main
persistent_store:
config_module:
sqlite_db_file_path: everest_persistent_store.db
connections: {}
module: PersistentStore
cli:
module: BUSystem
standalone: true
connections:
system:
- module_id: system
implementation_id: main

View File

@@ -0,0 +1,10 @@
active_modules:
cli:
connections:
psu:
- implementation_id: main
module_id: powersupply
module: BUPowerSupplyDC
standalone: true
powersupply:
module: UUGreenPower_UR1000X0

View File

@@ -0,0 +1,14 @@
active_modules:
cli:
module: BUEvseBoardSupport
standalone: true
connections:
bsp:
- implementation_id: board_support
module_id: connector_1_powerpath
connector_1_powerpath:
config_module:
baud_rate: 115200
reset_gpio: 27
serial_port: /dev/ttyAMA0
module: YetiDriver

View File

@@ -0,0 +1,62 @@
#! /usr/bin/env bash
PREFIX=$2
EVEREST_CONFIG_FILE=$1
function parse_yaml {
local prefix=$2
local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
sed -ne "s|^\($s\):|\1|" \
-e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \
-e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
awk -F$fs '{
indent = length($1)/2;
vname[indent] = $2;
for (i in vname) {if (i > indent) {delete vname[i]}}
if (length($3) > 0) {
vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
printf("%s%s%s=\"%s\"\n", "'$prefix'",vn, $2, $3);
}
}'
}
if [ $# -lt 2 ]; then
echo "Usage: $0 config_file prefix"
echo " config: config to be used to run EVerest"
echo " prefix: install prefix for this EVerest instance"
exit
fi
LINES=$(parse_yaml $EVEREST_CONFIG_FILE | grep "standalone=\"true\"")
PAT="_standalone=\"true\""
PAT2="active_modules_"
for LINE in $LINES; do
MODULE_ID=$(echo $LINE | sed -n "/$PAT/s/$PAT//p" - | sed -n "/$PAT2/s/$PAT2//p" -)
IDS+=( $MODULE_ID )
PAT3=$PAT2$MODULE_ID"_module="
MODULE_NAME=$(parse_yaml $EVEREST_CONFIG_FILE | grep $PAT3 | sed -n "/$PAT3/s/$PAT3//p" - | sed -r "s/[\"]+//g" -)
NAMES+=( $MODULE_NAME )
done
tmux new-session -d -s EVerest
tmux set -g mouse on
tmux send -t EVerest:0.0 "$PREFIX/bin/manager --prefix $PREFIX" SPACE "--conf " $EVEREST_CONFIG_FILE ENTER
LEN=${#NAMES[@]}
for (( j=0; j<$LEN; j++ ));
do
if [ $j -gt 0 ]
then
tmux split-window -t EVerest:0.$j -v
else
tmux split-window -t EVerest:0.0 -h
fi
tmux send -t EVerest:0.$((j+1)) "sleep 1 &&" SPACE "$PREFIX/libexec/everest/modules/" ${NAMES[$j]} "/" ${NAMES[$j]} SPACE \
"--module" SPACE ${IDS[$j]} ENTER
done
tmux a
tmux select-layout even-vertical
tmux kill-session -t EVerest