After some updates to the kernel, my laptop doesn't resume anymore if it's not connected to a power source. If I plug in the AC and then suspend, it will resume.
I thought that this was related to TLP and power management, but even disabling TLP doesn't make it resume on battery. In journal I just see:
Jun 23 08:19:01 miki-laptop systemd-logind[395]: Lid closed.
Jun 23 08:19:14 miki-laptop systemd-logind[395]: Suspending...
Jun 23 08:19:15 miki-laptop systemd[1]: Starting Lock X session using xlock...
Jun 23 08:19:15 miki-laptop systemd[1]: Starting TLP suspend/resume...
Jun 23 08:19:15 miki-laptop systemd[1]: Started TLP suspend/resume.
Jun 23 08:19:15 miki-laptop lock.sh[1107]: real 0m0.730s
Jun 23 08:19:15 miki-laptop lock.sh[1107]: user 0m0.690s
Jun 23 08:19:15 miki-laptop lock.sh[1107]: sys 0m0.017s
Jun 23 08:19:16 miki-laptop lock.sh[1107]: real 0m0.915s
Jun 23 08:19:16 miki-laptop lock.sh[1107]: user 0m0.857s
Jun 23 08:19:16 miki-laptop lock.sh[1107]: sys 0m0.030s
Jun 23 08:19:17 miki-laptop lock.sh[1107]: real 0m0.681s
Jun 23 08:19:17 miki-laptop lock.sh[1107]: user 0m0.767s
Jun 23 08:19:17 miki-laptop lock.sh[1107]: sys 0m0.010s
Jun 23 08:19:17 miki-laptop systemd[1]: Started Lock X session using xlock.
Jun 23 08:19:17 miki-laptop systemd[1]: Reached target Sleep.
Jun 23 08:19:17 miki-laptop systemd[1]: Starting Suspend...
-- Reboot --
The reboot is when I resume, so I don't really know if the problem lies in the suspend or in the resume. My laptop is an Asus UX305UA, and the problem is very similar to this other question:
Asus UX303UA rebooting instead of resuming from suspend (ubuntu 15.10)
Best Answer
Looking into the BIOS options, I found "Wake on lid open". Even if it says "Enabled" it does not always work.
I found that when I upgrade the kernel, I have to go into the BIOS, select "Disabled", reboot, go into the BIOS again and select "Enabled".
Amazingly, with this process the laptop wakes from suspend on battery as well.