Playdate acts like it was factory reset after uploading a game from an incompatible simulator version

Update: based on the discussion in Device boot-loop / possible launcher bug? I believe my issue was actually caused by a game called Heavy Drinker that I had recently sideloaded after its author posted on discord asking for playtesters. I posted more details in that thread, but I’m leaving this one up in case the crash logs help diagnose anything.

Original post:

I’m on MacOS Ventura 13.3.1 (a) on M1.

I accidentally used the SDK 2.0 beta 2 simulator to upload a game built for OS 2.0 onto my Playdate running OS 1.13.7. When it tried to run the game, of course it gave an error saying the game requires a newer OS version. I realized my mistake, rebuilt the game using the 1.13.7 SDK, and re-uploaded it using the 1.13.7 simulator (Device -> Upload game to device).

A few moments later, my Playdate was showing a crash screen (“Press A to continue” with no option to press B for the log) and the simulator was (IIRC) stuck on “waiting for disk” and wouldn’t let me cancel.

When I restarted the Playdate, it started going through the intro and setup process as if it was factory reset. (“Hello! Welcome to Playdate… Let’s do a little setup to get started” and so on)

I was able to use the simulator to reboot the Playdate from the setup screen back into data disk mode and recover my data folder, screenshots, and crash log, which are still intact (it looks like everything on the data disk is untouched). After ejecting it, it booted right back to the setup process and I’m afraid to continue with it since it acts like it’s going to reset everything (edit: decided to try it, went badly, see next post). When I press the reset button in the crank slot it also reboots right back to the setup process.

I think this is the crash log from when it crashed during the upload from the 1.13.7 simulator but I’m not certain:

--- crash at 2023/05/13 03:59:26---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030c94    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f0c   psr: 21000000
 cfsr:00008200  hfsr:40000000  mmfar:43656e6f  bfar: 43656e6f
rcccsr:00000000
heap allocated: 549792
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

I honestly have no idea if me using the 2.0 simulator was what caused this or if something unrelated just happened to go wrong with my Playdate at the same time.

After going through the setup process the extra time, it showed the menu with all of my games still there, but acted strange – the system menu only had Volume and Home and was missing everything else. I tried to launch the Settings app and it crashed (blocks, “press A to restart”). After restarting, it crashes if I do anything on the launcher screen (press any button other than the lock button or touch the crank. Lock/unlock seems to be the only functionality that still works). Even plugging it into my Mac causes a crash.

I’ve tried holding the power button for 10 seconds, which allows for a few seconds of normal use before the crashing starts again.

The issue sounds similar to some other recent reports Playdate Hard Crash - Not While Playing Game? and Device boot-loop / possible launcher bug? but in my case, neither holding the power button nor deleting the most recently installed game helps anything.

I was able to get to data disk mode by letting it crash, then restart, then using the simulator to boot to data disk. Here are all of the crashlog.txt entries since it started happening. errorlog.txt doesn’t have anything after the first time when it tried to launch the incompatible game.

Crash log
--- crash at 2023/05/13 05:54:53---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:200336a8    r1:20002402     r2:000030d3    r3: 00000002
  r12:0000000a    lr:0803b2d7     pc:0803cde8   psr: 21000000
 cfsr:00000082  hfsr:00000000  mmfar:000c0001  bfar: 000c0001
rcccsr:00000000
heap allocated: 976896
Lua totalbytes=853200 GCdebt=-99752 GCestimate=426693 stacksize=160

--- crash at 2023/05/13 05:55:02---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030cba    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f50   psr: 21000000
 cfsr:00008200  hfsr:40000000  mmfar:0034005e  bfar: 0034005e
rcccsr:00000000
heap allocated: 518144
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

--- crash at 2023/05/13 05:55:18---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030d01    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f4c   psr: 61000000
 cfsr:00008200  hfsr:40000000  mmfar:01888380  bfar: 01888380
rcccsr:00000000
heap allocated: 526912
Lua totalbytes=127855967 GCdebt=-127575252 GCestimate=280514 stacksize=42

--- crash at 2023/05/13 05:56:17---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:0801e7a2    r1:00000001     r2:2000269e    r3: 00000000
  r12:00003fe0    lr:08041777     pc:0803d11c   psr: 21000000
 cfsr:00008200  hfsr:40000000  mmfar:0034005e  bfar: 0034005e
rcccsr:00000000
heap allocated: 519232
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

--- crash at 2023/05/13 05:57:51---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030b23    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f12   psr: 61000000
 cfsr:00000082  hfsr:00000000  mmfar:00009100  bfar: 00009100
rcccsr:00000000
heap allocated: 976896
Lua totalbytes=853200 GCdebt=-99752 GCestimate=426693 stacksize=160

--- crash at 2023/05/13 05:58:24---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:2003144c    r1:00000000     r2:00001000    r3: 00000400
  r12:00000000    lr:08039fdf     pc:0803ad88   psr: 81000200
 cfsr:00008200  hfsr:40000000  mmfar:0034005e  bfar: 0034005e
rcccsr:00000000
heap allocated: 518144
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

--- crash at 2023/05/13 05:58:31---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030c50    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f10   psr: 61000000
 cfsr:00008200  hfsr:40000000  mmfar:0034005e  bfar: 0034005e
rcccsr:00000000
heap allocated: 520032
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

--- crash at 2023/05/13 06:01:39---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:60fe0010    r1:00000000     r2:60fe0410    r3: 60fe01a0
  r12:00000005    lr:0801f169     pc:080b2d1a   psr: 81000000
 cfsr:00008200  hfsr:40000000  mmfar:20333237  bfar: 20333237
rcccsr:00000000
heap allocated: 518528
Lua totalbytes=127856299 GCdebt=-127574088 GCestimate=280386 stacksize=84

--- crash at 2023/05/13 06:03:50---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000003    r1:00000001     r2:e000ed00    r3: 00000060
  r12:006d3000    lr:08031277     pc:080156e8   psr: 21000000
 cfsr:00008200  hfsr:40000000  mmfar:0034005e  bfar: 0034005e
rcccsr:00000000
heap allocated: 562656
Lua totalbytes=0 GCdebt=0 GCestimate=0 stacksize=0

--- crash at 2023/05/13 06:04:20---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000002    r1:00000000     r2:00000001    r3: 00000050
  r12:00003fe0    lr:08047521     pc:08039c64   psr: 61000000
 cfsr:00008200  hfsr:40000000  mmfar:5a620154  bfar: 5a620154
rcccsr:00000000
heap allocated: 518144
Lua totalbytes=127856635 GCdebt=-127575288 GCestimate=280514 stacksize=42

--- crash at 2023/05/13 06:04:28---
build:9da6486e9095-1.13.7-release.153702-buildbot
   r0:00000000    r1:00000000     r2:00030bf2    r3: 00000000
  r12:006d3000    lr:08031207     pc:08030f12   psr: 61000000
 cfsr:00008200  hfsr:40000000  mmfar:00390037  bfar: 00390037
rcccsr:00000000
heap allocated: 518144
Lua totalbytes=127856683 GCdebt=-127574096 GCestimate=280354 stacksize=84

If you want to try to get back to normal you can try installing recovery firmware and then upgrade back to latest public. Hold lock+menu+a+b for a while and follow the prompts.

Thanks! Unfortunately, the recovery firmware also crashes immediately when I try to do anything from the launcher.

(Edit: I was able to update back to 1.13.7 after holding the reset button for >30s but it still crashes constantly. The duration I hold reset equals the duration it can run without crashing??? Kinda seems like a hardware problem)

I think my issue was actually caused by having recently sideloaded the game “Heavy Drinker” that was posted on the Squad Discord recently. The incompatible simulator thing just resulted in a restart that triggered the issue to start happening. I think I was able to fix it by deleting that game from data disk mode and then installing recovery firmware again – see Device boot-loop / possible launcher bug? - #6 by daprice for more info.

Just to add a reference here, we have a fix in the works: Device boot-loop / possible launcher bug? - #28 by dave