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,62 @@
// SPDX-License-Identifier: Apache-2.0
// Copyright 2023 - 2023 Pionix GmbH and Contributors to EVerest
#include "states.hpp"
SimpleState::HandleEventReturnType LightOn::handle_event(AllocatorType& sa, Event ev) {
if (ev == Event::PRESSED_ON) {
current_brightness = (current_brightness % 3) + 1;
ctx.set_brightness(current_brightness);
return HANDLED_INTERNALLY;
} else if (ev == Event::PRESSED_OFF) {
return sa.create_simple<LightOff>(ctx);
} else {
return PASS_ON;
}
}
SimpleState::HandleEventReturnType MotionMode::handle_event(AllocatorType& sa, Event ev) {
if (ev == Event::PRESSED_OFF) {
return sa.create_simple<LightOff>(ctx);
} else if (ev == Event::PRESSED_ON) {
return sa.create_simple<LightOn>(ctx);
} else {
return PASS_ON;
}
}
SimpleState::HandleEventReturnType MotionDetected::handle_event(AllocatorType& sa, Event ev) {
if (ev == Event::MOTION_TIMEOUT) {
return sa.create_simple<MotionIdle>(ctx);
} else {
return PASS_ON;
}
}
SimpleState::CallbackReturnType MotionDetected::callback() {
if (timeout_started) {
return Event::MOTION_TIMEOUT;
}
timeout_started = true;
return TIMEOUT_MS;
}
SimpleState::HandleEventReturnType LightOff::handle_event(AllocatorType& sa, Event ev) {
if (ev == Event::PRESSED_ON) {
return sa.create_simple<LightOn>(ctx);
} else if (ev == Event::ENTER_MOTION_MODE) {
sa.create_compound<MotionMode>(ctx);
return sa.create_simple<MotionIdle>(ctx);
} else {
return PASS_ON;
}
}
SimpleState::HandleEventReturnType MotionIdle::handle_event(AllocatorType& sa, Event ev) {
if (ev == Event::MOTION_DETECT) {
return sa.create_simple<MotionDetected>(ctx);
} else {
return PASS_ON;
}
}