Debugging gaming pads on Linux

While running https://github.com/fhoedemakers/pico-infonesPlus, I found that my SNES gaming pad was not fully supported. Specifically, the UP/DOWN and LEFT/RIGHT keys were not working. Let's debug this a bit: Plug in the gaming pad on a Linux box and run the following command (hidraw5 will need to be changed as needed): $ lsusb ... Bus 001 Device 063: ID 0810:e501 Personal Communication Systems, Inc. SNES Gamepad $ sudo hexdump -C /dev/hidraw5 ... 00004a50 01 80 80 7f 7f 0f 00 00 01 80 80 7f 00 0f 00 00 |................| 00004a60 01 80 80 7f 00 0f 00 00 01 80 80 7f 00 0f 00 00 |................| * 00004a80 01 80 80 7f 7f 0f 00 00 01 80 80 7f 7f 0f 00 00 |................| This is what I see when pressing the UP key. ...

September 29, 2025 · 2 min · 292 words · Dhiru Kholia

Debugging/Reversing Firebase gRPC Traffic with mitmproxy

Recently, I was stuck trying to understand how Firebase gRPC calls worked and how I could generate, modify, and replay them. Trapping and modifying existing gRPC traffic was not working well. Finally, I took a step back and spent some time learning how to build and debug simple Firebase applications. This approach helped me tremendously, and I was able to make further progress with my original task quickly. Solution You may find the following code sample useful when reversing/debugging Firebase applications. ...

April 16, 2025 · 2 min · 426 words · Dhiru Kholia