fix peripheral return values
tree farm improvements