I broke my Windows DevKit 2023

I've been using my Windows DevKit 2023 a lot over the past years since it has good performance for software development and doesn't make my room hot like my traditional desktop PC. Inside it is a Microsoft SQ3 processor based on the Qualcomm Snapdragon 8cx Gen 3, making this a Windows on ARM device. It shipped with Windows 11, which was annoying until they finally added back the ability to get window titles on the taskbar, though it took them a long time to work out the bugs with that.

Unfortunately, today's post is mainly about issues specific to this device, rather than to Windows 11 in general. I typically use the maximum supported number of displays: 3. Up to two displays can be 4k, but I only have one 4k display. I basically just re-use my existing 4 display setup for my x86 desktop which arranges the displays in a 2x2 grid (4k display is bottom right, primary display is bottom left, extra displays are above), using the extra monitor inputs and excluding the top right display for my Windows DevKit 2023. For safety, I keep the DevKit itself in a well-ventilated position, with cool air blowing on and around it, even though it is supposedly stackable.

The Windows DevKit 2023 doesn't seem to be particularly happy with this display arrangement though - it works most of the time, but if I open too many browser windows (usually around 5 or so), suddenly the bottom two thirds of the 4k display turn solid gray, and I have to close or minimize windows until I can see again. I did submit feedback about this, but no updates seem to have resolved this. It might be a hardware limitation.

The Windows DevKit 2023 also doesn't seem very happy with video playback. It works mostly, but after some time a soft GPU reset will occur and turn all my browser windows white until I mouse over them to get them to recover. Sometimes video playback continues, sometimes I need to reload the page. This issue happens with both Firefox and Microsoft Edge, which both run natively as ARM64 apps. I've seen other reports of this issue online and I've submitted feedback to Microsoft, but the issue is difficult to reproduce, and when I try stress testing it I can't get it to happen. It might be some kind of driver bug. I've also gotten the occasional bugcheck screen with VIDEO_TDR_FAILURE, but the soft resets are more common.

I learned to live with these issues and figured the Nuvia-based Snapdragon X Elite processors would have improvements in these areas, especially since Qualcomm recently went to GDC and presented a talk on how to port video games to Windows on ARM. While waiting for devices with these processors, I still continued to use and enjoy my Windows DevKit 2023. The one day, something bad happened.

I don't remember exactly what I was doing at the time, but I think I was listening to a Twitch stream in the ARM64 native version of Firefox while developing in the ARM64 native version of Visual Studio 2022 on my Windows DevKit 2023 with three displays active. I always keep my primary display and computer connected to a UPS (Uninterruptible Power Supply) so that I can gracefully shut down in the event of power outages, which has saved me a few times. On this fateful day, however, my UPS beeped despite a lack of a power outage, and my primary display and Windows DevKit 2023 both turned off. A few seconds later, my primary display regained power.

I looked around, made sure nothing was burning, confirmed power hadn't blinked anywhere else, and then tried to turn on my precious Windows DevKit 2023. At first, I thought it wasn't turning on, and I was quite worried. Then, I got display output... on the non-primary displays. I thought maybe my mini-DisplayPort to HDMI adapter had short circuited, but removing it didn't improve matters - all three USB type-A ports on the back were no longer working with my keyboard & mouse, and the ethernet port on the back was also not working as I couldn't get wired ethernet. Only the two USB-C ports appeared to be working.

So that's how I'm typing this right now. I've got adapters plugged into the USB-C ports giving me two displays out and ability to connect keyboard, mouse, and ethernet. All five of the ports on the back seem to be broken, possibly by a short-circuit or overheat or something. It's been more than a year since I got this Windows DevKit 2023, so the warranty has expired. Since the mini-DisplayPort output is broken, I can no longer view the BIOS or bootup sequence, since it only outputs those to that port and doesn't output anything to the USB-C ports until it gets past Windows bootup. Also, there seems to be some minor graphical shimmering on the primary display, but this might be due to the adapter I am using.

Let this be a lesson: the Windows DevKit 2023 may seem powerful, but you should avoid overtaxing it. Use it only for development work and play videos on your phone instead, and only use two displays. Otherwise you might literally physically break it. Hopefully the next Windows DevKit iteration will be more resilient.