Yun RST button does not cause reboot?

I just noticed the following behaviour:

  • I press Yun RST button. Whilst doing so I see the USB LED on (but not fully)
  • I see I immediately lose connectivity to the Yun (cant ping anymore)

I would expect the Yun to reboot, but that does not happen. It is as if the linux side does not boot again. The white LED never goes on again.

If instead of pressing the Yun RST button, I power cycle my Yun everything works fine.

Anyone else with this behaviour? I assume this is not the expected behaviour?

BTW: I think to see the same problem when using the watchdog to reboot.

Can this be caused by the sketch doing Console writes, interrupting the boot process?

NewLine:
Can this be caused by the sketch doing Console writes, interrupting the boot process?

Yes indeed. With openwrt-yun 1.3 we've released an updated uboot that will partially solve the issue. Unfortunately, uboot does not get upgraded with normal upgrade procedure, the only way is through tftp: see this tutorial http://arduino.cc/en/Tutorial/YunUBootReflash

For the record, the problem lies in uboot accepting any char to interrupt the boot process and to activate its own console. The updated uboot waits for the user to type exactly "ard" (without quotes). That makes your problem very unlikely to happen

Thanks! Would newly build Yuns be shipped with the new uboot?

Yes but it’s still under testing and the new image will be send to the farm by the end of August: it will take a while to see the new ones hit the shop
Any feedback is much appreciated

One extra question: besides Console writes, will a bridge write (from the sketch side) cause a similar problem?

Using Bridge or one of its components (Console, Process, YunClient...) causes the same problem

What is about the time it takes for the uboot to pass its “look for any char”? I want to let my sketch wait for that amount of time in setup(), so that if I reset both processors at the same time I should be fine.

But if my sketch uses the Bridge and I also want to be able to reset the CPU only (actually I want to have its watchdog do that), I guess the only option I have is to take the risky path of upgrading my uboot? On the link given above there are 3 parts: uboot, kernel, rootfs. Can I do uboot only, or do you always need to do the 3 parts?

IMHO it is a pity that uboot doesnt “exit” automatically when it didn’t get any sensible input for e.g. 1 minute.

NewLine:
What is about the time it takes for the uboot to pass its "look for any char"? I want to let my sketch wait for that amount of time in setup(), so that if I reset both processors at the same time I should be fine.

4 seconds

NewLine:
But if my sketch uses the Bridge and I also want to be able to reset the CPU only (actually I want to have its watchdog do that), I guess the only option I have is to take the risky path of upgrading my uboot? On the link given above there are 3 parts: uboot, kernel, rootfs. Can I do uboot only, or do you always need to do the 3 parts?

No, you can flash uboot alone

NewLine:
IMHO it is a pity that uboot doesnt "exit" automatically when it didn't get any sensible input for e.g. 1 minute.

I'm not expert, but I guess uboot has to be too small for such a feature.