windytan / redsea

Command-line FM-RDS decoder with JSON output.
MIT License
390 stars 36 forks source link

4A: wrong clock date/time calculation #83

Closed Otuxam3 closed 2 years ago

Otuxam3 commented 2 years ago

After some time using redsea, I noticed date/time has been wrongly converted. I assume the 17 bits used for day code are turned separately into JSON from the hours/offset ones, giving jumps back to start/end of day.

Following file illustrates the issue, it is playable without any edit in RDS spy, what follows @ is redsea's output.

F201 441D D299 5DC4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T23:55:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 5E04 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T23:56:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 5E44 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T23:57:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 5E84 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T23:58:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 5EC4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T23:59:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 6004 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:00:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 6044 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:01:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 6084 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:02:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 60C4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:03:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 6104 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:04:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 6144 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T00:05:00+02:00","prog_type":"No PTY","tp":true}
---- ---- ---- ----
F201 441D D299 7DC4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T01:55:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 7E04 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T01:56:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 7E44 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T01:57:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 7E84 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T01:58:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D299 7EC4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-25T01:59:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 0004 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:00:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 0044 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:01:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 0084 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:02:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 00C4 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:03:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 0104 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:04:00+02:00","prog_type":"No PTY","tp":true}
F201 441D D29A 0144 @{"pi":"0xF201","group":"4A","clock_time":"2022-05-26T02:05:00+02:00","prog_type":"No PTY","tp":true}

redsea 0.20, compiled from d0c1b2dd86e0eada94bc4b29cffb633ac33aac55

windytan commented 2 years ago

Thanks! It's fixed now.