Unable to set/remove/change alarms

  • 3 November 2020
  • 11 replies
  • 539 views

I cannot add, change or delete any of my alarms. 

Can anyone help? I'm on S1


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.

11 replies

Userlevel 7
Badge +23

Why not?

I have the same problem - getting: “Unable to save alarm. Please try again later”. I have tried rebooting everything, there  is network (streaming works etc):

Userlevel 7
Badge +23

On which platform? I just tried S1 on PC and on my app, no issues.

Tried on both my laptop, android and phone - its an S1 setup.

Did a bit of sniffing with wireshark:

The PC apps send this:

POST /AlarmClock/Control HTTP/1.1
CONNECTION: close
ACCEPT-ENCODING: gzip
HOST: 192.168.1.42:1400
USER-AGENT: Linux UPnP/1.0 Sonos/57.3-81090 (WDCR:Microsoft Windows NT 10.0.18363)
X-Sonos-Api-Key: xxx
X-Sonos-Corr-Id: xxxx
CONTENT-LENGTH: 568
CONTENT-TYPE: text/xml; charset="utf-8"
X-SONOS-TARGET-UDN: uuid:RINCON_000xxxx
SOAPACTION: "urn:schemas-upnp-org:service:AlarmClock:1#CreateAlarm"

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:CreateAlarm xmlns:u="urn:schemas-upnp-org:service:AlarmClock:1"><StartLocalTime>07:00:00</StartLocalTime><Duration>02:00:00</Duration><Recurrence>DAILY</Recurrence><Enabled>1</Enabled><RoomUUID>RINCON_000xxxx</RoomUUID><ProgramURI>x-rincon-buzzer:0</ProgramURI><ProgramMetaData></ProgramMetaData><PlayMode>SHUFFLE</PlayMode><Volume>25</Volume><IncludeLinkedZones>0</IncludeLinkedZones></u:CreateAlarm></s:Body></s:Envelope>

And the response it gets:

HTTP/1.1 500 Internal Server Error
CONTENT-LENGTH: 347
CONTENT-TYPE: text/xml; charset="utf-8"
EXT:
Server: Linux UPnP/1.0 Sonos/57.3-81090 (ZPS3)
Connection: close

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><s:Fault><faultcode>s:Client</faultcode><faultstring>UPnPError</faultstring><detail><UPnPError xmlns="urn:schemas-upnp-org:control-1-0"><errorCode>800</errorCode></UPnPError></detail></s:Fault></s:Body></s:Envelope>

 

Userlevel 7
Badge +23

Interesting. What device is “ZPS3”? (looks like it is your AssociateZP). Have you tried rebooting that device? That CreateAlarm call looks totally fine, but the player is clearly unhappy with the request. Not sure what error 800 is.

Can you try my app (see profile) to add an alarm? It might give us more of a clue if that fails as well.

Did a bit more digging using curl - trying to get a list of alarms (i know there used to be 2 alarms)

I get this back when requesting a list of alarms:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:ListAlarmsResponse xmlns:u="urn:schemas-upnp-org:service:AlarmClock:1"><CurrentAlarmList>&lt;Alarms&gt;&lt;/Alarms&gt;</CurrentAlarmList><CurrentAlarmListVersion>RINCON_000E582836B201400:0</CurrentAlarmListVersion></u:ListAlarmsResponse></s:Body></s:Envelope>

It seems likes something is broken inside - because “&lt;Alarms&gt;&lt;/Alarms&gt;” should be <Alarms></Alarms> and contain each alarm.

 

@Malcolm_7 if you have the posibility try running  this command - replacing YOURIP with a Sonos speakers ip

echo '<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">\
<s:Body>\
<u:ListAlarms xmlns:u="urn:schemas-upnp-org:service:AlarmClock:1">\
<InstanceID>0</InstanceID>\
</u:ListAlarms>\
</s:Body>\
</s:Envelope>' | curl -v -d @- \
-H 'SOAPAction: "urn:schemas-upnp-org:service:AlarmClock:1#ListAlarms"' \
-H 'content-type: text/xml; charset="utf-8"' \
http://YOURIP:1400/AlarmClock/Control

 

I found the source of my problem - I have multiple SSID's and when my system was rebooted it must have picked up a different WiFi SSID from where it was previously logged in. I changed back to the previous WiFi and it now works. What was weird though, was that although I couldn't change, add or delete an alarm, I could still access Sonos!

Interesting. What device is “ZPS3”? (looks like it is your AssociateZP). Have you tried rebooting that device? That CreateAlarm call looks totally fine, but the player is clearly unhappy with the request. Not sure what error 800 is.

Can you try my app (see profile) to add an alarm? It might give us more of a clue if that fails as well.

I don’t have a windows account - i dont want to share more than minimum info with MS :)

 

the ZPS3 is a device - but it doesn’t matter what device i try - as I posted it seems like the alarms listed is corrupted. I will try and remove all devices and link them again :)

Userlevel 7
Badge +23

No worries. By the way the &lt;Alarms thing is correct - this is XML-over-SOAP so it needs escaping in the response.

If on Windows use Intel’s Device Spy app: by far the easiest and best way to experiment with UPnP calls.

Userlevel 7
Badge +23

If rebooting the devices does not help, it does appear that the alarm data on the system is corrupted (enumerates as empyty, rejects all attempts to edit). No idea how to fix that, sorry.

Reseting all devices (holding mute/play while plugin in power) and then adding them again - now it works. But jesus a work to set it all up.