top | item 29818572

YK22 bug causing Honda clocks to stop working

148 points| throwawayHN378 | 4 years ago |crvownersclub.com | reply

89 comments

order
[+] uxamanda|4 years ago|reply
Honda responds “We have escalated the NAVI Clock Issue to our Engineering Team and they have informed us that you will experience issue from Jan 2022 thru August 2022 and then it will auto-correct.”

https://www.crvownersclub.com/threads/2022-clock-fault-offic...

[+] bnabholz|4 years ago|reply
I have this problem on my 2006 Civic. I wondered if it was a GPS week rollover issue. Week numbers are 10 bits and roll over every 1024 weeks[0]. Jan 2nd, 2022 was the start of week 143 on the 2019 epoch. They may have programmed it such that "for week numbers 143-1023, assume the 1999 epoch is used; for week numbers 0-142, assume the 2019 epoch was used." Without having the clock "remember" the latest year it has seen from GPS (e.g. by writing into EEPROM), it would to be limited to 19.6 years of useful life. It's a matter of choosing which epoch they wanted to associate groups of week numbers with.

There's something more to it though, since if it was using the wrong epoch, the date would be off but the time would still be correct. Week 143 on the 1999 epoch would be May-ish 2002 but the observed behavior is that the clocks are all stuck around 4:00 on Jan 1, 2002 (and shown as a Sunday, when it was actually a Tuesday). Since the 1999 epoch started on Aug 22, 1999, I am wondering if that's another piece to the puzzle and why they suggest it will auto-correct in August.

It's an interesting problem and I'm curious about the root cause, but in reality this will just be the push I need to get a newer radio that can do CarPlay/Android Auto.

[0] https://en.wikipedia.org/wiki/GPS_week_number_rollover

[+] jakub_g|4 years ago|reply
Genuinely interested how this will self-fix after August 2022.
[+] londons_explore|4 years ago|reply
You know what would have been better...? "We have made a small fix, and rerun all our build processes. Put this file on a USB drive plugged into the car and it will resolve the issue".
[+] jeroenhd|4 years ago|reply
You know, I fully understand the reasons for MS to use a date format in an integer for a version number in some kind of package; it was a bit silly of them not to use a 64-bit integer for the version number there, but at least it made sense.

With this, I don't understand the reason at all. It seems to be the same issue, but why would you ever use an integer formatted as a date to display the clock? That's the other way around, and it's probably more work to create such integers than to use string formatting!

This sucks for Honda owners because it'll take forever for any update to come out, and those updates will probably cost money as well. One of the forum users says a firmware update DVD goes for $150, that's just insane.

[+] KennyBlanken|4 years ago|reply
> With this, I don't understand the reason at all. It seems to be the same issue

> One of the forum users says a firmware update DVD goes for $150, that's just insane.

There's your answer, although some additional context: this date issue has been a repeated problem for Honda and other Japanese auto companies. They likely know, and are using it to force people to come in for service.

It's also worth noting that a large portion of Japan's economy is propped up by the auto industry, thanks to rules making it very difficult and expensive to keep a car beyond a couple years. Japan exports used cars like crazy.

Toyota in particular has almost Umbrella Corp levels of tentacles into Japanese society because they are supplied by thousands of smaller suppliers around the country. Hence their kids books explaining how hybrids are great and electric vehicles are evil...and those books actually making it in front of kids.

[+] rightbyte|4 years ago|reply
> why would you ever use an integer formatted as a date to display the clock?

Maybe the master date is sent over CAN and the bug is in the sender?

[+] kevin_thibedeau|4 years ago|reply
RTCs still use two digit years so someone probably thought this was a quick way to pack a "struct" without thinking it through.
[+] silon42|4 years ago|reply
ISO8601 date format will have Y10K bug.
[+] Milner08|4 years ago|reply
It's been years since I frequented a forum like that and the admin claiming that people should just ignore it and its not an issue because people have smartphones really drives home what I hate about them.
[+] badsoftware|4 years ago|reply
Every time I visit a forum it really does feel like a step back in time. The inability for low quality comments to be pushed downward makes them very difficult to use.

Modern voting systems aren't perfect either, particularly in the way that they can create echo chambers/hivemind behavior, but it's a hell of a lot better than forums.

[+] hollasch|4 years ago|reply
I took the time to post a possible workaround (selecting a year that mimics 2022 for calendar and leap-year status), and was promptly shut down. Apparently the moderator figured there was nothing new to discuss about the issue. Must be fun at parties, going around and shutting down individual conversations. :D
[+] acomjean|4 years ago|reply
I have this too.

Its weird, every time you start the car it goes back to Jan 1, 2002 5pm (my car is a 2010 element). The bug seems to effect cars with the gps navigation unit in the radio slot.

Attempts to override the time in settings show that the unit only allows you to "adjust existing time" by some number of hours or minutes. When you start the car, it seems to get the time from the gps again, so you can't just "fix" the time.

I used to work on systems that would work with GPS time and UTC time. Its always tricker than one would think..

I never realized how frequently I looked at the clock. If I get annoyed enough, my solution might be the stick on lcd clock.

https://www.amazon.com/Bell-Automotive-37003-Stick-Clock-Bla...

[+] hollasch|4 years ago|reply
The moderator there has shut down all conversation about this topic, so putting this possible workaround here. The mod simply responded "doesn't work", but I'd love to hear more details from someone who's experiencing the problem. --

I have a workaround for people to try (I don't have the problem myself). I've read the related (two, I think) threads here, and haven't seen this workaround proposed, so perhaps it might work as a hack.

Others have mentioned that you can disable automatic (GPS sourced) updates, and switch to manual. If you can do that, and set the year to 1994, then your year will be wrong, but your month, day, and time will all be correct, and should suffice for the next six years, including the leap year 2024 (which would display as 1996). Unfortunately, the year 2000 is not a leap year, and you'd hit this in 2028, which is a leap year, so you'd need to set it back to 1994 again when this happens. If you can set your year back to 1966, that will give you 24 years of successful calendar updates. Other years that will work and would give you even more time would be 1938 and 1910.

There is a catch, however -- Daylight Saving Time. If the system is dumb about DST in manual mode, then everything's great, and you'll just have to adjust the clocks entering and existing DST. If it's a little bit smarter, locking in modern regimes for DST, then everything will still be great, and you won't have to adjust your clocks manually. However, if it's very smart, then US residents will have a problem, because the rules for DST changed in 2007. That means you'll have to manually adjust on the modern DST dates, and manually correct on the historical DST dates. But that's just moving updating the hours four times a year worst case. UK DST was last changed in 2002, I believe, and the same caveats apply: you may have to manually adjust your hours several times a year.

Very curious to hear if anyone has success with this hack.

[+] PopAlongKid|4 years ago|reply
I drive an older Toyota car, the clock only shows hours and minutes. I wonder who decided it was necessary or helpful to start including calendar dates in a car clock display.
[+] oneplane|4 years ago|reply
A lot of humans don't run on numbers and thus don't remember all the numbers that describe a certain temporal value all that well. This includes, years, months, dates, week numbers, hours, minutes, seconds, and timezone offsets.

Luckily, the devices we have around us are much better at number-things, so it was probably deemed helpful to have those devices that are (supposedly) good at numbers display them to us so when we forget, we have a reference that can help us remember.

[+] mark-r|4 years ago|reply
I drive a 2021 Toyota. When you go to the Clock setup it has an interesting feature - the first setting is for daylight saving. Turn it on, the clock goes an hour ahead, turn it off and it goes an hour back. No more fumbling with the clock twice a year, and no need to have the year. And no worrying about Congress making your clock obsolete.
[+] moduspol|4 years ago|reply
I'd like to say it makes sense (at least in the US) so that daylight saving time transitions can be automated. My history with cars, though, is that it often is not used for that.
[+] Karawebnetwork|4 years ago|reply
It's on the road that I lose track of time the most. The motels all look alike, the roads look the same, and I am out of my usual routine. It's easy for me to think that it's Tuesday and not Wednesday.

Not only does my car display the date, but it has a full calendar app that reminds me of events and suggests the shortest route to get there.

The alternative would be to look at my phone while driving, which is illegal where I live. Yes, this is something that should be done outside of the car, but sometimes you need to know when you are driving and having it on the dashboard is the way to go.

[+] rekabis|4 years ago|reply
Sounds like the date-stored-as-integer “bug” strikes again.

And here I thought something this blatantly stupid was just an urban myth among programmers. Huh.

[+] Hamuko|4 years ago|reply
How will it start working in August if it's stored as an integer?
[+] donquichotte|4 years ago|reply
I have often wondered why dates are so complicated. `timespec`, `timeval`, `tm`? Why not use a 64bit unsigned int to describe the time in TAI [1] (no leap seconds, trivial computation of difference between points in time) in nanoseconds? That would give us 585 years, so our ancestors can deal with it.

[1] https://en.wikipedia.org/wiki/International_Atomic_Time

[+] perryizgr8|4 years ago|reply
YK22 expands to Year 1022. Why not use the correct acronym Y2K22?
[+] kazinator|4 years ago|reply
And YKK expands to your fly being undone.
[+] tzs|4 years ago|reply
If I had not known we were talking about a 2022 bug, I'd have not guessed that Y2K22 meant 2022. I'd have guessed it was using the same convention widely used in electronics for writing component values, which would give 2220.

That convention is instead of writing something like 2.2 k you write 2k2, using the scaling suffix as the decimal separator.

I don't know how this convention came about put would guess it is some combination of it being more compact which might help with legible labeling on a schematic diagram or PCB, and of it stopping bickering over whether the decimal separator should be '.' or ',' on projects with an international team.

[+] hnbad|4 years ago|reply
Or why not just use Y2022 if it saves literally not a single character?

I guess the obvious answer is that everyone knows "Y2K" so "Y2K22" communicates more clearly what it is about.

[+] viraptor|4 years ago|reply
It's not a scientific term. We know what was meant and you knew what the "correct" version is. It's unambiguous and understandable, it's fine.
[+] throwawayHN378|4 years ago|reply
Idk I just saw it used elsewhere and mindless typed it
[+] nerdjon|4 years ago|reply
I am a little confused here, the y2k bug at least followed some logic.

But I am not following what about "2022" could have caused something like this in a few different areas. Can someone explain?

[+] MegaDeKay|4 years ago|reply
One of the comments from the linked article... things break if you write the date in this format to a 32 bit integer.

"It hasn't been in the news much but yesterday the date was written by many computers as 2201010001 (YYMMDDHHMM). Many older computers that store the date this way cannot handle any number bigger than 2147483647, so as soon as the year began with a 22, it fails and can no longer register the date/time correctly."

[+] DavidPeiffer|4 years ago|reply
This bug impacts me. What sucks is the resale value would probably take a hit if I wanted to resell before August when the issue will supposedly disappear. Does anyone have a thought on how it will fix itself? In my head, we're already at '22' for the start of the variable value and it's only going up, so I'm not seeing how it'll fix itself intuitively.

I'm really curious how car dealers with a CR-V on the lot are handling this. I wouldn't want to buy a car the clock doesn't work on, and imagine most people wouldn't either. And with the clock resetting every time the car turns on, it's not like you can set it for the day and be fine while you run errands. I'm either stuck with this car until the automatic fix in August or until they come up with a better fix (which hopefully is free) or I need to replace the head unit to get a fair deal. Given the chip shortage and crazy price of cars, it may not be an issue for me, but it certainly is for some.

[+] dharmab|4 years ago|reply
It's 2022 and old Honda resale value has never been higher. Some models are worth as much or more than they sold for new.
[+] gpmcadam|4 years ago|reply
wouldn't it be Y2K22?
[+] LeonM|4 years ago|reply
Which is just as long as "Y2022", but probably not as catchy to use as a title...
[+] akemichan|4 years ago|reply
All they need to fix it is an IBM 5100
[+] steacher|4 years ago|reply
My car Honda CRV2011 is set to Jan 1 2001. Clock resets to 4 hours ahead. Unable to rest it. Can anyone offer help? Thanks!
[+] bellyfullofbac|4 years ago|reply
> This thread will be locked if people cannot grow up and rein in their pseudo hysteria.

Hah, welcome to the Internet, A.D. 2022. The amount of forum posts that are either "This happened to me too!" or that plus "I can't believe it, ehat a worthless car manufacturer, I'm starting a 'Ban Honda for life'-group!!!" is way too much.

[+] iso1631|4 years ago|reply
> The amount of forum posts that are either "This happened to me too!"

Eternal September called and wants its complaints back

[+] theandrewbailey|4 years ago|reply
I immediately thought of boomers going off on conspiracy theories, like "this is the first step to being locked out of our cars and autonomously driving us all to the gulags. they're already being built!"

Get a grip, it's just a broken clock. God forbid a lightbulb burns out at their house.