Have you tried using something other than pymakr? maybe screen or minicom. Also its worth checking if your user has permissions for the serial port. The procedure to do this varies by linux distro but on most you can add your user to the dialout group and when you reboot that user will have permissions to use serial ports
@stefan85e That does not show much more than the reboot messages. Since your scripts prints messages, it would be interesting to see the time frame after printing your script's messages and the reboot print-outs. If Atom cannot do that, use a simple terminal emulator like Putty on Windows. The allow to write logs into a file.
@jiancha For the input of the Lopy Youll need some kind of Pull-up. That could be an internal pull.-up resistor, or an external one, like 4k7 to 3.3V. Otherwise the input is floating when the switch is open. Which Pin of LoPy are you using for input, and how do you control it?
Using the reed relay is in principle a good idea to protect the Lopy from transitions. But the values of 33k/100k for the voltage divider are also suitable. The resistor values are not too high. The input resistance of the Lopy is several MOhm.
@panos29 Both boot.py and main.py are executed at power on and reset, and give you the starting point. So you can put your code into main.py, or in a different file, which you import from main.py (which is what I prefer), or, or, or....