If your lithium battery has BMS, it should be fine since a lot of BMS will have a lot of protection including over current. If your raw dog the cell, then as the other said, any voltage and current into the battery should be capped. Ideally, you should monitor each cell as well to prevent an over voltage of any of the cells in the pack. If you want to be safe without monitoring every cell, then just make sure nothing gets back into the battery. Nothing goes in = can't get overcharged by accident from back emf.
There is a lot to unpack here. But my suggestion is "cheap" esp32 devboard. At least where I live, going with older / raw MCU (not a "devboard") will ended up more expensive. I'll give an example. The STM32F103C8T6 "Blue Pill" cost the same as ESP32 DOIT Devkit (around USD 3). BUT the bare MCU of both cost around 1-5 cent more due to the economy of scale. So unless you plan to design a custom board in bulk/size constraint, buying the devkit and making a daughter board can ended up cheaper
Yeah, that's a broken heater. A broken heater sign is usually high resistance or good ol disconnect. It being in parallel further reinforces that. This is a common schematic for domestic refrigerators.
I've seen the pic. So the plate is not the component? I thought the whole plate was the component. In that case, if it is a small metal plate like any of this, then it most likely is a thermal cutoff.
It's not running the compressor in reverse necessarily. It just used to sense when the temperature of some point has reached some threshold. Remember, a high temperature on the cold side could also be used to trigger the compressor to cool down the fridge.
It seems like I cannot find a picture of your component (if you ever posted any). If it is metallic looking, it is probably a thermal cutoff of some sort. The wikipedia article focuses on the fuse-looking one, but there also exists a flat metal plate looking one. The connection is usually normally open so if the temperature on the loop is ever too high, the motor (compressor) will trigger. The normally closed connection one is for motor overheat protection. That kind is usually placed/glued to thbe e stator body, so if it ever gets too hot, it will stop the motor instead.
Edit:
The picture provides a clearer size of the metal plate. A plate of that size is not a thermal cutoff. I don't know what it is either. But if it is indeed a heater, you should be able to measure the resistance. If it is a resistive heater, usually it will have a low resistance (usually <10R). And metal is not "cold" at room temps, they are the temperature of room temps. It just feels cold because of higher thermal conductivity
Yeah, CTS and RTS is useful for the module since you may overflow the module buffer (instead of the module overflowing your UART buffer). With proper HW flow control, hopefully your device UART respects the signal and pauses the tx until it is clear again without you having to code the pause yourselves. It can happen when the GSM bandwidth is lower than the UART bandwidth.
The module suddenly talking should also be handled by your device UART gracefully. When your rx buffer is full for whatever reason (not reading it for a long time?), the module won't be sending anymore data until you read your rx buffer. Theoretically, no data should be lost that way.
I assume you mean RXD to TX0. As for sporadic packets like that, I'd honestly check for the signal integrity. Maybe somehow the data line is picking up noise high enough to cause disturbance. It could be caused by a lot of things, but the most likely culprit are the connector/cable. Any connection going into/out of pcb should be checked. Or check your timing. Make sure the baud and other config (start, data, stop, parity) are matched. Small drift in baudrate is usually tolerable. UART is designed for async communication after all, meaning that any device may send anytime so CTS and RTS isn't usually needed provided that it is a hardware UART (not bit banging). You can check out Ben Eater video about it. In short, the TX is usually held high, the RX then can detect a falling edge which is a signal that a packet is starting. The UART hardware then processes the signal according to the config that you give it and is usually able to do a DMA transfer.
Edit:
Ahh, after reading the code I suspect that your code processes the data faster than the module can send the full reply. The first loop that you are waiting for the first data to arrive, you immediately process everything in the buffer until it is empty, not knowing that maybe the module has not yet finished transmitting. CTS and RTS would not help since they are used to signal if both devices would like to (or probably could) send / receive data. Not signalling end of data transfer
Edit 2, the solution:
Either parse the received packet until the expected end, or wait until timeout before returning.
In the context of art, I think it is useful to capture the author's original art as closely as possible when archiving. Especially because art can use wordplay and breaking grammar for the sake of the art.
Oh man, that manual is quite descriptive. I wish they could add a schematic or two there. But anyway, as others have suggested, be careful with CRT, but I guess you already know that. Next is from the circuit description, it seems like the display accepts some form or VGA signal without the color. You can see Ben Eater video to learn more about it, especially the line sync and vertical sync signal part
Arch does not have official FOSS only repo. And IIRC, that is by design