I went to flash the Argon and it wouldn’t respond. I saw it only had one led lit up and it was the CHG LED. I had never seen that one lit up. I felt the processor and it was hot to the touch. So I pulled the 5V from the USB pin(I was powering it that way). And for good measure, I turned off the power to my breadboard. I came back 15 minutes later and turned on my breadboard and the Argon came back on. I don’t have anything connected to the power pins still, why is it on(and responsive to commands), I asked myself. After not being able to find it visually or see any other possibilities online, I decided to see what you guys thought.
Is there a way to power it other than the 3V3, USB or Li+ pins?
//Pin D0 is used for the I2C connection for the LCD
//Pin D1 is used for the I2C connection for the LCD
DS18B20 ds18b20(D2, true); //Pin D2 is used for the waterproof Water Temp sensor
DS18B20 ds18b202(D3, true); //Pin D3 is used for the waterproof Air Temp sensor.
const byte MenuButtonPin = D4; //Menu Button/Page Scroll Button
const byte UpButtonPin = D5; //Up Button
const byte DownButtonPin = D6; //Down Button
int StatusLEDPin = D7; //LED
int AlarmLEDPin = D8; //LED
int PumpRelayPin = D9; //Connected to LED for now.
int LightsRelayPin = D10; //Connected to LED for now.
const byte PumpAutoPin = D11; //Auto/Not Auto Switch
const byte PumpManualPin = D12; //Manual/Not Manual Switch
const byte LightsAutoPin = D13; //Auto/ Not Auto Switch
From somewhere you must be feeding voltage.
You still have the GND pin connected and it’s quite possible that one of your GPIO connections feeds back into the power rail (e.g. via internal pull-ups) - which is a bad idea and may have caused some damage to the device already (hence the heat produced).
I think I found the problem. The switches I was using on my prototyping board are TTL(Transistor-Transistor Logic) switches and run on 5V at the VCC. I did know those switches were connected like that. I’m not sure how much voltage I applied to the input pins, but I predict that is the problem. When I get back home I am rewiring that whole thing. I am prototyping at this point, so I may as well prototype a little more accurately what I will be building.
It is still interesting to me that the Argon powered up when there was no power to the power pins. Is it in anyone’s experience that 5V on a digital pin will power it up somehow?
Since the GPIOs on an Argon (Xenon, Boron too) are not 5V tolerant applying 5V to them may well cause the otherwise blocking (virtual) pull-up to blow through to the positive power rail and hence backfeed which wouldn’t be the case with a non-defective GPIO.
Once the positive power rail is “hot” and you also have a GND connected it’s not surprising that the core gets powered too.
You can measure the voltage on 3v3 and see if that rail is “hot”.