Since the code obviously is 100% correct there must be a hardware issue...