Return to Home Page

Pi Power Request Observer

This is a PiToPico observer that exists for test purposes: it’s purpose is to allow an IBus message to toggle the Meanwell Power Supply on and off.

In practise, no computer would ever send a message to forcefully pull the power plug on itself, it’s more for an additional development laptop plugged into the IBus network, using the Pico Comms Debug Window to send this message.

Code

The source code for this observer is pretty straightforward.

void PiPowerRequestObserver::onNewPiToPicoPacket(messages::PiToPicoMessage message) {
    if (message.messageType == messages::PiToPicoMessage::MessageType::PicoPowerRequestOff) {
        logger->d(getTag(), "Got a pi powerOff request.");
        powerSwitchManager->setPower(false);
    }
    if (message.messageType == messages::PiToPicoMessage::MessageType::PicoPowerRequestOn) {
        logger->d(getTag(), "Got a pi powerOn request");
        powerSwitchManager->setPower(true);
    }
}
Return to Top