Mercedes Me

Can you post an update cycle of MBWebsocket to see which errors occurred?

I will sure try to do that. Do I do as your previous instruction, turn on TRACE and shortly disable the acount and then provide the log? Or are there some other specific thing I need to do?

Same as described before. Just need the output you mentioned.


07:57:33.501 [WARN ] [ercedesme.internal.server.MBWebsocket] - onError Failed to upgrade to websocket: Unexpected HTTP Response Status Code: 412 Precondition Failed
08:13:33.461 [WARN ] [ercedesme.internal.server.MBWebsocket] - onError Failed to upgrade to websocket: Unexpected HTTP Response Status Code: 412 Precondition Failed
08:29:33.546 [WARN ] [ercedesme.internal.server.MBWebsocket] - onError Failed to upgrade to websocket: Unexpected HTTP Response Status Code: 412 Precondition Failed
08:36:14.156 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from OFFLINE (BRIDGE_OFFLINE) to UNINITIALIZED
08:36:14.184 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)
08:36:14.187 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from OFFLINE (COMMUNICATION_ERROR): Websocket Exception: Reason: {0} to UNINITIALIZED
08:36:14.202 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED to UNINITIALIZED (DISABLED)
08:36:14.205 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from UNINITIALIZED (HANDLER_MISSING_ERROR) to UNINITIALIZED (BRIDGE_UNINITIALIZED)
08:36:24.243 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED (DISABLED) to INITIALIZING
08:36:24.250 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from INITIALIZING to UNKNOWN
08:36:24.260 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
08:36:24.263 [TRACE] [ercedesme.internal.server.MBWebsocket] - Websocket start wss://websocket.emea-prod.mobilesdk.mercedes-benz.com/v2/ws
08:36:24.269 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from INITIALIZING to UNKNOWN
08:36:24.351 [WARN ] [ercedesme.internal.server.MBWebsocket] - onError Failed to upgrade to websocket: Unexpected HTTP Response Status Code: 412 Precondition Failed
08:36:24.353 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNKNOWN to OFFLINE (COMMUNICATION_ERROR): Websocket Exception: Reason: {0}
08:36:24.354 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:bev:74d6a0ee1d:W1N9N0CB2SJ134505' changed from UNKNOWN to OFFLINE (BRIDGE_OFFLINE)
08:37:24.288 [TRACE] [ercedesme.internal.server.MBWebsocket] - Websocket stop

Thanks, from this I’m pretty sure you still run MercedesMe binding from official release repo.

Please

  1. Disable Account again
  2. Uninstall MercedesMe binding (don’t delete things, items or anything else)
  3. Install the binding from top post or in UI Marketplace
  4. Enable Account and then let’s check traces again

17:04:51.604 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED (DISABLED) to UNINITIALIZED (HANDLER_CONFIGURATION_PENDING): {refreshToken=Parametern krÀvs.}
17:06:36.202 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED (HANDLER_CONFIGURATION_PENDING): {refreshToken=Parametern krÀvs.} to UNINITIALIZED
17:06:36.209 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED to UNINITIALIZED (DISABLED)
17:08:03.158 [INFO ] [hab.event.ThingStatusInfoChangedEvent] - Thing 'mercedesme:account:74d6a0ee1d' changed from UNINITIALIZED (DISABLED) to UNINITIALIZED (HANDLER_CONFIGURATION_PENDING): {refreshToken=Parametern krÀvs.}

”Parametern krĂ€vs” is Swedish for ”the parameter is required”

Type in abc as mentioned here.

If refreshToken is not longer valid a new one is needed.

abc did the trick, It is now operational again.
Thank you very much for the support :slight_smile:

1 Like

I am seeing see a lot of LOGGER:INFO IOException messages as follows


1. decoding message While parsing a protocol message

2025-03-28 15:55:44.938 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message While parsing a protocol message, the input ended unexpectedly in the middle of a field.  This could mean either that the input has been truncated or that an embedded message misreported its own length.

2. Protocol message had invalid UTF-8

2025-03-28 16:27:44.983 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.

3. Protocol message tag had invalid wire type

2025-03-28 19:39:45.410 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message tag had invalid wire type.

Are there any changes done which leads to this behavior e.g. update OH or binding version? Or maybe a new attached vehicle?
And how is it about logging frequency? Is it happening each update cycle several times or here and there?

I changed from OH 4.3.2 with the Market-Place version to OH v4.3.4 with the OH Distribution version.

Nope.

It looks rather here and there 
 below are the last entries from my log.

2025-04-04 16:03:46.037 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 16:19:46.763 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 16:19:50.765 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:23:46.113 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:23:50.112 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:39:46.141 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message While parsing a protocol message, the input ended unexpectedly in the middle of a field.  This could mean either that the input has been truncated or that an embedded message misreported its own length.
2025-04-04 17:39:50.142 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:39:54.943 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:40:00.704 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-04 17:40:07.616 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.

I see these messages also now. Some users like @ulrgaer reported these exceptions all the time and their things don’t went online. That’s why PR 18458 was introduced. But as long as you get VEPUPDATES you receive data for your vehicle.

One possibility is that Mercedes introduced new Messages which cannot be decoded yet. I’ll cross check with HA colleagues if they have the same situation.

2025-04-15 21:24:47.887 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket - Message VEPUPDATES
2025-04-15 21:24:38.858 [TRACE] [rcedesme.internal.server.MBWebsocket] - Websocket start wss://websocket.emea-prod.mobilesdk.mercedes-benz.com/v2/ws WebSocketClient@35dc33ee[httpClient=HttpClient@1b77c46{STARTED},openSessions.size=0]
2025-04-15 21:24:38.860 [TRACE] [rcedesme.internal.server.MBWebsocket] - Websocket max binary size 65536
2025-04-15 21:24:38.982 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:38.983 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket - Message APPTWIN_PENDING_COMMAND_REQUEST
2025-04-15 21:24:38.984 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:38.985 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket - Message DEBUGMESSAGE
2025-04-15 21:24:38.986 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:38.986 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket - Message DEBUGMESSAGE
2025-04-15 21:24:39.078 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:39.079 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-15 21:24:43.079 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:43.080 [INFO ] [rcedesme.internal.server.MBWebsocket] - IOException decoding message Protocol message had invalid UTF-8.
2025-04-15 21:24:47.882 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket onByteStream
2025-04-15 21:24:47.887 [TRACE] [rcedesme.internal.server.MBWebsocket] - WebSocket - Message VEPUPDATES

Do you handle the “new” service_status_updates messages?

This error occurs transforming the received byte stream into a PushMessage. So the error occurs before message type eval.

I checked the MBSDK repo before but no changes.

I do not see any unknown messages
 can you save the plain message to a file and send it to me, than I can take a look