Watch protocol Voice messaging broken after 5.8 ?

Track-trace6 months ago

I have noticed that Voice messaging is broken and have checked when that started.

In official release 5.8 released 31 may 2023 voicemessages send from a watch to the server for watch protocol is working.
tested today traccar 5.8 with https://github.com/traccar/traccar/releases/download/v5.8/traccar-other-5.8.zip

Then tested with the same watch on official 5.9 release sending a voice message. Error from Log.

2023-10-30 11:42:54  INFO: [T778c05be: watch < 188.206.68.141] 5b33472a373430343736343632342a313042352a544b2c2321414d520a7d049ec07c00ff01fcb9a32f508b262fb3f58360af527d049ec07c00ff01fcb9a32f508b262fb3f58360af527d049ec07c00ff01fcb9a32f508b262fb3f58360af527d04cadd9816804041bf8b723838e05686a3cac43b467d048a00020f81365393942454a97f174a8ac5fb65b87d04c63f281f00012dea035543a6c325fe43c0d642ca7d0492c3cc1e00058615c90bfb5ac584ce8976247bd07d04c8da461f019564cfee3d6507a87bb4b0118c9f087d04c6c0281ea0001990b62f608c31fcb48587ba640c7d04c7faea1e400ac329e398e90e486efe804483ff087d049ce6401c7001619a371023d6e717ce3dd748c6747d048dddbe1e0016acba1c53f87318e240af6999cc347d04c6dabe1f007d051e624e164f8bc16f3d5f14343d6a7d04ca04881e0100c2d80bf6dc3c79b328b1648b64b07d049ada301e80a1c070edb9cb14151b2bcde7c0ba3a7d04c6dba21e00152d3d15ccb34aa6bda3c9ea19dfd07d04c6a4141e4001652580965384bcf29aad56c5a4507d04cada7d050f0105497f27b8f889dca631f2cedb55f87d04c6a4a21e80016480aca9865cb41b763a089ec4987d04e018c61e28232171f97c7d03504be177556265ec7a7d04d687c61b602b260480e7cfa87d045e2d553ab274387d04f804c61e2400c099a81c7d05911aa74dad76b144fa7d04e28dc81f400affe22815789dbaddaf4904fed37d047d04e2c34c1f6000e4498f2bf9484a06d3aa4e3277d27d04ca3fce1e407d05d91ad0b8d53401e3e513168307447d04e29b441ee10069d16f5e706282d1ed69ccb953dc7d04e516441f802bae872623c49d4f739a1db45ce1a07d04ab95bf8ee88783cb0fa9baf539fb252e80e47d03227d04d000c1c67d0402e99f6c8e30b709e730cd85b939047d04970d47e0801e794d369ad1b5acb7acd231f053047d048b1193a54020d606d99dad6345faa993e074a8be7d049d4c95a4401bea45e2a346aba0ed3ab631b29e7c7d04c4b4ba3dc000760403399b184c7d0292ebc18204ec7d04b81e301ea0082b501b5afd8a91861afd13cfb8267d04b4a3de1f00445acfab06bb1a8f2ddbb7946816a87d049310be1e8015e7801d70a54f4809bd99d4d7a59c7d04b506c0168108dc1c454845a83fc2865424e2d4cc7d045f06941e00017d04a428c3f0296d434a752fd63b5a7d048b06c00f0000f3f39457f0912573aca1923f69007d046ea34e0f019fa5295ee955713cf26850c7e6f2b27d045f86c00d24823e1a7d04c1760c8ee18fe09eaf4afa7d0492986a1788187649a98729cb3826a2e360031c7e7d047d03c1821e014e7d0180be5609ff8e03f587eaed670c7d049a0bea1e002369a34b96eb47186fc4df41769ca27d04ce5ab8d328a12442f315c514a7a6d35ce280309a7d04ce2be7e0b7e22081644fd17394e729497d038711467d04365ac1fa48c0de8664eb6088e22bd6e7b73ff77e7d04865af5ec1d867b176783ff99dff8ea7d0180c2d9847d04545a05e0e606d6191b09c1f58ec66120e0b20b447d0487b0f5e393e7861605a47d0436e909ad3bf4028a647d04866b9be303478caf26c5a50956807bc8cd6495447d0459f0f3e02016df544749f6f7c96c387d0266c449a27d0458826be14fcf3e02902542d66713176385c2eac87d0458309de04fb6de0904e07b368a41f1245944e05a7d04583895e175e79e181966eb12254d4cde00abeaaa7d042e309de0ce479342ddfd3925a5952eb8006be1b87d0450389de11e879b4a53116bd5ce8f02b4704865367d0459e77be10a4791eee6ffeb44cbab7070a30de1127d0446c9fde096a786078f99870b9539b890ccb883407d042e
2023-10-30 11:42:54  INFO: [T778c05be: watch < 188.206.68.141] c91de005b6d6008fe1bfa403697ce44407ef287d042f9b1d6885a781f9ebfeaf9145f398606ea5c66c7d042f7e1c97c1e78e030b36839c0e080d885139501a7d04174fda1f81e79e0e18f4002fc7c272629909bed27d04164fea1ac1e79e059acf9f4c8a
2023-10-30 11:42:55  INFO: [T778c05be: watch < 188.206.68.141] 244b4568397d019e7d041799cc1e1e67e61215b1e4cf9e7d04e8f9bc359f507d04176bea1e58e7eb5153b6194eb53ee7960edeb94a7d041d990e1f7687fe2b96a100314bf6a848467329d47d040ee79c0d28490cae0687b6e4fb1abe30b0eeeace7d041d66c01a40586374544725986c7d05699c1cf067b27d045c7d05760f91f038d6a12491083e55633ed0f383887d04d6021fedddc1c665349e8af71fb4d19ffe011ed67d0480870fe1e4404922ba48ab24c606c0e690feb47a7d043776d3f0d88a08a95fa843a702632f8591069b907d04930431e1b112f0ece67ab557de312b9506904f1a7d045e0cb9e02587e6998e951a72a24d2ed0ad98d6587d049202afe02fc7fcbe260c7d0157778ef0725a447d05367d045ffa79f06ec7e60cd23477eb36757a2bc85c60fa7d0457c273e110e7e60f8c42f993ba3e6c6c54c830087d045af487e18d27e4a9a6bbe5ae0958c2bb901095707d045af441e15ac7e1fbe1fa0c4f4225b135c55c31b67d045c9305e15e07e4bbb7cbc42f66347d05c18cc2c8267d04529b25e09e07e607992217ace7279c6876abcfcc7d0458e625e04d27e61988d593b25aab971b0ee451b87d044e4d41e0d867e60389a4f8ed4138998672a3014a7d047d03d2a9e137a7f344d2bc08817a24ef7816243b8a7d045c4d89e041efd352dcf135e941408977e87b06967d045e1205e032e7fb564ed748f4ecfc8d3871c51e087d045e1205e03e47fe0807879a7d017fa2f4a273dc8afc7d045c4da9e04fc7fb42599734cc781143b30fd78f607d04921209e08ce7fe1287410daa3b8682446c49cffe7d0493d2fb69dc67fe0f8ae5a877e68fda249e4da3d07d0491d278f10d78061c0e0702ecc28741451e9f2eb27d045e1229e010f8035ac314ed74b3aab8f92bdbc8867d048581a96890d804bfb03268de0b77587f4c637d01f47d042e9b030ee152aa4fab959a2ee406928bdc0dbe667d041898461f80790266c9b3ecf226c96da353a554287d041a470e1bc1f86c842ebeff4f0e70e6299c8f11847d04d381b986fff92e0f3dbdddfbc0fe6cb591fd636e7d0451ed097d01fffb7d0250bebf09e5a363c26c579f3b0c7d045cf4a9e0607079fca1d4d922b2617f327c38ddf07d04824573e96d67e3409ec808123e23b1aeac0082567d045cdbc9f06852ab15dfdd7382926438f003919f407d04480249e120380e0c5e27d26a7b45b5ba79f30b2e7d0483c2c9e1c3dabb635f13874571092735959ba89c7d04888773e16158db59d6c0eafcc48e922d4b71a4647d0458dbc9e0a4387496a6255493f5cf4d30ccd99d627d042e4d53e081981c817ebeedae56c0d336a0266cde7d047d031bbfe118f819fc785f3267ee03a7219f4da8187d042fd273e033d8061999c6fae60c9a24752d1e97247d045940efe00b58037d02df9ce7
2023-10-30 11:42:55  INFO: [T778c05be: watch < 188.206.68.141] 9251ecd0e6066efd1a7d0451d2a1c2253809ff659699a2593a577000ea0f207d044ff0ef69cd781e0a0e40593121c727e26486ce9c7d04510348b5f49819e87edd24bff40ab48f23cf035c7d04465a95c33c381ca27d048b8e56f339139b67739cd47d04501289a440dd49f47d013fff15f8c18e8d597164ae7d047d03d2a1e159781ca034f1bd2f24546abec35960167d04594035e0b4b81e000bba01b0acb88bc61c614eb47d043a4da8d32938361f0173de4d8db299f2fdaf418c7d042f73a3e00f18735670a5259a928ce71b0d6fe9227d047d054d35a475b879ec6bbcca5cbb8cb58d735a08147d045016a2f152d876189069a9e94beb928218fb961c7d042e4dbfe15a78635358f4acb406d1716ed2a6dfc07d042edb05e12f1849edecff0fa6aff3b50a37ca8f367d048cdb09e86990d3f1e6961daebbcc2d857883fed47d048b
2023-10-30 11:42:55  INFO: [T778c05be: watch < 188.206.68.141] 11efe96889326717eda3f942491abd45017d023a7d04864589e35917621dc948b9c06956bd0b9587d7ec7d0431ef09e58041930c000fd1b3c09ddd92665c3e687d046a0c09e1041064aec77abbccc2d091a7b2f6b9807d045a3f09f041fd9e4087020e7a8e58d535b5082de47d04502141e31614ecf4b04979f07f86f31bc9ec7b067d048d8189e0000bafb8c5c78249cffea6874327164e7d047d05f4ef7d04c01a4c6a7d0493b8423197dc9445941e967d0449b0a14af247ea417d01311defceb8b458c5fc375a7d044693aa97e97d014636de54e54cd393427d042b34c51a7d0417b0a01fe1bd64bd34287ef299eb672921c318587d041c12ce1fe5b864be15b3ea55d4c75900dbc4b89e7d041bb0a01ff27861fde5eba3e8850392df81bad9b07d041d73d74a05f87d024b38b462c267e2b525e99428c87d041fd2589762d862ebd7b9dbb2ed32cca498a530167d04367d044a7d0281d8348f25d4a7b498f2279a81b98bd87d041ee6b70ee61861e3b16bff0a4e28738dcb47291e7d04367d0208b545f87360c02409505429b5982e40f38a7d04546fb8b54db8616567dc1c06b6eb046d89fc07487d043680727d0246b871fad4ef0107364bb8f9ebd5d8767d04555300977e987e141cc516a063e71c00be864a5e7d0454d52297b8787346f506670d25e9b2f9302885b67d046e80c8d32db871e1a3f9af56e60236d0f17b03c07d0456c1230efc38635563f3a642040149cd579689627d046d1ec9a44d787354f3c0be8144547d0144745ab05c7d04840cc8f081b866358a5f636b18372d71b1887d04827d043081234ae0ba41d9cc7b02eb3a722bbba5c8de707d045a1c73698591343382b99b042f46bcbd079669747d04680d54f18f43ee0288045645ca5f0c4dcb4af3487d046c9f55e00884e3fc60c36b8cc12d637e26b784a07d04502459e146da260d4ece4972fe2147699f6c310a7d0464c555e0a43c74b11988995abc70d5973ccf5cc87d04529f55a55933b9eb79e517716390af68300816b27d04841473c260757632cca0c127cf1eaab75cccc87d047d045aa573a42252af19dc1f0fd969e56c38a111144e7d0468a52fc222b811ea3962eb7d0182328263b1b5afca7d046c01c968bdd80e0b1360b1ff0186a2950f4fc0827d047a810096e8f819f7e54afdeea5ce06d988d188307d046aa5c9e011581b1582a4e144a015d90c36c5fb927d046ed500f10ad834bbe57bd079e8d8cc912fbd172e7d0456d5014aabb864baecbe64106abe26de011e572e7d046ffa01a474f87e3c1d4864718c9ebbb1f76fae5a7d0478d501a441187e46b52878e8a05cceb43f7674547d046f5300b540fd77758dd33f28140ecd38b47d03b1847d046a80a7c2a1b87c0689e140f2da4d4d7d01d0ae3eca7d046dc2c96986192b047bc68b94dc58c6b863cbe9347d046d84c9a4657d03d5e5e24de0d84d5f398471e8ee427d047d02c272b5d11ad1a62da8f7af1a54d3019c031d387d046c2172b54420319524afce7d045e92358fd2445a287d04931e73e02121f9e0656ef538357971815ab128147d043ac1b1e0206ab2713043038ce2c986922163dbf47d043ee7b186e910567d04297d028e6ad1b25836396fbb107d0454e0b979b89f858a573fd9f0a952a915a1b2e09c7d043e6878f1c54b81f0eafd7d05f2b1bbd1affa1381e07d044595b1c2622f7d03d2b82f47ac628dad4d8ef7a7147d0467f657e13192ce7ce64669946f5026669a26ea827d04384b53a4e08e5404e837403b80c2ad6805dbf21a7d043b6b5786209034936fae2fad25b696c19f086f1e7d045aad221fe001a5bacc3fe09ac8829391d57c55fc7d046ed5641fe11080f8bb6c76b0e686c3411be3b8647d044ca5a43d
2023-10-30 11:42:56  INFO: [T778c05be: watch < 188.206.68.141] 805493e4d73aa1e4b28a64aa5afbde267d044cc1c017800ba8ef124d7d04f8bc60718f1bd9b4da7d047d0384021a4011e95607f5f9730546798095a7f8447d04471eea14a057447ed8b52292c965dc78a5e4b4907d04851e4213c000cf8d414a64907d02f7b464689cfd1e7d049f1e8e0960a006524102dd7d031af175d70e9105a07d049117889699a83187d957856e71738fc9186754b67c5d00000000000000000000000000000000
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] error - readerIndex(1) + length(2) exceeds writerIndex(2): UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf(ridx: 1, widx: 2, cap: 256) - IndexOutOfBoundsException (... < WatchProtocolDecoder:205 < ExtendedObjectDecoder:75 < ... < WrapperContext:102 < ...)
2023-10-30 11:42:56  INFO: [T778c05be] disconnected
2023-10-30 11:43:19  INFO: [T9f21c603] connected

Tested on both the official 5.9 release and compiled latest 5.9 with the same resulting error.

Anton Tananaev6 months ago

Could be related to this:

https://github.com/traccar/traccar/commit/6631d7c4b3522e81af563e3ac82131a6e5c50b89

Seems like there's no sure way to handle frame decoding for this protocol.

Track-trace6 months ago

Yes, have build and tested 5.9 without the above commit. And that indeed stops the issue. Then all voice messages from watches are coming in again.

So this actually means that on all devices (mainly all Watches) sending voicemessage from the watch doesnt work anymore after this comit .

The RF-V48 actually is not a Watch but a bracelet (without a display). Also that RF-V48 is from a company ReachFar which have their own tracking server so it seems they also use a slightly different (their own) variation on this protocol which breaks the Watch protocol.

Anton Tananaev6 months ago

I'm not sure how to fix it properly. The protocol is just really bad.

Anton Tananaev6 months ago

Wait. Where are there a bunch of zeroes at the end of your HEX message? That doesn't look right. Each message should begin with [ and end with ].

Track-trace6 months ago

Yes i see, ill check it with the same / other devices in the morning.

Track-trace6 months ago

I checked and indeed with each voice message there are zero's at the end of the Hex. So i thought meady this watch is faulty and lets try another watch from the same model watch that has the error. And that second watch actually shows the same error in log. This is actually strange since this model i have been using at least 4 years without such errors.

Then I did test with three other model watches and there the error for voice messages does not occur in the log.

I will take some more time to investigate for this specific model and report back (Let me check what wireshark sees what the device sends to the server).

Anton Tananaev6 months ago

Could be some firmware bug.