I ordered a custom PCB and reflow soldered an Atmega328p-mmh to it. It is a 28 pin QFN (MLF) package and the board uses 3.3v logic. I burned the Arduino pro mini 3.3v 8MHz bootloader using Arduino as ISP successfully and was able to upload sketches and send and receive serial data no problem.
The pro mini also uses Atmega328p but its a 32 pin unit.
BUT... There is always a but.
None of my I/O seems to work.
Digital pins and I2C bus... nothing in or out.
I am wondering if I uploaded the wrong bootloader? I thought the dies were the same just a different package and pinout. Is there a difference in bootloaders between 32 and 28 pin chips? Do I need to modify something in the bootloader? How would I go about doing that? Alternative boot loader options?
I did.
Pin 1 is PD3 on both chips. Used pin 3 in sketch as it correlates to pin 1 on 32 pin chip. Should be the same. Tried pin 1,2 and 4 in sketch just to be sure. Still nothing.
Also tried this with other pins as well.
SPI and UART pins are in right place.
Nothing on I2C bus either.
If you got that far, then your problems have nothing to do with the bootloader... The bootloader doesn't have anything to do with the operation of the sketch after uploading is complete.
I'm sorry.
I'm a new user and it wont let me upload files to the forum.
The board is pretty much a Spark Fun Pro Mini with and SSD1306 on the I2C bus and a few buttons with hardware debounce, pull up resistors and decoupling.
I was just using the blink sketch, changing the pin number to test various I/O and trying to drive the screen on I2C with adafruit library.