Narrative:

I experienced engine problems and decided to divert to ZZZ. During the diversion I became aware that my radio was not working and so I squawked 7600 to [advise of radio failure]. As already stated I was cruising at 9;400 - 9;500 feet when I began to experience engine roughness. After a few minutes of troubleshooting I determined that the issue could not be resolved and I should make a precautionary landing. At this point I was not able to maintain altitude but the descent rate was minimal. I accepted a descent of about 100-200 fpm in order to maintain a reasonable forward speed. I turned toward ZZZ as I did not want to fly over the more populated areas. I attempted to listen to the ATIS but did not receive it; I attempted to call ZZZ tower but received no reply. At this point I realized that I had a radio issue as well and so I set the code 7600 into the transponder. I realized that by the time I actually set the squawk code I was already inside the [nearby] class C airspace. I continued toward ZZZ and made a call on 121.5 explaining my intentions to land at ZZZ but received no reply. At this point I was within gliding distance of the airport and had observed traffic departing from runway 35 as well as traffic that appeared to be taxiing for departure on the same runway.I circled twice over the field to see if the aircraft on the taxiway was going to wait or depart; as well as to see if I received any light signals from the tower. The traffic on the ground did not move onto runway 35 and I did not observe any signals from the tower. I then entered a left downwind and landed on runway 35; while trying to observe the tower for light signals. After taxiing clear of the runway I did observe the 'cleared to taxi' signal from the tower. The light was remarkably difficult to see. I proceeded to the ramp without further incident.the two things that I believe can be learned are:1) if I was in a similar situation I would have set the 7600 code sooner so my situation was clear to all ATC facilities.2) I learned after landing that the tower had flashed a green 'cleared to land' signal to me but; as already stated I did not see it. I believe that the angled glass of the tower windows combined with the tower sun shades made the light signals very difficult; if not impossible to see from overhead. One possible solution I see would have been for the controller to step out onto the deck structure of the tower and point the signal gun directly at me.

Google
 

Original NASA ASRS Text

Title: C172 pilot reported diverting due to engine roughness followed by air-ground communications failure. The pilot also reported being unable to see the ATC provided light gun signal in flight.

Narrative: I experienced engine problems and decided to divert to ZZZ. During the diversion I became aware that my radio was not working and so I squawked 7600 to [advise of radio failure]. As already stated I was cruising at 9;400 - 9;500 feet when I began to experience engine roughness. After a few minutes of troubleshooting I determined that the issue could not be resolved and I should make a precautionary landing. At this point I was not able to maintain altitude but the descent rate was minimal. I accepted a descent of about 100-200 fpm in order to maintain a reasonable forward speed. I turned toward ZZZ as I did not want to fly over the more populated areas. I attempted to listen to the ATIS but did not receive it; I attempted to call ZZZ tower but received no reply. At this point I realized that I had a radio issue as well and so I set the code 7600 into the transponder. I realized that by the time I actually set the squawk code I was already inside the [nearby] Class C airspace. I continued toward ZZZ and made a call on 121.5 explaining my intentions to land at ZZZ but received no reply. At this point I was within gliding distance of the airport and had observed traffic departing from runway 35 as well as traffic that appeared to be taxiing for departure on the same runway.I circled twice over the field to see if the aircraft on the taxiway was going to wait or depart; as well as to see if I received any light signals from the tower. The traffic on the ground did not move onto runway 35 and I did not observe any signals from the tower. I then entered a left downwind and landed on runway 35; while trying to observe the tower for light signals. After taxiing clear of the runway I did observe the 'cleared to taxi' signal from the tower. The light was remarkably difficult to see. I proceeded to the ramp without further incident.The two things that I believe can be learned are:1) If I was in a similar situation I would have set the 7600 code sooner so my situation was clear to all ATC facilities.2) I learned after landing that the tower had flashed a green 'cleared to land' signal to me but; as already stated I did not see it. I believe that the angled glass of the tower windows combined with the tower sun shades made the light signals very difficult; if not impossible to see from overhead. One possible solution I see would have been for the controller to step out onto the deck structure of the tower and point the signal gun directly at me.

Data retrieved from NASA's ASRS site and automatically converted to unabbreviated mixed upper/lowercase text. This report is for informational purposes with no guarantee of accuracy. See NASA's ASRS site for official report.