AtTiny167 SOIC 20 package: fritzing, programming help

We have selected that AtTiny167 for our project. It has the right parameters, such as I2C Master, 16K Flash, 512 SRAM, etc. to do the work we need, and the SOIC20 fits the very limited space we have to place it. We are talking about a very small form factor overall.

Now I'm faced with several problems: what outboard components do I need to make it happy? The plan is to use the internal oscillator, so that drops the crystal oscillator and two capacitors. Of course, the standard bypass capacitor between Vcc and Gnd will be there, and the voltage regulator is not needed because it will be powered by a 3V lithium coin cell. So now the question is, using the Arduino IDE, how to I set up a programming interface to it? How do I program a boot loader in? I have used FTDI and USB interfaces in the past. I am less confident that I have a clue as how to design or use an ISP interface.

I also need an Attiny167 component for Fritzing. A google search was remarkably unrewarding, apparently ignoring the 167 part of the search string and delivering me a ton of Tiny85 projects. No part drawing for the '167 was revealed. Ideally, the SOIC20 physical package will be part of the drawing, but I need a schematic part as well, and will settle for one which is not the same physical package if necessary.

Suggestions on how to proceed would be greatly appreciated. joe

Take a look at my Attiny 167 core:

It provides full support for using the 167 with the Arduino IDE, and provides a version of optiboot that is compatible with the weirdo LIN UART in the 167. The 167 doesn't have hardware bootloader support, so it uses virtual boot - the impact of this means that if using the bootloader, you can't use the WDT to generate an interrupt. For this reason, you may prefer to use ISP programming.

Only external component you need is the bypass cap. I would be inclined to add a larger cap across the supply for good measure, something around 10uF. If you want to use bootloader, you will need a cap for the DTR autoreset trick and resistor to vcc on reset. If you don't need autoreset, you still might want to use the resistor.

Have you considered the ATTiny 1634? It's got a USI that you can use for I2C master, a second UART (but it shares a pin with the USI...) more RAM, two more IO pins (only one Gnd and Vcc pin), is available with the 2% factory calibrated oscillator, and is IIRC cheaper than the '167. You can also get them in the MLF package, which is super tiny - SOIC-20 is huge next to MLF-20.

Anyway, my core supports 1634's too, with bootloader, same caveat.

I also sell breakout boards, bare and assembled, for both those parts (in SOIC-20) at my tindie store.