PlantLink

FREE
By danwiding | Updated 16日前 | Other
Popularity

0.2 / 10

Latency

84ms

Service Level

0%

Health Check

N/A

Back to All Discussions

How to determine if plant needs water

Hi, I’m mostly interested in determining if my plant needs to be watered. It seems making a GET request to plant is the way to go however I’m not sure what some of the variables in the response mean.

Here’s what the API says the /plant endpoint will return:

{
  "plant_type_key": 47074,
  "soil_type_key": 82655,
  "updated": 1378768294,
  "name": "some random string",
  "created": 1378768294,
  "color": "some random string",
  "user_key": 36357,
  "links_key": [
    72133,
    23975
  ],
  "user_lower_moisture_threshold": 0.7776731305295005,
  "upper_moisture_threshold": 0.9870073395122263,
  "environment": "Inside",
  "lower_moisture_threshold": 0.7776731305295005,
  "key": 33337,
  "last_measurements": [
    {
      "plant_fuel_level": 0.8804282355920295,
      "updated": 1378766475,
      "battery": 0.6777800598450495,
      "signal": 0.7786994433682927,
      "key": "plant_60360_link_39584",
      "predicted_water_needed": 1378766475
    }
  ],
  "default_upper_moisture_threshold": 0.4,
  "user_upper_moisture_threshold": 0.9870073395122263,
  "default_lower_moisture_threshold": 0.34
}

It looks like the obvious watering variables are upper_moisture_threshold and lower_moisture_threshold however I’m not sure which of the variables in the last_measurements array is the CURRENT water level. Is it plant_fuel_level? If not, what does that variable mean? How about predicted_water_needed? What does that huge number mean?

Would love some clarification. Thanks!

Rapid account: Danwiding
danwiding Commented 9年前

Ah. The documentation is missing the line. If you make a request to https://dashboard.myplantlink.com/api/v1/plants you’ll see it

Rapid account: Harrisonhjones
harrisonhjones Commented 9年前

Dan,

Thanks for the response. Very helpful. Back to my last question again real quick:

I don’t see the most recent moisture value. Perhaps I’m just missing something obvious.

In the last_measurements array I’ve got the following variables:

"plant_fuel_level": 0.8804282355920295 = A relative measurement of the amount of water needed (0 = starving, 0 = full of water)

"updated": 1378766475 = The epoch time of when the this measurement array was updated with these measurements

"battery": 0.6777800598450495 = Battery %

"signal": 0.7786994433682927 = Wireless signal strength

"key": "plant_60360_link_39584" = Some kind of key?

"predicted_water_needed": 1378766475 = The epoch time when the plant should be watered next

What I don’t see is a "moisture": XXXX value. Where might it be?

Rapid account: Danwiding
danwiding Commented 9年前

That’s correct. Really we recommend watering once you get below 0.2 or so. Once the plant is at 0 it’s starting to strain itself. We can’t quite say how much water needs to be applied as that depends on how big of a plant, how big is the container for the soil, etc. The moisture value is the http://en.wikipedia.org/wiki/Water_content which is a percentage of water per volume. Additionally it’s really only a local volumetric reading (it only reads the soil very near the electrodes) though after watering your plant the soil should eventually become somewhat evenly distributed with water (we assume after an hour). So best answer for how much is just to experiment. Get entire top level of soil near the plant at least moist. And then wait to see what plantlink reports after a couple hours. You can adjust more or less water from there.

The first reading from the last_measurements array attribute should always be the most recent. So you can pull the volumetric water content and plant fuel level from it.

Rapid account: Harrisonhjones
harrisonhjones Commented 9年前

Thanks Dan!

So, would it be fair to say that when the plant_fuel_level number < 0 I’m good to water the plant? If so, is there any easy way to determine how long I should water it for? I’d like to build a quick and easy to read physical display and it would be nice to say “Plant X needs to be watered for 5 minutes”

Additionally, is there anyway to pull the current moisture level?

Rapid account: Danwiding
danwiding Commented 9年前

My apologies for the delay. Each of the huge numbers are actually epoch times. The predicted_water_needed is a machine readable time for when we are predicting the plant will need to be watered. plant_fuel_level is something of a creation for the front end. When the value is below 0 the plant needs to be watered. When the plant is above 1 the plant is overwatered.

Join in the discussion - add comment below:

Login / Signup to post new comments