Open kumarpatel opened 2 years ago
With a new board, you'll first need to flash a bootloader before trying to upload code via the micro-USB port. The easiest way is to use another Arduino (like the a spare UNO).
Please see https://www.arduino.cc/en/Tutorial/BuiltInExamples/ArduinoISP
You should find the 2x3 ICSP headers on the motherboard.
Thanks @davidsean Here's a follow up question from Flemming Rasmussen.
"Following the examples previously supplied and using the Arduino Mega to flash the bootloader on the PCB, is the AVR 2x3 ICSP header on the Incuvers board the correct header to use and if so, please specify the wiring connections to the AVR?"
The AVR pins on the model-1 board should be labeled---or at least the PIN1-MISO should have a mark. The rest of the pins should follow the same relative orientation as in the linked page (albeit rotated by 90 DEG).
You should double-check with the GND (or +5V) to be safe ;)
Here's another follow up from Flemming:
"In spite of confirming all connections as per previous posts and the 5 v on the ArduinoMEGA, the boooloader did not install the only port option, namely COM4(Arduino Mega or Mega 2560). Please advise options that will boot the correct port."
Sorry for the delay, I guess I missed your reply. I'm not sure I can assist more other than pointing at the above instruction for flashing a bootloader via the AVR pins.
@davidsean Thank you for your help so far and for above provided documentation.
Our goal at this time is to control something/anything on the board via code. None have been successful so far even though we're able to upload and execute code. Any other help you can provide would be appreciated.
Here are our attempts:
#include <DallasTemperature.h>
OneWire oneWire1(1); DallasTemperature sensor(&oneWire1);
void setup(void) { sensor.begin(); Serial.begin(9600); }
void loop(void) { sensor.requestTemperatures(); getTemp(sensor, 4); // <---- tried bunch of other pins to be certain delay(1000); }
void getTemp(DallasTemperature sensor, int pin) { Serial.print(pin); Serial.print(" => "); for (int i=0; i < 8; i++) { Serial.print(sensor.getTempC(i)); Serial.print(" | "); delay(10); } Serial.println(""); }
We then attempted to run the Basic Blink Example sketch. No blinking on the board. Code did upload successfully.
We tried to open/close power to `D8 - Door Heater relay` with below code
But we still read 5v on those pins
void setup(void) { pinMode(8, OUTPUT); digitalWrite(8, LOW); Serial.begin(9600); }
void loop(void) {
}
Here are my questions.
- Could this still be bootloader related? (even though we're able to upload code and use serial monitor)
- What else could this mean?
- What would your next troubleshooting steps involve?
I am one of three separate independent attempts at this and have had no success so far.
This message is on behalf of Flemming Rasmussen. @shadjiantoniou connected Flemming with Bittele Electronics Inc to get new boards manufactured.
We received these new boards that are a clone of the old Incuvers model We've connected this board to RaspeberryPi and attempting to upload Incuvers code on it. I used these settings to set everything up.
This keeps timing out when I try to upload code So far we've tried all physical USB ports on the RaspberryPi. Still doesn't work. Note: We've been able to connect and upload code successfully on another Arduino ATMega2560 board using the same RaspberryPi So it's likely not the RaspberryPi or the USB cable. (but I'm no expert ¯\(ツ)/¯)
Is there anything special that needs to be done to these new boards when received directly from the manufacturer? Are there any drivers that need to be installed on RaspberryPi? Could this be a bootloader issue? if so, how do I go about installing a new one? @davidsean