ZP100 not booting



Show first post
This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

197 replies

Userlevel 2
After moving to my new house I wanted to reconnect my ZP100 today again. But what a bad surpise: I am facing now same issues as posted here. For me it looks like that backup battery gets weak in this device (if any) and firmware is gone! If a battery is causing this problem a lot more ZP100 users will have the same issue soon (after unplugging power for a while).

Mentioned trick to ping the device also did not helped (it is not longer recognized by my router).

If anybody has an idea to reanimate this device then please let me know.

Katte
Userlevel 2
Hi Zacharias,
jsut read in your port that you connected to the serial port of the zp100.
Can you share any information how you did find the serial port and how you conencted to it?

Working on something but wasn`t able to msg you since i have < 5 posts.

Thanks,
Rolf
Userlevel 2
Hi Zacharias,
jsut read in your port that you connected to the serial port of the zp100.
Can you share any information how you did find the serial port and how you conencted to it?

Working on something but wasn`t able to msg you since i have < 5 posts.

Thanks,
Rolf



Any help ?
Userlevel 2
I'm very interested in this fix... will test and let you know what I find out. Also, would someone please give me a link to the firmware, also on where to find the jtag.

EDIT: OK. I found where to get the firmware... but I still haven't found the serial port. Do you just use the same procedure as if flashing DD-WRT with ethernet port directly connected to computer?
Userlevel 2
Any more progress here? I bought an old ZP100 at a garage sale recently with the hope of adding it to my existing system. It blinks about 5-10 times at startup the the LED goes solid white but can't seem to connect to my existing system. I've tried a factory reset but not luck. It doesn't stay in linking mode very long (only 6-7 flashes of green white). Assume it's some kind of firmware issue. I don't have a lot of money in the unit so I'm not too worries about competely messing it us. Any thoughts? I'd love to play with it a bit to see if I can get it running.
Userlevel 2
Badge
There is a 4 pin UART connector on the logic board of the ZP100 (1:vcc 2:rx 3:tx 4:gnd). If you have some way to connect to it (I used a buspirate), you can see any info that the bootloader is printing out (and test the flash memory and RAM). My guess, given your description of the failure mode, is that the OS crashes sometime after boot. The serial console isn't gonna be real useful if that is the case, it stops printing stuff out after booting. There is a JTAG port on the logic board, but connecting to it is a major pain, and unless you have a lot of time (and money) to burn I wouldn't recommend messing with it.

Keep in mind that Sonos can replace the unit (for a cost) until you open it. Once it's opened they won't replace it. It might be more worth your while to check with them first, before taking the leap.

If you are going to open up the device you can go ahead and check for any obvious issues (blown caps, dry solder joints, etc.). Bgelb0 reported similar issues here.
Userlevel 2
@LogicIsHard would you mind sharing where to find the firmware?

@poshul Where can I find the UART header on the board? Is it the header near the front of the device?
Userlevel 2
Badge
Yeah, there are two headers close to each other. The UART is the 4 pin one. The frequency is 38400 (all of the other serial settings are their defaults, which I do not recall off the top of my head). For what it's worth the bootloader is super minimal. You can't load new firmware off of it (as far as I can tell), but it should give you information if the NAND flash has bad blocks, or if the RAM is bad. As for where the firmware is, if you have another zone player check out http://ZP'S_IP_ADDRESS:1400/status/jffs/upgrade.log for information on its last update
Userlevel 2
@poshul Will give it a shot, thank you!
Userlevel 2
Badge
I have a similar problem I brought a few ZP100's not working. I have repaired the electronics and they now boot and from the led status even appear to try and join my sonos group.
Now here is the strange they are not obtaining a IP address. I can access the ZP100 status page using the default ip address and it seems to have booted not a full boot. I have also used bus pirate and connected to the serial port and appears to be booting. if you press enter on the serial port it says its running BusyBox v1.00-pre3 (2007.03.30-22:08+0000) Built-in shell (ash).

I am wondering if anyone has advice on what to do next or managed to reload the firmware from this point?
Userlevel 2
Badge
@chris_: From my experiences, if you are getting a shell on the UART port, something weird is going on. On the normal release firmware the serial console shuts down after the bootloader transfers control to the OS. Can you tell me what version of the firmware the box is running? My guess is that you have a debug version of the firmware. Theoretically you should be able to grab a copy of the firmware from the URL you find in upgrade.log on a working sonos, and load it using /bin/upgrade with whatever the proper arguments are.
Userlevel 2
Badge
thanks for both replies. I have now configured a ip address in my routers range and setup a route to the internet I can now ping the internet sites successfully.
Yes the software version appears to be
3.2-29243-diag
upgrade log shows
http://169.254.2.2/Sonos/Downgrade/ZP100/3.2-29243-1-1.upd?cmaj=12&cmin=3&cbld=22140&subm=3&rev=2®=1&serial=000xxxxxxxxxx&sonosid=xxxxxxxxx&
so If i use the previous log but put in the ip address obtained by pinging the web site address.
I get this output:

upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.up d?cmaj=11&cmin=7&cbld=19141&subm=3&rev=2®=1&serial=000E58102A68C&sonosid=1093 34178&householdid=HHID_kVgj2AarGobnnsXM85aGrvPURo0

[8] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[7] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[6] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[5] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[4] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[3] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

[2] + Done upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

wget: server returned error 400: HTTP/1.0 400 Bad Request


Read failure 0

WGET exited with 1

Upgrade failed: (11) upgrade file download failed

pull_upgrade failed

#

[1] + Done(1) upgrade http://23.2.72.206/firmware/Gold/v3.1-Janis-GC2_Gold/12.3-22140-1-1.upd?cmaj=11

#

#

#

I think you are on the right track but not sure how to use the upgrade command
Userlevel 4
Badge +14
The update server responds with 400 error on invalid url, so it could mean that this version is not available (3.1 is a very old version), or that this server is no longer in use. It seems to point to akamai, and maybe they aren't used anymore. It might also require a hostname which requires the player to actually be able to make DNS lookups.

You need to get a hold of a url to a recent firmware, is my guess.
Userlevel 2
Badge
@jishi Unfortunately there is no TFTP boot option for the ZP100, the bootloader is based off of linuxsh's bootloader, if you hit Q from the bootloader it will try to load an image off of a hardcoded address in RAM. You can load images from JTAG but it is a royal pain.
@chris_ if you have a working sonos that's up to date I'd recommend checking for the arguments to upgrade from its log.
Userlevel 2
Badge
Hi All,
thanks for the help.
What I have found is putting the url in a pc web browser gives a error but also downloads the a .upd file. So I think I have the firmware.
I have set my pc up as a file sever and made the file available type in the upgrade command and it appears to work.... then stop saying I need to stop anacapad.
using 'ps' command there appears to be lots of anacapad process's and I cannot kill them.

any more ideas welcome?

see screen capture below
#

upgrade version 28.1-83040

compatible with Sonos Zone Player submodels 0-16 revisions 0-4294967294 (any region)

compatible with hardware feature set 1d

My hardware feature set is 1

Upgrade supports all my features

/-\|/-\|/-\|/-\|/-\|/-Upgrade file is good

Using new partition format mode

Destination section 0 generation 13

Operating in redundant partition mode (not changing partition table)

Executing upgrade script...Checking to see if (hh.)anacapad is running...Anacapa is running - please stop it and run upgrade again.

failed

Upgrade failed: (35) failure reading upgrade script file

pull_upgrade failed

#
Userlevel 2
Badge
Not sure off the top of my head. Can you kill anacapa using the /opt/anacapactl script?
Userlevel 4
Badge +14
anacapad is the main process running the Sonos system IIRC, and it probably has some watchdog functionality to keep it running.

A few versions back they had some memory leak issue that would OOM kill the anacapad-process, and then you experienced that the process restarted and everything was lost (grouping, queue etc) like if you had rebooted the device, but in the log it just said that it had restarted the anacapad process.

There would probably be some way to stop it and pause the watchdog functionality (ancapactl sounds like a possible candidate as mentioned), another idea is that you might need to kill all processes at once, or a specific process first.

On my output I have 2 high priority processes and 1 low priority process, the low priority process might be a good starting point to check out... 🙂
Userlevel 2
Badge
thanks for all the help its alive with updated firmware
the trick was found in 'grabupgrade' file
# Prevent anacapa from coming back from the dead.
touch /var/run/stopanacapa
#then
killall -9 anacapad
Userlevel 4
Badge +14
Great find! Out of curiosity, did the DHCP issue go away with the updated firmware?
Userlevel 2
Badge
yes they work perfect now
Badge
Hey Chris, Can you give me a little more detail on how you got the new bios loaded on yours? I have it downloaded now i think but i don't understand how to get it on my zp100.

thank you
Userlevel 2
Badge
tbearrows: in order to load a new firmware image this way, you need terminal access to the unit. This is normally very difficult to accomplish, however recently a batch of units showed up in the wild running some sort of manufacturing diagnostic firmware. These units don't get a DHCP address, but you can attach to them using a computer on which you set a static IP address in the subnet of the unit. These units have the serial console enabled on the internal UART port. Using a UART adapter (I recommend the bus-pirate) you can hook up to this port and get terminal access.

The telnet connection is also open on these units, but this requires a password to login.

Also, keep in mind that Sonos support will replace out of warranty units for a really reasonable price, but not after you break the warranty seal.

Hope that helps, let me know if you have any other questions.
Userlevel 2
Chris,
I have the same scenario as you. I can access the info pages at 169.254.1.1:1400. My ZP100 is on the 3.2 diag firmware. I believe I have your steps down but have a couple questions. I can get the firmware using a working Sonos upgrade log but the links in the upgrade log on the old ZP100 are broken. Is the firmware unique to each model?
When you set up your PC to serve the file what specifically did you do? Thanks. I'd love to get this old ZP100 going again.
Badge
Thanks,
I'm able to hit the status page on the default ip and
I tried connecting a serial cable directly to the pins but no luck. I'll try to pick up a bus pirate. Do you know if a direct connected serial cable should work?
Userlevel 2
Badge
No, it should not work connected directly to a serial port. Check out http://electronics.stackexchange.com/questions/110478/difference-between-uart-and-rs232 for an explanation.