Waiting based on plant metadata

When I run a sequence it looks like only the name, type, id, and the xyz are passed in when I inspect the “variable()” in lua. Would it be possible to get the spread and metadata for that plant as well so I can adjust the amount of water to give it? I suppose I could use the http endpoint to pull this info from the api, but that seems suboptimal.

Additionally I can’t find an easy way to sleep/wait from lua.

Any advice would be appreciated. Thanks!

Looking at the code it appears there is already a point() function that just needs to be exposed to Lua

FarmbotOS.SysCalls.PointLookup.point

@Carrino Exposing more data to the parent() variable has been on my TODO list for a while. I can add it to a future release fairly easily if there is demand for it. I can also add a wait() function.

The PointLookup module is just an internal module used for database queries (probably will be removed in the next year- long story).

For reference, all Elixir methods are transferred to the Lua sandbox via this module right here. It will give you a good idea about what is/isn’t currently available to Lua code. It also hosts quite a few STDLib functions (like pairs and math routines, etc…).

@Carrino v14.0.3 was just released with support for wait() inside of a Lua block. The other feature (reading metadata / radius info for parent()) is still a work-in-progress. I hope to have it ship with v14.1.0.

1 Like

That is super helpful. Thanks so much for pushing this through.

1 Like