with_timeout
with_timeout
******************************************************************************
Decoding by `jag`, device has version <2.0.0-alpha.118>
******************************************************************************
EXCEPTION error.
Cannot find service
0: ServiceClient.open.<block> <sdk>\system\services.toit:167:49
1: ServiceClient.open <sdk>\system\services.toit:176:40
2: ServiceClient.open <sdk>\system\services.toit:167:12
3: main.<block> C:\Users\Mirko\AppData\Local\Temp\artemis-7ca7d9eb-1271-4aa9-a13a-d976cb1b8302\clone\src\services\mqtt\mqtt.toit:58:20
4: Task_.with-deadline_.<block> <sdk>\core\task.toit:203:16
5: Task_.with-deadline_ <sdk>\core\task.toit:197:3
6: with-timeout <sdk>\core\utils.toit:181:24
7: with-timeout <sdk>\core\utils.toit:173:10
8: main C:\Users\Mirko\AppData\Local\Temp\artemis-7ca7d9eb-1271-4aa9-a13a-d976cb1b8302\clone\src\services\mqtt\mqtt.toit:56:3
******************************************************************************
main:
(provider.WatchdogServiceProvider).install
logger.debug "Watchdog provider installed"
watchdogclient := WatchdogServiceClient
watchdogclient.open
dog := watchdogclient.create "mqtt-dog"
dog.start --s=60
logger.debug "Watchdog started"
dog.feed
dog.stop
dog.close
with-timeout --ms=2000:
watchdogclient := WatchdogServiceClient
watchdogclient.open
dog = watchdogclient.create "mqtt-dog"
dog.start --s=60
watchdogclient.open --timeout=(Duration --s=1)
$ jag pkg install watchdog
Info: Package 'github.com/toitware/[email protected]' installed with name 'watchdog'
jag pkg update
[eth] DEBUG: Watchdog provider installed
******************************************************************************
Decoding by `jag`, device has version <2.0.0-alpha.118>
******************************************************************************
EXCEPTION error.
Cannot find service
0: ServiceClient.open.<block> <sdk>\system\services.toit:167:49
1: ServiceClient.open <sdk>\system\services.toit:176:40
2: ServiceClient.open <sdk>\system\services.toit:167:12
3: main C:\Users\Mirko\AppData\Local\Temp\artemis-cdea2632-796b-42c6-8473-9813f0c442d2\clone\src\ble.toit:35:18
******************************************************************************
[eth] DEBUG: Watchdog started
import watchdog
import watchdog.provider
main:
provider.main
print "installed"
client := watchdog.WatchdogServiceClient
client.open
dog := client.create "foo"
dog.start --s=60
print "started"
dog.feed
dog.stop
print "stopped"
dog.close
provider.main
install
dogprovider.main
logger.debug "Watchdog provider installed"
watchdogclient := WatchdogServiceClient
watchdogclient.open
dog := watchdogclient.create "mqtt-dog"
dog.start --s=60
logger.debug "Watchdog started"
dog.feed
dog.stop
dog.close
******************************************************************************
Decoding by `jag`, device has version <2.0.0-alpha.118>
******************************************************************************
EXCEPTION error.
Cannot find service
0: ServiceClient.open.<block> <sdk>\system\services.toit:167:49
1: ServiceClient.open <sdk>\system\services.toit:176:40
2: ServiceClient.open <sdk>\system\services.toit:167:12
3: main C:\Users\Mirko\AppData\Local\Temp\artemis-616970cc-d0f6-46c7-88c7-f1db1182f3eb\clone\src\services\mqtt\mqtt.toit:57:18
******************************************************************************
watchdogclient := WatchdogServiceClient
watchdogclient.open --timeout=(Duration --s=2)
dog = watchdogclient.create "ble-dog"
dog.start --s=60
while true:
dog.feed
sleep --ms=5000
[ble] DEBUG: Advertising: 2d66 with name sbceade1c9c
import log
import watchdog
import watchdog.provider
main:
provider := provider.WatchdogServiceProvider
--logger=((log.default.with-name "watchdog").with-level log.DEBUG-LEVEL)
provider.install
print "installed"
INFO
feeding system watchdog
start
deep-sleep 0
It would be great to rule out that we're just not getting serial output anymore
If you hook prints at the Toit level, then you need (more) Toit code to run to get anything printed on serial.
[ble] DEBUG: Feed that dog.. omnomnomnom
CONFIG_FREERTOS_ISR_STACKSIZE=2096
SOC_HAL_STALL_OTHER_CORES()
To answer your question, the WDT does not kick in ever, we have kept the esp32 ON in that state for more than 8 hours.
According to our observation the panic_handler function stop at line
SOC_HAL_STALL_OTHER_CORES();
[email protected]