root | Dealing with Missing Pin Allocations

Blindsided through lacking pin allocations? Perhaps you might be operating on a work of {hardware} and also you realize that the documentation is fully improper. How are you able to get your tool to paintings?

[Dani Eichhorn]’s troubles started when working an IoT workshop the usage of a digicam module. Prior to the paintings, no one had via to test if all the digicam modules ordered for the contributors had been the similar. As it seems, the TTGO T-CAM module had numerous revisions, with some even receiving a temperature/force sensor fastened on most sensible of the traditional board.

While the forums could have seemed the similar, their pin allocations had been utterly other.Changing the pin numbers do not need been tough in the event that they had been merely numbered another way, however since the configurations had been other, mistakes began to abound: Could no longer initialize the digicam

As it seems, even the LillyGo engineers – the producers of the board – could have gotten slightly misplaced whilst operating at the pin allocations, as [Eichhorn] used to be in a position to search out one of the vital pins revealed proper onto the PCB, hidden in the back of the digicam element.

To to find knowledge no longer imprinted on the board, slightly extra digging used to be required. To to find the addresses of the gadgets hooked up to the I2C bus, working a program to search out peripherals listening at the bus did the trick. This used to be in a position to print out the addresses of the SSD1306 OLED show driving force and the microphone for the board to hand.

To to find the pins of peripherals no longer imprinted on the PCB or hidden at the silkscreen, a GPIO scanner did the trick. This particularly labored for locating the PIR (passive infrared) movement sensor.

We picked up a couple of guidelines and methods from this undertaking, but additionally realized that reverse-engineering anything else is difficult, and that there isn’t a one means for locating pin allocations when the documentation’s lacking.

by way of