fid02
pls put my answer into the context of OP's post as well as comments 2 and 3.
if you still consider it relevant, do you think your answer is rather on theoretical side (applied, maybe to 1% of apps of that kind), or on the practical side that makes sense in the real world of Google Play and non-niche GOS like the OP came from (99% apps of that kind)?
OP is wondering why is it happening. I'm saying #1 that for what OP is looking for (generic app for managing whole variety of smart devices), google will ask/force for a coarse location permission. And #3 internet access is easily explained (fw update for the BT device, download of communication protocol locally in order not to store thousands of Tuya devices, etc)
So, conclusion - access to location and internet are not necessarily reasoned by data harvesting. If you set OP's expectation this way, combined with possible soluition of "firewalling" the app (rethinkdns), you will not lead him to unrealistic search for something that barely exists, or is not maintained (like many FOSS projects) or is unreasonably complex to handle (like flashing tasmota, etc).
Take a look at FOSS GadgetBridge app, their manifest ask for ACCESS_COARSE_LOCATION and doesn't mention neverForLocation. Then re-read comments 2 and 3 that claims that all who do that are just harvesting data, thus, GadgetBridge does that too, right?
The same applies for highly-special Calor BT app that manages eq3 thermal valves - it also require coarse location and internet (to download firmware).