It's less that you've got Dual Mode that there's power consumption. Classic and LE simultaneous doesn't consume much more juice than LE by itself.
Real differences between LE and Classic:
- Channel Hopping Sequence is simplified. For Advertising it's not really hopping
- Modulation Index changed from Classic to LE to allow a bit better performance at range
- Channel spacing widened from 1->2MHz, reducing the number of channels from 79 to 40
- Connection latency shrunk to next to nothing.
- Packets are generally limited to ONE 625 us slot in size
LE is predicated on waking up, transacting or being transacted and getting the PA's off on the transmit side as fast as you can. But I suspect you knew this all- that was for the rest of the forum to learn a little bit where they might not understand the conversation.
Now...as I said, there's probably not a lot of power consumption from DM operation. The lowest levels of function on the BT stack in an ESP32 is handled mainly by VHDL specified logic rather than CPU code- which is where most the DM specific behaviors are defined and driven. Where much of the consumption (and the "warm" both of us have observed...) is because a lot of the power domains are fully powered- especially the CPUs. I agree, Deep Sleep is probably too disruptive to use for anything either of us are working on (Since we both appear to be doing LE related stuff...
). However, according to this conversation:
...if one can get the CPU to sit idle/blocked for I/O, the CPU domain for that given core will idle down until it's woke up by interrupt. Sounds like where most of the power gains are going to be obtained without doing Deep Sleep. Makes sense. Have one semi-idle, handling things like WiFi and BT, the events there are in tenths of a second to seconds apart for most anything battery powered. The CPUs would mostly sit quietly and wait to be woke up to full speed. Which can be as much as 240MHz for both cores. I can imagine that those cores are eating juice like candy comparatively.