Ultra Low quiescent current with the MCP1703A not working

My project uses the MCP1703A LDO regulator, so I can get my quiescent current down to <5-10 uA. This is the first time I’ve used the MCP1703A, so I tested it by only populating my PCB with the MCP1703A, and it’s CAPS, and an Atmega328P-AU, and it’s CAPS.
Going by Nick Gammon’s low power info at this page: Gammon Forum : Electronics : Microprocessors : Power saving techniques for microprocessors
I ran a test sketch on my chip that puts it to sleep after a few seconds. But it still uses the same amount of current, as it does when running the bare minimum sketch.
I get a reading of about 15mA. Is the MCP1703A using this current? According to the data sheet, it should only use about 3uA, when running off of a 12 volt supply, see figure 2-3 on page 5.
MCP1703A Data Sheet
I think the Atmega is going to sleep, because I added a serial print command in the loop, saying ‘sleep demo’, and it only sends the serial data to my laptop once. I’ll include my schematic, the sketch, and a photo of my board. I am really hoping this MCP1703A regular can indeed be used with only a few uA quiescent current or my whole project will be axed. :frowning: Any ideas where/why it’s using this much current? Thanks so much.

Here’s the code that I use to put it to sleep.

#include <avr/sleep.h>

const byte LED = 13;

void wake ()
{
  // cancel sleep as a precaution
  sleep_disable();
  // must do this as the pin will probably stay low for a while
  detachInterrupt (0);
}  // end of wake

void setup () 
{
  Serial.begin(9600);
  digitalWrite (2, HIGH);  // enable pull-up
  delay(1000);
}  // end of setup

void loop () 
{
  Serial.println("Sleep Demo.");
  pinMode (LED, OUTPUT);
  digitalWrite (LED, HIGH);
  delay (50);
  digitalWrite (LED, LOW);
  delay (50);
  pinMode (LED, INPUT);

  // disable ADC
  ADCSRA = 0;  

  set_sleep_mode (SLEEP_MODE_PWR_DOWN);  
  sleep_enable();

  // Do not interrupt before we go to sleep, or the
  // ISR will detach interrupts and we won't wake.
  noInterrupts ();

  // will be called when pin D3 goes low  
  attachInterrupt (1, wake, LOW);

  // turn off brown-out enable in software
  // BODS must be set to one and BODSE must be set to zero within four clock cycles
  MCUCR = bit (BODS) | bit (BODSE);
  // The BODS bit is automatically cleared after three clock cycles
  MCUCR = bit (BODS); 

  // We are guaranteed that the sleep_cpu call will be done
  // as the processor executes the next instruction after
  // interrupts are turned on.
  interrupts ();  // one cycle
  sleep_cpu ();   // one cycle

} // end of loop

Screen Shot 2014-12-20 at 8.54.25 PM.png

Cancel that help request. I just pasted sketch J from Nick webpage into my Arduino IDE and uploaded it and it worked! My multimeter which only reads down to .000 amps, showed .015 for a second, and then went to .000 Great!