ATmega328PB-A chip on a new design

Hi all

I need to use a ATmega328PB-A chip on a new design. The ATmega328PB-A chip is at the heart of the Arduino Nano boards

My question relates to PCB design so I can configure the PCB to enable a USB type connection and enable programing the chip from a PC

Also how do I program the ATmega328PB-A chip on a new design in the Arduino environment

Can someone please guide me in the best way to do this

Once I have the board working I intend to provide the board to the Arduino community

The new board is intended to enable the measuring of battery voltages for a solar system

I'm using KiCad for the PCB design

Kind regards Grant Brown
E : grant@countrytradies.net

Edit your post and remove your email address, otherwise expect a ton of spam

Just copy this

1 Like

You will need an external USB interface chip, such as one of the FTDI chips.

Typically, people add an SPI header and use a programmer like Atmel-ICE or use an Arduino as programming tool.

It sounds like you are seeking to reproduce the functionality of an Arduino Nano on your own board.
I would consider

  1. place header pins so you can just plug in an Arduino Nano
  2. use the Nano schematic as a starting point

You might find that there already Nano designs in KiCad, which you may be able to use. It is also possible to import the original Nano PCB files into KiCad.

2 Likes

How's this different from or an addition to the plethora of small development boards based on a whole slew of microcontrollers currently in existence?

No, it's not. The Nano ('Classic') is based on the 328P. The 328PB is a later version that's a snap-in replacement of the 'P, but extends its functionality in a few areas. The PB did not exist when the Nano was conceptualized.

1 Like

A little while ago I designed a Atmega328PB board that is footprint compatible with a nano, except it has no built in USB chip. It has (two times) the Arduino Promini connectors to connect a USB/Serial adapter to both UART's.

There is a variant with and one without crystal and you can program (a bootloader) via the 6-pin ISP connector.

be6d0c0aeb3c187ddb781ec72498ad9ac13763f6_2_641x500

1 Like

@hmeijdam What version of Eagle were your drawings done in?

  • Don’t see de-coupling :woozy_face:

MCU decoupling
image

Ams1117 decoupling
image

I am using Diptrace.

  • For your future boards, decoupling of the regulator is different from de-coupling for the controller.

  • All controller power pins need their own capacitors, right next to each controller power pin.

The 328PB has one less power pin than the 328P. I loosely based myself on the Promini schematic that has just a single MCU decoupling capacitor (C3).

image

Trust me this works just fine.....or don't trust me and add as many caps as you like :grinning: .

I don't understand what you suggest to change here for future boards. I have separate ceramic bypass capacitors for the AMS1117.

For electronic designs, every power pin needs de-coupling.

  • The regulator has its capacitors.
  • The controller has its capacitors.
  • The ICSP connector has its capacitors.
  • etc.

Oh. Okay, your previous thread said:
Attached are the Eagle boards files, that can be imported into Diptrace, Kicad, etc.
So I thought I'd ask, as I have an ancient Eagle on my machine.
Thanks

Diptrace can do a few exports. Eagle Board is one of them, but if that does not work and you recognize another export format that you can import, best PM me for another export.

No, I was just confused - I have Diptrace here. Thanks!

That's not true, BTW. An actual Arduino Nano uses an ATmega328P (no "B")
The PB variant is "mostly" compatible, but is newer, has some extra features, and costs less.
But you should be aware of the differences.