The function shutDown() will be called automatically. On Wed, Dec 22, 2021 at 7:47 PM Seth Ratner <[email protected]> wrote:
> Do I need to bind the ShutDown() method in my service to something, or > will ShutDown() be called automatically in all services based on the > StdService class? > > Thanks again > > On Wednesday, December 22, 2021 at 6:43:21 PM UTC-6 [email protected] > wrote: > >> The class StdService has a stub method shutDown() that is called when the >> engine stops. Just override it and run close(). >> >> On Wed, Dec 22, 2021 at 4:21 PM Seth Ratner <[email protected]> wrote: >> >>> Hi everyone. >>> >>> I have WeeWX set up on a Raspberry Pi with the GW1000 driver. I'm also >>> using a service I wrote to add a wired rain gauge to the GPIO pins using >>> the gpiozero library. >>> >>> Here's the service: >>> https://github.com/lordratner/weewx_gpio_raingauge/blob/main/gpio_rain_service.py >>> >>> The setup is on the bitter edge of a wifi network, so the components >>> drop in and out of the connection. When the GW1000 drops out, WeeWX tries >>> three times to query it, then seems to shutdown the loop: >>> >>> ERROR user.gw1000: Unable to obtain live sensor data >>> INFO weewx.engine: Main loop exiting. Shutting engine down. >>> INFO weewx.engine: Shutting down StdReport thread >>> DEBUG weewx.engine: StdReport thread has been terminated >>> INFO user.gw1000: Gw1000Collector thread has been terminated >>> CRITICAL __main__: Caught WeeWxIOError: Failed to obtain response to >>> command 'CMD_GW1000_LIVEDATA' after 3 attempts >>> CRITICAL __main__: **** Waiting 60 seconds then retrying... >>> >>> >>> It then goes through the whole process of launching the engine. When it >>> gets to my service: >>> >>> DEBUG weewx.engine: Loading service user.gpio_rain_service.GpioRainGauge >>> >>> The service throws an error when it tries to reinitialize the GPIO pin. >>> The pin is still set in gpiozero from before the loop exited, and you can't >>> set a pin twice. >>> >>> How can I make my service run the close() process when the main loop is >>> exited? This would free up the pin to be reassigned when the loop restarts. >>> >>> Thanks! >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "weewx-user" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/weewx-user/6fbe0d9b-1df1-46df-8862-645dfd0fc04an%40googlegroups.com >>> <https://groups.google.com/d/msgid/weewx-user/6fbe0d9b-1df1-46df-8862-645dfd0fc04an%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- > You received this message because you are subscribed to the Google Groups > "weewx-user" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/weewx-user/895e2936-47f4-4fbd-9a6d-db14fa89d6adn%40googlegroups.com > <https://groups.google.com/d/msgid/weewx-user/895e2936-47f4-4fbd-9a6d-db14fa89d6adn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/CAPq0zEDmGz%3DeHKNJQ9bDVfoagDyNUKHiGH%3D_eNJ075LSfn0qGQ%40mail.gmail.com.
