# Latest SDK emulator aborts

**URL:** <https://forum.repebble.com/t/latest-sdk-emulator-aborts/463>\
**Category:** Watchapp/Face Developers Corner\
**Created:** [April 5, 2026, 8:44pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463 "2026-04-05T20:44:46Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 5, 2026, 8:44pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/1 "2026-04-05T20:44:46Z")

</div>

Since installing the latest SDK update the emulator consistently aborts after about 2 min. It would also sometimes hang or abort on the previous release but typically ran longer, now it always aborts after a short time. Would be nice if it would keep running so I can look at it while making tweaks. Can capture a screenshot, but that’s static and extra steps.

(I’m running default Ubuntu in Windows WSL)

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 6, 2026, 2:57pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/2 "2026-04-06T14:57:11Z")

</div>

If you run `pebble kill && pebble wipe` and try running the emu again, does it still crash like that?

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 6, 2026, 5:08pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/3 "2026-04-06T17:08:01Z")

</div>

The normal emulator command to start it works fine. On the previous build I did sometimes need to use the kill and wipe commands, but on the latest one it restarts fine after the abort. I just timed it and it runs for just over 2 min, then this, and the VmmemWSL process ramps up CPU until I close it.

 ![image](https://canada1.discourse-cdn.com/flex033/uploads/pebble1/original/1X/6df6d6aeeebd621c3bfb6a05ee3bfb63f34e2996.png)

---

<div class="post-metadata">

**Author:** ![eric](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/eric/32/239_2.png) [@eric](https://forum.repebble.com/u/eric)\
**Post date:** [April 7, 2026, 6:06am UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/4 "2026-04-07T06:06:05Z")

</div>

Can you share the exact command order that you’re running to reproduce this bug? Does it happen 100% of the time?

If you switch back to the older SDK and run the exact same test, does it fail?

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 11:21am UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/5 "2026-04-07T11:21:37Z")

</div>

Full disclosure. I’m using Claude to do the coding. I asked and here’s what it says is being executed to start the emulator. It also clarified, “The the flash file delete is done before each launch to avoid boot hangs from a corrupted state.”

pkill -f qemu  
sleep 2  
find ~/.pebble-sdk -name “qemu\_spi\_flash.bin” -delete  
cd ~/Round2\_test && pebble install --emulator gabbro

Yes, since the latest update the abort happens 100% of the time after about 2 min. I was running the previous SDK version and this consistent abort was not happening. It would run much longer. It would sometimes hang but only sporadically.

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 4:54pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/6 "2026-04-07T16:54:39Z")

</div>

You should be using `pebble kill`and `pebble wipe` instead.

But regardless, I’ve seen a couple people have issues with the emulator bleaking like this. I would make sure you’re on the latest Ubuntu (not LTS) and try again.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 5:04pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/7 "2026-04-07T17:04:23Z")

</div>

Ok. I’ll use those commands, and check on the Ubuntu release. One more observation, the Q key brightens the display when it dims. I tried holding down the Q key and the emulator kept running past the time it would typically abort. Maybe that’s a clue.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 5:09pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/8 "2026-04-07T17:09:35Z")

</div>

I’m on Ubuntu 24.04.4 LTS, which I’m told is the latest release.

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 5:12pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/9 "2026-04-07T17:12:16Z")

</div>

Q key is the back button. If you’re making a watchface itwon’t close the face and will only brighten the screen (represents the backlight being on) and yes 24.04’s the latest.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 5:28pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/10 "2026-04-07T17:28:18Z")

</div>

So, the emulator screen brightening prevents the abort. It does go through a couple of cycles after initially displaying the face where the face goes away, “Pebble” appears on a black screen, then the face comes back on. After a few of those it aborts. I did change the code (or Claude did) to use “pebble kill” and “pebble wipe”, but the abort still happens.

One more ? Is there way to have the emulator simulate each of the button presses with the keyboard or mouse? Some keys interact with it but I don’t see where all the buttons are mapped to keys or mouse clicks. Thx.

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 5:31pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/11 "2026-04-07T17:31:51Z")

</div>

Q is back, W is up, S is select, and X is down. I believe arrow keys tork as well. The letter keys are chosen to mirror the rough button layout of the actual watch on a qwerty keyboard.

As for the face, does this happen with a default project too? It’s possible (though quite unlikely) that your app is actually crashing the emulator.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 5:41pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/12 "2026-04-07T17:41:10Z")

</div>

Sorry if this is basic, but my understanding is the right 3 buttons are available for watchface options when it’s running. If I use W, S or X in the emulator it exits the face display. Is that how it should work? (Arrow keys do the same, exit the face).

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 5:45pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/13 "2026-04-07T17:45:40Z")

</div>

Yes, that’s correct. The right-side buttons can be captured by apps but not faces.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 5:57pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/14 "2026-04-07T17:57:11Z")

</div>

Ok, I’ll need to rework my watchface designs. Is there any way to use buttons to toggle face options? Also I ran these commands, and the emulator aborted, so don’t think it’s my app causing it.

pebble kill

pebble wipe

cd ~/default\_test

pebble install --emulator gabbro

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 6:01pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/15 "2026-04-07T18:01:49Z")

</div>

Default\_test is a default project?

And no. Watchfaces do not have access to the buttons at all. Presumably they will have access to touchscreen whenever that eventually gets added to the SDK. The only input as of now is the accelerometer. It’s common to trigger actions using the accel\_tap handler. If you want further customisation, use the @rebble/clay NPM package to make a settings page.

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 6:06pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/16 "2026-04-07T18:06:20Z")

</div>

Sorry, I’m the middle man here, but trying to learn, and help if possible. Here’s Claude’s response when I asked if default\_test is a default project:

“Yes, it’s a default project — `pebble new-project default_test` generates a completely stock template with no custom code whatsoever. It’s the simplest possible Pebble app the SDK can create. That’s exactly what they’d mean by “default project.”“

So, at some point the touchscreen can be used for face input to trigger options without exiting the face? Looking into clay and a settings page.

---

<div class="post-metadata">

**Author:** ![Flynn](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/flynn/32/73_2.png) [@Flynn](https://forum.repebble.com/u/Flynn)\
**Post date:** [April 7, 2026, 6:32pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/17 "2026-04-07T18:32:53Z")

</div>

Re: the touchscreen, yes. There’s not been any confirmation of that AFAIK but everyone I’ve spaken to assumes that touch will be accessible for watchfaces.

The default project crashing means it’s not your other app that’s the issue. I don’t know how to debug further without debugging qemu itself, unfortunately

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 7, 2026, 6:36pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/18 "2026-04-07T18:36:42Z")

</div>

Ok, thanks. I’ll look forward to touchscreen and ponder clay options. Persistent emulator runs would be good, but I can work around it.

---

<div class="post-metadata">

**Author:** ![eric](https://yyz1.discourse-cdn.com/flex033/user_avatar/forum.repebble.com/eric/32/239_2.png) [@eric](https://forum.repebble.com/u/eric)\
**Post date:** [April 7, 2026, 9:31pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/19 "2026-04-07T21:31:55Z")

</div>

(Thanks @Flynn for providing all this help!)

---

<div class="post-metadata">

**Author:** ![jimbo](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@jimbo](https://forum.repebble.com/u/jimbo)\
**Post date:** [April 8, 2026, 9:00pm UTC](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463/20 "2026-04-08T21:00:09Z")

</div>

I have an update and some good news. I did a BIOS update yesterday and started doing designs and emulator runs today, and it’s not aborting. Seems like an odd connection, but perhaps some MOBO, CPU, memory, etc. timing issues were the cause and have now been fixed. In any case wanted to let you know.

[Next page](https://forum.repebble.com/t/latest-sdk-emulator-aborts/463.md?page=2)
