ATTINY85 and NRF24L01+ only works with longer vcc/gnd lines on PCB

by KdiddyDawg   Last Updated May 22, 2020 22:25 PM - source

So I've been banging my head for a couple weeks on this, but I need some help. I'm trying to build something small and battery powered. I have a handful of ATTiny85's and NRF24L01+'s.

I have breadboarded it using the 3-pin method described on Instructables and it works (I have a Pi set up to simply listen and print out the message and is how I monitor the success of the radio). My next goal is/was to start building out a PCB, then case, etc.

The boards turn out pretty decently (I'm just using single-sided for now) and I've added a 2x4 header for it to plug into on the PCB. But I cannot get the board to work for the life of me plugged into that header.

I have etched about 10 different boards in different configurations, some with ground planes, some without, decoupling capacitors, ....

This is my latest iteration: enter image description here Please note the decoupling caps on the ATTiny85 as well as the 2 (electrolytic and ceramic) on the NRF24L01+.

I found if I add at least 16mm of wire on both the VCC and GND pins to the NRF24L01+ it works... But if I use the shorter (11mm) jumpers on those 2 lines, it doesn't work. I've tried multiple cables/wires/etc, however I get the same voltage when checking the header pins on the NRF24L01+ as I do on the board (3.017vdc). All the other communication lines work fine.

I have a 10 pack from Amazon and plugged various ones into other boards and they all work as expected; I just cannot for the life of me get it to work in a small form package without pulling it away from the board.

I found if I physically place the module where the headers are (with the longer wires attached) it still works. I've even face-planted the antenna and face of the NRF24L01+ into the tiny IC, batteries, and it still fires away.

A few suggestions on other forums/boards have recommended putting the NRF24L01+ away from the board or turning it perpendicular (I tried this and it made no difference). I have seen other people successfully stack these boards on mySensors, here, with an Arduinos, Pis, and Nanos (oh my). So it has to be possible to be on a minimal PCB...

There must be something I'm missing (hopefully something stupid and small); any suggestions would be greatly appreciated.

PCB iterations:

  • Ground plane
  • no ground plane
  • all lines traced to other side (not under board)
  • jumpers
  • perf board

copper traces I used a ground plane on this one...

pcb with wires

enter image description here

Related Questions

Trouble getting attiny85 to drive nRF24l01+

Updated May 08, 2017 01:25 AM

I2C Arbitration lost on ATtiny85

Updated February 20, 2018 17:25 PM

Attiny85 and Atmega328 for RC projects

Updated March 24, 2017 15:25 PM