Hi Everyone!
I’m fairly experienced with electronics and the Arduino family of microcontrollers.
I just received my first SparkFun Qwiic Pro Micro - USB-C. I uploaded the “blink” example from the Sparkfun tutorial via the Arduino IDE, and the TX and RX LEDs blinked every 1 second as expected.
Then I tried to get an output from another digital output pin and defined pin 9 to go from “HIGH” to “LOW” every 1 second.
When I measure the voltage between pin 9 and GND, it changes as expected from 5V to 0, but as soon as I add a load the voltage drop disappears. For example, with a 10kOhm resister between pin 9 and GND, the voltage changes from 1V to 0V every second…
This makes me think there’s some kind of resistor in series to the output creating a voltage divider…? Or an issue with the ATmega32U chip not giving out enough current…?
Anyone have any other tests I should run or ideas what I’m doing wrong?
Thanks in advance!!
I’ve worked with the 32u4 a lot and initially had lots of problems with mapping the pins correctly and I suspect that if BLINK is working then you are experiencing the same issues. Can you post an excerpt of your sketch where you define the pin and toggle it?
And did you check the voltage on “9” using the following pinout diagram?
https://cdn.sparkfun.com/r/600-600/asse … 8b4567.png
Thanks for the helpful reply!
Yes, I am checking the voltage on the 9th pin as numbered in the picture you attached.
I am not next to my computer right now, but I just added the lines:
“Digitalwrite(9,HIGH);”
And
“Digitalwrite(9,LOW);”
To the Blink Example sketch just above or below the same lines which change the RX LED state.
Just to clarify, when I use a multimeter to measure The voltage on the 9th pin relative To the ground, I see it switching between 5 and 0 every second.
When I add a resistive load (even a very big one) the voltage drops and I only measure a change from 1 to 0 with the same period.
I fear that the output of pin 9 has been damaged, and I will check another output pin tomorrow… Let me know if you can think of anything else to test.
Thanks again!
Do you have a line with "pinMode(9, OUTPUT); " in your code? That might explain you issue. See https://www.arduino.cc/reference/en/lan … italwrite/ for the description.
Thanks SV-Zanshin!
You were right! I had skipped the “pinMode(9, OUTPUT);” in the setup section, so the pin was wired to a pullup resistor - causing the unwanted voltage drop.
Thanks again for all the help!!