Plant Tweets
sarabee.github.io
sarabee.github.io
The project is https://mudpi.app and may be useful if you decide to expand your setup.
You can get them down to very low power by having them go into deep sleep and only wake up every minute or ten to take a reading, hop on the network, and publish the value somewhere, like an MQTT broker, or send a text etc.
If one can get a digital rather than analog sensor for a few dollars more, then chaining a ton of them up to a bus like i2c should make for a simple many-sensor-one-microcontroller setup: https://www.adafruit.com/product/4026
Built a temperature, humidity, barometer for the house using https://www.amazon.com/HiLetgo-Display-Bluetooth-Internet-De... and an SPI based sensor. The display is nice for visual feedback.
Doing this also greatly prolongs the life of the cheap resistive sensors that sarabee dismisses. If there's current through them for only a millionth of the time, then their life is extended by a million (not quite, but there is a large factor there).
If you wanted to get fancy you could drive the sensors with an AC signal (sine wave, say) through a DC-blocking capacitor, and use a precision rectifier (an op amp, two diodes and a capacitor pretty much) to measure the voltage. AC drive would reduce corrosion further.
> If one can get a digital rather than analog sensor for a few dollars more,
With a BCD to ten-output chip on the Arduino (e.g. 74HC42, < $1) you could have up to 10 of the cheap resistive sensors per Arduino. Each of the 10 outputs of the '42 is used as the power source for one resistive sensor.
Of course you'd need wires everywhere for this (simple "bell wire" would do if it's out of the sun). I like wires--I find them much more reliable than Wi-Fi or low power digital radio, not to mention having lower power requirements--but they seem to be out of fashion these days.
With chained counter chips you could have hundreds of sensors. But then your Arduino wouldn't get any sleep, and might need cloning to share the workload. And your wiring tag system had better be reliable! :)
There are ethernet modules available for the Arduino, but yes, an ESP32 would probably be easier.
Edit: swap paras 5 & 6.
Battery powered but rigging a solar panel might be possible.
https://www.cnx-software.com/2020/11/10/ttgo-t-higrow-is-a-w...
Mostly got them to learn about bluetooth and wrote (half a) daemon to log the packets, currently it just prints the data to cout.
I don't have any estimates of battery runtime or anything, but I'll note that WiFi is battery-expensive and takes a few seconds to actually connect to the desired network so you'll want to wake WiFi as little as possible. Meanwhile, actually doing sensor readings can be done pretty often. So it's entirely feasible that you might do a bunch of sensor readings and then upload them all in one go to save power. From there on out it's a question of how much power a sensor draws, how much power the device draws, and how often you want to wake it.
Ive gotten away with as small as a 6v solar panel 3.5W to keep a box online for 6 months solid.
Here's "Plant Tweets, Part 2", which goes into the software side of the setup:
https://www.dezeen.com/2018/12/07/mit-elowan-cyborg-botany-p...
This looks like a similar sensor that gives digital output.
Super easy arduino project. Nice work!