It depends on what engine, how old and whether a cat should be present as to what test is being carried out at the time, but it sounds like you need to tune idle areas of the maps to achieve lambda 1.00.
Generally, fuel injected engines should have Lambda 1.00 all the way up to cruse, maybe 40 or 50% throttle, and across to around 4 or 4.5k rpm depending on actual speed at cruse. This keeps the cat working. all other areas should start to richen up as rpm increase and as throttle widens.
It is not usually an issue if the Lambda map is tuned for lambda 1.00, and EGOC is turned on, unless idle is erratic.
My MOT tester was amazed at the emissions results on my Mini, an older car that had emissions limits for a carb engine lol. Sailed through
Oh, and ~2% CO is not very high at all, The Mini would still pass at that
6% at idle and i'd be worried