GPIO state at boot


#1

@eric, I plugged one of my bluz into the new prototyping shield with the LEDs on each pin. I plugged that shield into the battery shield and turned it on. Immediately, the D0, D1, RX and TX LEDs came on and stayed on even after the bluz connected to the cloud as was pulsing cyan. Is this expected?


#2

Was I2C or UART enabled? Was this with the latest bootloader? What app did you have loaded?

That isn’t expected. The LEDs on the Proto shield should only light up when the pin is driven high.


#3

@eric, I’ll re-test making sure everything is off…


#4

@eric, I am running particle_function, no serial, no I2C. I was running a version with serial and now with that disabled, I only get D0 and D1 showing LEDs.


#5

Can you test with a multimeter? Are the pins somehow driven high? Or is there a short on the board/shield?

I’ll try the same thing here.


#6

No shorts, showing 2.5v on each jumper pad which is about right with the resistor/led voltage drop.


#7

So if you take away the Proto shield and just power bluz, those pins are driven high?


#8

@eric, on the battery shield with a CR2032 battery, I get 3v on D0 and D1 (unit 44). On unit 31, powered with a 3.3v breadboard power supply, running the same app, I get the same thing.

Also, with a 5v supply to Vin, I get the same results but 3.3v.


#9

Ok, found the issue!

The I2C driver was getting started in Init instead of Begin. So the I2C was enabled, hence why those pins were being driven.

Fixed!


#10

@eric, let me know when you push it to the repo :wink:


#11

testing I2C now, should only be a few more minutes as long as this passes.


#12

Testing passed. Fix is checked in!