Author Topic: Atmega328p woes from JLCPCB SMT order  (Read 5629 times)

0 Members and 2 Guests are viewing this topic.

Offline Peabody

  • Super Contributor
  • ***
  • Posts: 2086
  • Country: us
Re: Atmega328p woes from JLCPCB SMT order
« Reply #25 on: February 11, 2021, 03:35:08 pm »
I have the same suspect ATMEGA328P U-TH microcontrollers from LCSC.

I had problems programming them too, and it seemed to have to do with clocking. I suspected that these ICs have some sort of weird clock feature/limitation that hasn't made it into the documentation yet (like how the 328PB had people scratching their heads for a while.)

Microchip put out a notice that they were relabeling their ICs, and I think that the U-TH has more to do where it was manufactured than what the ICs. There's a discussion about it here: https://www.avrfreaks.net/forum/another-it-fake-chip-thread-atmega328pu-th-tqfn-pkg

I don't have time to look into it further, but I can send a few chips to people who want to examine them.

I believe the U is just the package, and TH is a country code (Thailand).  TH and PHilippines are typically found on genuine chips.  KoRea and TaiWan were on the counterfeits previously found.

Did you eventually find a way to program them?  If so, could you please run the sketch below and post the results here?

Code: [Select]
#include <avr/boot.h>
#define SIGRD 5
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  Serial.println("");
  Serial.println("boot sig dump");
  int newLineIndex = 0;
  for (uint8_t i = 0; i <= 0x1F; i += 1) {
    Serial.print(boot_signature_byte_get(i), HEX);
    Serial.print("\t");
    newLineIndex++;
    if (newLineIndex == 8) {
      Serial.println("");
      newLineIndex = 0;
    }
  }
  Serial.println();
}

void loop() {
}
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf