Unable to update Pixelblaze

Restarted PB updating to 3.25 and not getting past the spinning cube with Loading message. Tried reinstalling from /recovery.html, but I’m still getting the same issue. The recovery page says it’s got 341K free.

Is there some kind of hard reset that I can do?

Hi @jborcha,
Sorry to hear that!

It sounds like it’s having trouble installing the full web app. Try reinstalling/repairing from recovery a few times, that seems to do the trick for most folks and should eventually work (its reclaiming some flash each try). If you can get in, I’d free up a bit more space if you can.

If you can’t get past that, we can try to free up some space manually, which is a bit tricky.

1 Like

Interestingly, I was able to install the update from /update and now I’m showing 628K free. Problem now is that it shows the recovery page by default instead of the spinning cube.

However, when I try to update from recovery, it ends up hanging on file 3/4 with 89782 bytes remaining and 426K free before failing and saying ‘Error, check internet connection’.

Browser console offers a little more info: code: 3, progress: "Error: Unable to write to tmpfile". The most recent status refresh prior to the update failing showed this:

Object {
  exp: 1
  fps: 58.53175
  mem: 10239
  rebootCounter: 0
  renderType: 1
  rr0: 1
  rr1: 14
  storageSize: 1378241
  storageUsed: 941752
  uptime: 827167
  vmerr: 0
  vmerrpc: -1 }

That is very good information! Indeed your PB is having issues writing to the filesystem.

The way updates work is they first install the recovery.html app, then replace (deleting) the main app with a copy of the recovery app so that if the next step fails, you have an easier time fixing things. It does this to free up space, and if something happens it can leave you without the main app.

If you can, try to use @pixie’s tool to get a backup. Otherwise, files can be downloaded manually by URL.

You can get a file list with the /list endpoint. This just gives filenames though. There may be a few extra files that aren’t critical that can be deleted, like apple-touch-icon.png and favicon.ico. Most of your storage is going to be used by patterns though.

Files can be deleted by issuing a request to /delete?path=/somefilename.

Files can be uploaded too via a POST with something like curl, but that is where using @pixie’s tool would save you a lot of work. This post has a few more details, but was written before this tool was created.

1 Like

Thanks for helping with this! I was able to delete a few of the largest patterns (I’ve got backups anyway) to get the free space > 700K before updating again and everything works now.

2 Likes

Hi, I just wanted to say hi and thank you for this hint about http://192.168.1.4/list and http://192.168.4.1/delete?path=/p/somefileID from the /list action. I accidentally overloaded with too many animations on one of my boards and landed in Recovery Mode. I was able to delete a bunch of the animations so I could apply the update and escape recovery mode. Any chance you can add the list and delete functions into the recovery mode UI? I was surprised that recovery mode still allowed access to other API functions, but pleasantly so. :slight_smile:

(And, a note about the IP addresses I used above for anyone searching for help in the future, these would be something similar to the rest of your IP addresses if you have configured yours to join an existing network. 192.168.1.200/list or whatever IP range your network is configured to use.)

1 Like