This is just a quick entry to my project for additional information.
Underneath this green board, there is the header for the built-in Arduino Leonardo of the Lattepanda Alpha.
This board is for the fans and fingerprint sensor.
I made a simple Python script to communicate with the Arduino Leonardo using pySerial to adjust the speed of the fans(I should do this on my previous build).
The CPU temperature is determined using osx-cpu-temp.
The Python script is launched before user login. It is launched by launchd.
As for the fingerprint sensor, it is supposedly to have an ID809.
But the one that I got from a store in Shopee has a GD32FFPRTGU6 and KCT203 instead.
The modules themselves look identical from the outside. You can only tell if you open it(the enclosure is destroyed on the process).
I think many people have this problem where they think they got one that has an ID809(same connector too but different pinout).
The article for how I reverse engineer the fingerprint module is for another day, I guess.
Anyway, the fingerprint is read/verified then the Arduino Leonardo just types the password during login(yes, just a proof of concept).
This another green board right here is for switching the USB 5V.
The ACPI S5 pin is used to determine the power state of the Lattepanda Alpha.
There is an NPN and P-Channel transistor to switch the 5V.
Why do this, you ask? The 5V is read by the OpenUPS2 to determine if the Lattepanda Alpha is already off(OS shutdown) to cut the power off.
The one with the LiFePO4 cells is the OpenUPS2.
The slide switch here on the side is just an emergency cutoff switch.
It is for the 12V going in to the Lattepanda Alpha.