G120 Firmware - Default Pin State

I found a problem using the latest firmware on the G120 module. Previously on the default state on boot/reset of the most GPIO pins was high. Now during power-up/reset some pins are pulling low. I’m using P0_24 and P0_25 to interface with a pushbutton controller which controls the main 3V3 power supply. With the latest firmware the pins are pulling low before I can execute code, thus the power supply doesn’t power on. I already have pull-up resistors on these lines, but the G120 is sinking them.

Any thoughts? This problem did not exist on earlier firmwares. Our board design was based on the default high state of the pins, but now I no way to program new boards using the G120 module without using an external power supply to downgrade new G120 modules to an older firmware. Any help or insight would be greatly appreciated. Thanks.


@ brice_chart -

I am thinking that something else pulls the pins low.
We checked here and both are 3.3v

@ Dat - Sorry for the delayed response. To see this, you would need to watch the line on a oscilloscope. It only goes low for a very brief moment.


@ brice_chart -

Still can not reproduce the issue, using oscilloscope and another device to detect any low signal. Even I hit reset once the board is powered up. Are you talking about G120 or G120E?

I tested on FEZ CobraII which is installed g120 Som.

@ brice_chart - Gus told me along time ago, that the pin state of any NETMF device at power up is undetermined. You can’t rely on those pins to be in a specific state at boot. My advice to having a known state at power up is to put a capacitor along with the pullups such that if the they are pulled low before the program takes over and sets the pin high, the capacitor will discharge into the g120 and not bring the line low.

1 Like

@ Mr. John Smith - Much was improved lately and we try our best to not touch any pins on power up. But you are right, there are ways to guarantee a pin’s state no matter what.