The intermittent IMODE operation in the ISD-300, ISD-300A, and ISD-300A1 architecture is a known bug. The ISD-300 occasionally returns wrong IMODE data. It is corrected in the ISD-300LP.
Please note that the ISD-300, ISD-300A, ISD-300A1 and ISD-300LP are obsolete and the functional replacement is AT2LP. All the related collaterals of AT2LP can be found in the link here