My back-of-the-envelope calculations suggest that solar cells might be usable with something like the ESP32, depending on the environment.
For example, under typical indoor lighting conditions, you ought to be able to get something like a hundred microwatts per square inch. That sounds tiny, but 3 in^2 would be enough for a 0.1% duty cycle, which would let you wake up for a fraction of a second every few minutes and transmit a sensor reading.
Of course, that depends on having a very low sleep current, and on being able to transition between sleep and active WiFi connectivity very, very fast.
For example, under typical indoor lighting conditions, you ought to be able to get something like a hundred microwatts per square inch. That sounds tiny, but 3 in^2 would be enough for a 0.1% duty cycle, which would let you wake up for a fraction of a second every few minutes and transmit a sensor reading.
Of course, that depends on having a very low sleep current, and on being able to transition between sleep and active WiFi connectivity very, very fast.