The cars are actively checking if new firmware is available constantly, active WiFi connection or not.
This may be a quibble about the definition of "constantly," but that's not a word I'd use for when a Tesla checks for software updates. AFAIK, when the car goes to sleep, it stops communicating with Tesla's servers, and so will not check for software updates. My car, when left parked for an extended period (like when I'm on a trip and have parked the car at an airport parking lot), will wake up once every day or two, then go back to sleep. I don't know precisely what it does at these times, but my bet is that one thing it does is to check for updates. I've often noticed update notifications after these short wake-up events, even when the car is parked for a shorter period of time. For instance, if the car goes to sleep at 9:00 PM and wakes up at 2:00 AM, I'll notice an update is available when I wake up that morning. To be sure, updates don't
always appear after such events, but I don't recall ever seeing an update notification when the car had
not recently been awake. I have no idea if the car checks for updates more frequently when it's awake for other reasons, like when it's being driven, or if it's on some sort of fixed schedule of checking every 48 hours or something.
BTW, I use TeslaFi, which is how I know when my car is awake vs. asleep. Of course, TeslaFi can interfere with a Tesla's sleep schedule, but I have no evidence that TeslaFi is causing the car to wake up in the middle of the night. I therefore believe that these events are intrinsic to the car itself, and probably done to check for updates, check the battery status, upload driving data to Tesla, etc.