Popular, cheap (~$5 on aliexpress) pulse oxidometer.
Model: WLX 501. I've actually ordered one with different display (looking like dot matrix OLED), but this is how it goes.
User manual is very good, although not necessary matching this exact device, claiming type of display as TFT.
Power cable colors seems reversed and I though at first that this was the reason why this unit wasn't working. It turned out markings on the plastic are correct (so black wire is positive) and my stale zinc AAA cells were just not strong enough. I guess alcaline cells would really be recommended. NiMH rechargeables work also.
Place for speaker (buzzer?) - some kind of alarm?
Pushbutton (besides turning it on/off) switches display orientation - icons for heart rate and %SpO2 are duplicated, only one pair is active depending on current orientation.
CMS8S6990 (https://www.sekorm.com/product/354832.html) - 8051 MCU from Cmsemicon
PCB markings: A4122_V1.4
Apparently this is very recent construction: 2020.10.29.
Second chip with no markings.
DSCL, DSDA - I2C or some kind of ISP?
Pretty easy to open and reassemble.
Display:
Is it accurate? From few short tests I can't really tell. Saturation seems go up and down few percents, seems to depend on finger being used with test but it seems hard to influence it with moderate (still wearing it on the finger) physical activity or holding breath (I've tried few times, though I'm not good at this and I wasn't trying hyperventilation). Part of the problem is low update rate of the measurement - heart rate seems to be updated once per 12 s or so and saturation update seems to be even slower (twice?). I probably wouldn't be able to tell the difference if saturation would be just randomized.