I would like to share my experience since it has happened twice with two different Honda Odysseys (2007 and 2003), both my own vehicles used for hauling equipment to the shop and also the family and dog – so it has to run well.
As many have suggested on forums, check the usual suspects (in order of importance):
I focused mainly on the obvious culprits at 160,000 km such as replacing spark plugs, swapping coils, full valve clearance adjustment, injector cleaner, EGR valve cleaning – but the problem always returned after a code reset!
In both cases, after much trial and error, it was dirty fuel injectors that could only be solved by replacing the fuel injectors. Even the professional cleaning did not work. The spray pattern seems to gets very weak at idle after years of use. Luckily, in both cases I was able to find the injectors at a reasonable price online (Rock Auto). Immediately, problem solved and the engine runs so smoothly you can hardly tell it is on. I now consider fuel injector replacement on high mileage vehicles as standard practice.
Lesson learned in troubleshooting – sometimes it is not the obvious solution, even with diagnostic codes!
Hope this helps.