Cleaned up IR reading method