ArduinoGeneral

UHex_Low-power_Controller_SKU__DFR0343

userHead Account cancelled 2019-04-28 21:34:35 2541 Views1 Replies
I'm having issues with this uHex ATmega328P board. I've connected it via a generic FTDI usb to serial board, which I've used many times before for programming other boards with no issue.
I use the standard Arduino IDE (1.8.9) and the issues I'm having is depending on the sketch that's being uploaded to the board, the upload frequently fails and hangs (the FTDI TX/RX leds stop and the IDE never indicates the upload has been completed and remains in the "Uploading..." state for around 4 minutes before finally timing out with an error message "Error opening serial port")

What I have discovered is it's entirely dependant on the sketch that is being uploaded. Below is a sketch that uploads every time. However if I comment out line 12 and un-comment the code block between lines 13-21 then the upload fails consistently.

I understand the uHex board has it's out bootloaded so I'm suspecting this as the cause of the issue. However the wiki page - https://wiki.dfrobot.com/UHex_Low-power ... U__DFR0343 clearly indicates I should not replace the bootloader. What is different about the boot loaded on this device and why wouldn't the standard Arduino bootloader work on it?

I can't find any previous issues similar to this on this form so I'd appreciate it if you have any advice . As it stands what I had hoped was going to be a really useful board is almost useless.

Regards,

Nick
Code: Select all
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

#define SEA_LEVEL_PRESSURE 1013.25 

Adafruit_BME280 bme; // I2C

void setup() 
{
  Serial.begin(9600);

  bme.begin();
/* Uncomment this block and comment out the above bme.begin() line and the sketch will fail to complete uploading via the Arduino IDE 
  if (!bme.begin())
  {  
    Serial.println("BME Failed");
  } 
  else
  {
    Serial.println("BME Done");
  }
*/
}

void loop() 
{
    float temp = bme.readTemperature();
    float pressure = bme.readPressure();
    float humidity = bme.readHumidity();
    float altitude = bme.readAltitude(SEA_LEVEL_PRESSURE);

    Serial.print("temp : ");
    Serial.println(temp);
    Serial.print("pressure : ");
    Serial.println(pressure);   
    Serial.print("humidity : ");
    Serial.println(humidity);
    Serial.print("altitude : ");
    Serial.println(altitude);
   
    delay(5000);
}
2019-05-17 15:14:08 You could select "Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328"it in the board menu when uploading, but don't update the bootloader. And also you could test the UHex by through the library files and sample code we provide.
https://github.com/LeoYan/ArduinoLib/tr ... /microPoly
userHeadPic techsupport