[FARMWARE] Mother's Little Helper (MLH)


#21

Still having Problems eugene @etcipnja:

TYPE MESSAGE POSITION (X, Y, Z) TIME
2

Busy Syncing 211, 1, 0 Jun 29, 9:13pm
2

Busy Syncing 211, 1, 0 Jun 29, 9:13pm
2

Error CS Failed: [execute_script] - “Farmware failed” 211, 1, 0 Jun 29, 9:13pm
2

Warn #Farmware<Selfie(1.0.7)> completed with exit status: 1 211, 1, 0 Jun 29, 9:13pm
1

Error [Selfie] HTTP error 500 {“status”:500,“error”:“Internal Server Error”} 211, 1, 0 Jun 29, 9:13pm
1

Info [Selfie] (0,0) skipped as it was already taken less than 1h ago 211, 1, 0 Jun 29, 9:13pm
1

Info [Selfie] Selfie cache will be saved to tool id 45466 211, 1, 0 Jun 29, 9:13pm
1

Info [Selfie] {‘action’: ‘real’, ‘stepsize’: (400, 500), ‘bottomleft’: (1267, 1267), ‘topright’: (0, 0), ‘default_z’: 0} 211, 1, 0 Jun 29, 9:13pm
2

Busy Beginning execution of #Farmware<Selfie(1.0.7)>

and another one, maybe as helpful:
2

Error CS Failed: [execute_script] - “Farmware failed” 0, 0, 0 Jun 30, 10:45am
2

Warn #Farmware<Selfie(1.0.7)> completed with exit status: 1 0, 0, 0 Jun 30, 10:45am
1

Error [Selfie] HTTP error 500 {“status”:500,“error”:“Internal Server Error”} 0, 0, 0 Jun 30, 10:45am
3

Busy Image Watcher trying to upload /tmp/images/rotated_1530348318.jpg 0, 0, 0 Jun 30, 10:45am
2

Info Uploading: /tmp/images/rotated_1530348318.jpg 0, 0, 0 Jun 30, 10:45am
1

Success Image Watcher successfully uploaded: /tmp/images/rotated_1530348318.jpg 0, 0, 0 Jun 30, 10:45am
2

Success #Farmware<take-photo(1.0.2)> completed without errors. 0, 0, 0 Jun 30, 10:45am
3

Busy Image Watcher trying to upload /tmp/images/rotated_1530348318.jpg 0, 0, 0 Jun 30, 10:45am
2

Info Uploading: /tmp/images/rotated_1530348318.jpg 0, 0, 0 Jun 30, 10:45am
2

Busy Beginning execution of #Farmware<take-photo(1.0.2)> 0, 0, 0 Jun 30, 10:45am
2

Info [TAKE A PHOTO] - Sequence Executing: TakePhoto 0, 0, 0 Jun 30, 10:45am
2

Busy [TAKE A PHOTO] - Sequence init. 0, 0, 0 Jun 30, 10:45am
1

Info [Selfie] Executing sequence: TAKE A PHOTO(8680) 0, 0, 0 Jun 30, 10:45am
1

Success Movement to (0.0, 0.0, 0.0) complete. 0, 0, 0 Jun 30, 10:45am
1

Busy Moving to (0.0, 0.0, 0.0) 0, 0, 0 Jun 30, 10:45am
1

Info [Selfie] Moving absolute: {‘y’: 0, ‘x’: 0, ‘z’: 0} 0, 0, 0 Jun 30, 10:45am
1

Info [Selfie] Selfie cache will be saved to tool id 45466 0, 0, 0 Jun 30, 10:45am
1

Info [Selfie] {‘action’: ‘real’, ‘stepsize’: (400, 500), ‘bottomleft’: (1267, 1267), ‘topright’: (0, 0), ‘default_z’: 0} 0, 0, 0 Jun 30, 10:45am
2

Busy Beginning execution of #Farmware<Selfie(1.0.7)>


[FARMWARE] Selfie
#22

Thank you for report, I am currently on vacation but will take a look on this problem when I am back
Eugene


#23

Hi,

This thread is about MLH. You seem to have a problem with Selfie. Please let me know what version of Selfie you have, what have changed since the last time you was able to run it successfully.
It would be great if we continue this topic in the Selfie thread.

Thank you,
Eugene


[FARMWARE] Selfie
#24

@etcipnja: Currently MLH does not work anymore o.O it was deleted from the farmware page for whatever reason:
When I tried to install it again I got:

CeleryScript: #PID<0.6398.0> died: {:badarg, {GenServer, :call, [Farmbot.HTTP, {:request, :get, " https://raw.githubusercontent.com/etcipnja/MLH/master/MLH/manifest.json", “”, [], []}, :infinity]}} -1192.6, 0.2, 0.5 Jul 29, 9:07pm
2

Busy Installing farmware from https://raw.githubusercontent.com/etcipnja/MLH/master/MLH/manifest.json. -1192.6, 0.2, 0.5 Jul 29, 9:07pm

Could you please revive it, I need to water my plants tomorrow latest :frowning:


#25

@Klimbim hello, I can’t reproduce your problem. In my case software is installed and uninstalled correctly.

I bet your FB can not access to this URL https://raw.githubusercontent.com/etcipnja/MLH/master/MLH/manifest.json

Thank you,
Eugene


#26

Hoi @etcipnja: interestingly the farmware turned up again. When I tried a second time to install it later on it said: already installed; after reloading the page it suddenly appeared again… any idea? I experience it in the past already… could that be connected to a firmware upload that I did a while ago to the new version? This is quite an odd behaviour :confused:


#27

This is happened to me as well

Looks like platform issue.
Eugene


#28

Hoi @etcipnja:

is that still the same error you mentioned before? See the logs from today:

Error CS Failed: [execute_script] - “Farmware failed” -1, -1, -1 Aug 5, 8:01pm
2

Warn #Farmware<MLH(2.4.12)> completed with exit status: 1 -1, -1, -1 Aug 5, 8:01pm
1

Success Movement to (290.0, 270.0, 0.0) complete. -1, -1, -1 Aug 5, 8:01pm
1

Success Movement to (290.0, 270.0, 0.0) complete. 290, 270, 0.17 Aug 5, 8:01pm

Cheers
Klim


#29

It looks like it was not a fault of the farmware itself. The positions that are shown at every log suddenly turned to -1,-1,-1.


#30

Today very weird again; bot disconnected in the morning due to not found WiFi (it says but I do not believe); then when I signed into my account the MLH farmware was deinstalled; I installed it, wanted it to run and it quit with the following error:

Error [MLH] Something went wrong: HTTPSConnectionPool(host=‘my.farmbot.io’, port=443): Max retries exceeded with url: /api/points/XXXX (Caused by NewConnectionError(’<urllib3.connection.VerifiedHTTPSConnection object at 0x7603a130>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’,)) 59.8, 68.4, 0.17 Aug 6, 8:03pm

Any idea what is going on here @Gabriel @connor @roryaronson @etcipnja?


#31

It looks like your bot was unable to resolve my.farmbot.io's ip address. This can happen in situations where Farmbot’s wifi connection is not great which i would say applies to your Farmbot. the Farmware should probably check for errors such as this as it is fairly common in real world situations where network partitions are likely.


#32

@connor I doubt that Farmware shall check for all types of network problems explicitly. There might be plenty of them.
Yes, farmware shall gracefully stop execution in case of the underlying problem is reported by the platform.

MLH intercepted the exception correctly and stopped the execution. The message that you quoted is printed by MLH.


#33

@Klimbim, it looks like you have unstable Wifi or unstable DNS no matter you believe it or not. If you scroll this thread up you’ll see that you complained about same problem before.

Error [MLH] Something went wrong: HTTPSConnectionPool(host=‘my.farmbot.io’, port=443): Max retries exceeded with url: /api/points/44723 (Caused by NewConnectionError(’<urllib3.connection.VerifiedHTTPSConnection object at 0x76016130>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’,)) 850, 960, 0 Jun 25, 10:11pm

Those type of errors are hardly due to Farmware or Farmbot issues. The very basic OS functions are not working in your case for some reason.

Thank you,
Eugene


#34

Sorry i didn’t mean the Farmware should check for every network (or any other problem). What the Farmware is doing is great in my opinion. It should only check for errors if it knows how to handle them. In @Klimbim’s case there isn’t much that can be done - the bot simply cannot reach the service it requires.


#35

This should be fixed in the latest farmbot os release


#36

Clarification question: can it check for errors that it cannot control but can detect? (This is classic fault management for the curious: detection vs isolation vs correction). I believe FB OS does detect/isolate for some errors that it can not correct (e.g. ‘Temporary failure in name resolution’ indicates a likely DNS error which it has absolutely no control over).

I’m heading into possible ‘out of scope’ territory, but

  • Could some basic networking tests be included in FB OS and then have that suite run in the event of network issues?

For example, if a DNS failure occurs, also try a 4 count ping test to the FB server, google, or microsoft (perhaps all three). These are extremely valuable results that aid quickly in troubleshooting (my connection vs my ISP vs the third party DNS provider). A person strong in IP network troubleshooting could provide other useful tests, perhaps some forum users…


#37

Currently Farmbot makes ping requests every 15 seconds to the Farmbot web services. That is the only domain we will try to ping however to support users who run the entire Farmbot web stack on say a closed network where no outside resources (such as google or microsoft as suggested) are available. It is up to the user to make sure any other resources that a farmware or other plugin is available.


#38

Thanks for the info Connor!


#39

I am more than keen in finding out @etcipnja, it refers a little bit to what @fuzzynickel mentiones below:

What could I do in order to find more out about the stability of my internet connection? Ping every 10 seconds to the google server and look at the results afterwards?
Fuzzy exactly describes what I asked for since long time. The error: you have not internet connection is as if I would say your car is not able to move, it could mean so much. Therefore it would be great if also the farmbot side can be checked. Who says that the farmbot servers were reachable?! I would really like to see more differentiation here, shall I raise a feature request @connor?

Thanks all!


#40

I’m not sure i understood all of your request/question but

In your case in particular as it relates to this thread: Farmbot is unable to complete DNS requests. What this essentially means is Farmbot is unable to resolve the IP Address of the FarmBot servers. This is among the first things to happen in any network request. As to why FarmBot can’t resolve that address, it’s hard to say exactly. It could be FarmBot’s WiFi connection is too unstable, Your ISP is blocking the connection, etc.

FarmBot (or any networked device) has no idea, nor will it ever be able to know why name resolution is failing. FarmbotOS will try it’s best to make HTTP requests. Internally it will try up to 5 or 6 times before deciding that it has been disconnected. this particular Farmware probably does not, nor should it. It isn’t the Farmware’s responsibility to try and debug your unstable connection.