Two projects that needed the same device code
HomeControl has an older sibling, ShulClimate, which runs the air conditioning in a whole building. A house and a building want different apps, with different schedules and rules. But both have to talk to the same kind of mini-split over the local network, and both have to show up in Apple Home. Copying that code into a second project would mean fixing every bug twice.
So we pulled the common pieces into a separate private package, smarthome-core, and both projects import it. It holds the local Tuya control, which talks to the mini-split over the LAN with tinytuya on protocol 3.5 and never calls the cloud, and the HomeKit bridge scaffolding built on HAP-python. The patio unit's local key came out of the ShulClimate work, and HomeControl reuses that same control path and the same bridge instead of keeping its own copy.
The weather station is the one place the two paths could have tangled. It feeds the wall board by local push and Apple Home through its cloud API, so each reader has one owner, and there is no duplicate. The docs also name the next hard case early. A garage opener has no open API, and it will need a relay board or a HomeKit path.