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
I will try as soon as I get back from a trip
Userlevel 2
Badge
So, the fact that you cannot access UART is not super suprising, since the production firmware doesn't have serial access. If you are connected to the machine while booting, does the bootloader info show up?
Userlevel 2
Yes. Same unit. The thing Is that I can no longer access either uart or regular operation of the unit. It's very unresponsive.
Userlevel 2
Badge
Hi @andresmorago, is this the same unit that you revived recently? If so, have you tried running it with a version of the firmware that is not the alpha?
Userlevel 2
Hello.
More details about my system. Unit has been very weird lately. It associates sometimes to my system and it keeps freezing after a couple songs. It's still pingable and it has a valid ip address but sonos controller just can't find it. Also, http is not accessible.
I tried to connect again to the shell via uart but cannot get any command prompt.
I also tried to reset it. I press mute and volume up, flashes white and then flashing orange appears but won't turn to green. It will stay blinking white/orange.
sometimes after rebooting, green led will flash but wont associate agan to sonos system.
I'm running out of ideas here. 😞
Userlevel 2
Hello all.

I want to report excelent results reviving my unit. Here is my procedure.

Since i dont have a bus pirate i had to use the uart that comes in my raspberry pi. connections are pretty much the same.

i used a program called screen in order to connect to the uart:

code:
screen /dev/ttyAMA0 38400


i created the http server with abyss web server on windows and hardwired the unit with my pc. pc had a ip address of 169.254.1.2 and firewall off just in case.

emulated the download route like this:
code:
http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd


make sure zp100 can ping the computer.

killed anacapad. had to do it several times until it showed no more processes.

code:
touch /var/run/stopanacapa
killall -9 anacapad


ran some magic
code:
cd /bin
upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27&cmin=2&cbld=80271&subm=3&rev=2®=1&serial=000E5XXXXXXX&sonosid=112XXXXXX&householdid=XXXXXXXXXXXXXXXXXX


first time, it got stuck somewhere on the way and upgrade didnt go through. i power cycled and did same procedure. here is the output.

code:
[7] + Done                       upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
[6] + Done upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
[5] + Done upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
[4] + Done upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
[3] + Done upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
[2] + Done upgrade http://169.254.1.2/firmware/Gold/28.1-83251-v5.2-pcyakr-RC4/28.1-83040-1-1.upd?cmaj=27
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 5
Operating in redundant partition mode (not changing partition table)
Executing upgrade script...Checking to see if (hh.)anacapad is running...Stopping ancillary processes...
Killing udhcpc
kill: 100: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job]... or
kill -l [exitstatus]
Killing smbscand
Killing inetd
Killing netstartd
kill: 100: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job]... or
kill -l [exitstatus]
ok
Merged partition table flags 00000001:
0 1:0:16
1 16:16:48
2 17:64:256
3 64:320:1389
4 16:1709:48
5 17:1757:256
6 0:0:0
Writing kernel to partition 1
Writing / to partition 2
sections M16 len check 0
Executing upgrade script to do any final work...Doing post-install steps...
cp: /tmp/upgrade.log: No such file or directory
ok
(946685120)Restarting system.

Rincon boot loader version 1.0-27270(ZP) (32M SDRAM). Press 'h' for help.
SDRAM test...
Memory test iteration 0
SDRAM test complete
Attempting to autoboot from NAND device
NAND ID is 20:75
32M NAND flash (ST NAND256W3A) detected
NAND flash block 1710 is bad
Section 0 is provisionally good, kernel on partition 1, generation 5
Section 1 is provisionally good, kernel on partition 4, generation 4
Attempting to boot kernel from partition 1


after this, unit rebooted and got dhcp address from my router after reconnecting, it updated to my lastest running version which is 29387150MainlineAlpha.

just an advice that worked for me. run a hard reset after this on your zp100.

i will do more testing since i note that the unit behaves weird on the alpha version that im running.

thanks to all the people who has posted here. all these have help me a lot!
Userlevel 2
Hello

I got to connect my raspberry pi UART (i dont have a bus pirate) to the ZP100. Im now connected and with ZP100 shell operational.

Can you please elaborate a little bit more the procedure of killing anacapad? i have tried the following commands but im still seeing several anacapad processes when i run "top"

code:
touch /var/run/stopanacapa
killall -9 anacapad


code:

top
Mem: 10224K used, 20940K free, 0K shrd, 2180K buff, 3692K cached
Load average: 1.00, 0.81, 0.40 (State: S=sleeping R=running, W=waiting)

PID USER STATUS RSS PPID %CPU %MEM COMMAND
125 root R 772 61 0.3 2.4 top
84 root D 2112 1 0.0 6.7 anacapad
61 root S 628 1 0.0 2.0 sh
55 root S 624 1 0.0 2.0 ping
53 root S 624 1 0.0 2.0 inetd
1 root S 572 0 0.0 1.8 init
58 root S 528 1 0.0 1.6 smbscand
8 root SW 0 1 0.0 0.0 mtdblock_autoba
22 root SWN 0 1 0.0 0.0 jffs2_gcd_mtd4
2 root SW 0 1 0.0 0.0 keventd
3 root SWN 0 1 0.0 0.0 ksoftirqd_CPU0
4 root SW 0 1 0.0 0.0 kswapd
5 root SW 0 1 0.0 0.0 bdflush
6 root SW 0 1 0.0 0.0 kupdated
7 root SW 0 1 0.0 0.0 mtdblockd
36 root SW 0 1 0.0 0.0 zpevtd
34 root SW 0 1 0.0 0.0 cifsoplockd
95 root Z 0 84 0.0 0.0 anacapad


Also, i have already downloaded the current firmware to my pc and im getting the HTTP server ready. i have a question regarding what route should i put the file on so the ZP100 can find it? what ip address should i assign to my pc and what link shoul i emulate?

Would really appreciate your help! i believe im getting closer to revive that thing!
Userlevel 2
Badge
@soyuppy Congrats!

@mrmom, the bootloader is stored in ROM on the ZP100 (one of http://www.atmel.com/devices/AT27LV512A.aspx specifically) If you aren't getting to the bootloader after connecting to the UART there is probably some other underlying problem.
If you are interested in getting a copy of the bootloader for more academic reasons you can dump it using JTAG.
Userlevel 1
Badge
Sparkfun, also bought the ic hooks with pig tails to grab on to p1000 ports holes on the PCB.
Userlevel 2
I also have two zp100's in same state. Where did you order BusPirate and cables?

Thanks.
Userlevel 1
Badge
I just ordered a BusPirate and cables. I have 2 ZP100 waiting for salvation. I hate to ask this in public but where can I get Boot loader 0.16-11080? I'd PM someone but I am so new to this forum, and need 5 posts to PM. :rolleyes:

Thanks in advance.
Userlevel 2
@soyuppy

Yes, you need to type (1) to enter bridge mode (my post was incorrect, edited):
It will show you this:

UART>(1)
UART bridge
Reset to exit
Are you sure? y

On the Bus Pirate 2 red lights are illuminated, the amber led turns on when I turn on the Sonos unit.
Userlevel 2
Badge
@soyuppy, have you entered UART bridge mode? You need to type the command "(2)" and then hit "y" to enter bridge mode.
Userlevel 2
Following @sdekock instruction.
Stuck at the UART> prompt in putty
amber led show up on the bus pirate card. If I wiggle the pin, the led flash back and forth.
But still nothing showing on putty.
Userlevel 2
Badge
@soyuppy, not especially snugly, but the pins are close enough to the right size that I can hang the buspirate off the side of the ZP and get a good connection, I am pretty sure that you could solder the connector in if you wanted a better guarantee.

@sdekock I have a unit that has a similar issue (fails RAM test from cold boot, but succeeds later), my non electrical engineer guess is that there is a bad solder joint on one of the RAM chips that works once the board warms up.
Userlevel 2
@Andres,
Firstly might be worth checking the upgrade log files, this should tell you what version of firmware is loaded. Others on this forum have commented its only diag software that will allow you to access via the uart port to enable you to upgrade the software.


@chris_
This is what the log shows:

code:
Upgrade url is-F --sonosid 109XXXXXX --householdid HHID_xxxxxxxxxxxxxxx http://169.254.2.2/Sonos/Downgrade/ZP100/^3.2-29243 URL is 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=000EXXXXXXXXX&sonosid=109XXXXXX&
Userlevel 2
@Poshul,
thanks for the word of encourage. I tried most of things that you suggest. Yes, when reconnecting the power, the ether port LED flash. And when connection cat-5 and link it up with PC, LED on ether port lit up. But since I can't see anything from UART console or ping/http to default IP address, it was just frustration that lead me to say that I brick it.

I'm not giving up on it yet. The key now is to get it up with UART console. Will try it again when I get bus pirate card.

Thanks for all the info. The cable that you show from Amazon, does it fit into the port snuggly?
Userlevel 2
Success!

I connected my ZP100 (with white blinking led) to a bus pirate (v2, SparkFun with cable) as follows:

On the ZP100 there is a J1000 port with pins 1 to 4 numbered. Connect:
Pin 1: white
Pin 2: brown
Pin 3: orange
Pin 4: black

Then use PuTTY (windows) and connect to Serial COM3 with speed 115200.
Use the following options
m (switch mode)
3 (UART)
7 (38400 speed)
1 (8, NONE bits/parity)
1 (stop bits)
1 (idle 1 receive polarity)
2 (3.3V)
(1) (UART bridge)

I then got:
Rincon boot loader version 0.16-11080(ZP) (32M SDRAM). Press 'h' for help.
SDRAM test...
Memory test iteration 0
Memory test fail @ 8C4F25D4 - D90A7081 != D91A7081
SDRAM test complete
SDRAM test failed, autoboot aborted
>

After pressing 'h':
> h
Rincon boot loader version 0.16-11080(ZP) (32M SDRAM). Press 'h' for help.
h - help
m - SDRAM test
i - print NAND device ID
n - NAND device scan
x - NAND device destructive test
y - NAND device dump first page
p - Program NAND device
b - Boot the Linux kernel from NAND device
d - Boot diagnostics from NAND device

After pressing 'b':
> NAND ID is EC:75
32M NAND flash (Samsung K9F5608U0C) detected
Section 0 is provisionally good, kernel on partition 1, generation 7
Section 1 is provisionally good, kernel on partition 4, generation 6
Attempting to boot kernel from partition 1

And hurray! The zoneplayer booted and showed up the Sonos controller! I then could update the firmware.

I'm now going to attempt to replace the memory chip.
Userlevel 2
Badge
@soyuppy, I'd be suprised if you managed to brick it from the UART connector. I know the one I learned on took waay more abuse (including hooking the UART up to RS232 voltage) without dying. Have you tried unplugging the UART and rebooting the device? It's possible that your UART connection is shorting something. When you reboot the device, take a look at the lights on the ethernet ports. If they flash when you plug in the power the board is (probably) not fried.

I'm just using this sort of cable http://amzn.com/B00A6SOGC4 .

My exprience has been on linux: use minicom to attach to your ttyUSB device and setting up the speed and flow control settings there (check out http://www.wiki.xilinx.com/Setup+a+Serial+Console for a rough explanation).
Userlevel 2
Badge
@Andres,
Firstly might be worth checking the upgrade log files, this should tell you what version of firmware is loaded. Others on this forum have commented its only diag software that will allow you to access via the uart port to enable you to upgrade the software.
Userlevel 2
I used to be able to get to the default http://169.254.1.1:1400/status. But that appears to be broken as well. Can't ping it either.
Probably as result of twiddling with UART hearder/ports that may short something else. Now the ZP100 is a brick.
Badge
had to get my post up to 5

Thanks
Userlevel 2
At the OS level, the UART device is detect and enable. But nothing show up when connecting through either cu on linux or Hyper Terminal on Window.

Its hard to get the pin to snuggly fit onto the port. Seem like the port a bit bigger than the standard IC chip pin, like this one: https://c1.staticflickr.com/3/2774/4149942841_209b609977.jpg

What kind of connector are you using?
Userlevel 2
Badge
@tbearrows: PMed
Badge
I picked up a bus pirate but this is my first experience with it and I'm having trouble getting anything out of it. I'm not sure if the connections and settings are correct. Can someone confirm the steps and connections from the bus pirate?

Thank you for all the help so far...