diff --git a/circuit/README.md b/circuit/README.md
index 029e68219e6491c8bbb9c8bb99cc96256b11b27d..6f3b4b06c3093b842fdb83ca40a614b0c05f09d5 100644
--- a/circuit/README.md
+++ b/circuit/README.md
@@ -499,7 +499,9 @@ int main (void)
 }
 ```
 
-OK, I finally got all ports to write to their TX lines. This after some confusing bitwise or-ing of registers
+OK, I finally got all ports to write to their TX lines. This after some confusing bitwise or-ing of registers. 
+
+I'm going to check that all of the lights are on OK pins, and then call this, do the updates and get the big batch of boards out to fab.
 
 
 ## Incremental
@@ -516,6 +518,8 @@ OK, I finally got all ports to write to their TX lines. This after some confusin
 - *maybe* flip or double MK header for standoff momentary happiness?
 - LEDS are too bright
 - tag-connect w/ clips would be nice
+- disconnect or solder jumper usb data lines
+- definitely go for a reset button
 
 order
  - 1k 0805
diff --git a/circuit/images/all-leds-on.jpg b/circuit/images/all-leds-on.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..812a35ffd0e65bd0e7d66f86bcd927e35e9929b0
Binary files /dev/null and b/circuit/images/all-leds-on.jpg differ
diff --git a/circuit/images/all-leds-on_tmp14349 b/circuit/images/all-leds-on_tmp14349
new file mode 100644
index 0000000000000000000000000000000000000000..812a35ffd0e65bd0e7d66f86bcd927e35e9929b0
Binary files /dev/null and b/circuit/images/all-leds-on_tmp14349 differ
diff --git a/circuit/images/all-uart-lines.jpg b/circuit/images/all-uart-lines.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..21402b675f30b25a8b67c9eed6ac00e0396b7a4a
Binary files /dev/null and b/circuit/images/all-uart-lines.jpg differ
diff --git a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/atsams70-tinyrouter.bin b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/atsams70-tinyrouter.bin
index 39ca720267b5e9a5163bbe99c800f863dfe88f41..7dde925de3b7221a076e129e6edd22a0e498bb19 100644
Binary files a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/atsams70-tinyrouter.bin and b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/atsams70-tinyrouter.bin differ
diff --git a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/src/main.o b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/src/main.o
index 5c8f2cde9356c16c882d35529f7adf4101e98628..343e0f5f64433b052c309a008c2fe09197717c4f 100644
Binary files a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/src/main.o and b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/Debug/src/main.o differ
diff --git a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/src/main.c b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/src/main.c
index f81d3a30d5d9b8daa4534be91c24662ad23550a7..92045a5c039b33891f9bbeadc96788ba890bdffd 100644
--- a/embedded/atsams70-tinyrouter/atsams70-tinyrouter/src/main.c
+++ b/embedded/atsams70-tinyrouter/atsams70-tinyrouter/src/main.c
@@ -36,20 +36,28 @@ pin_t stlb;
 pin_t stlr;
 pin_t button;
 
+pin_t p1lr;
+pin_t p1lg;
+pin_t p1lb;
+
+pin_t p2lr;
+pin_t p2lg;
+pin_t p2lb;
+
 pin_t p3lr;
+pin_t p3lg;
+pin_t p3lb;
+
+pin_t p4lr;
+pin_t p4lg;
+pin_t p4lb;
 
 tinyport_t tp1;
 tinyport_t tp2;
 tinyport_t tp3;
 tinyport_t tp4;
 
-int main (void)
-{
-	/* Insert system clock initialization code here (sysclk_init()). */
-
-	board_init();
-	sysclk_init();
-	
+void peripheralsetup(void){
 	PMC->PMC_PCER0 = 1 << ID_PIOA;
 	PMC->PMC_PCER0 = 1 << ID_PIOD;
 	PMC->PMC_PCER0 = 1 << ID_UART0; // UART0
@@ -82,20 +90,74 @@ int main (void)
 	//PIOD->PIO_ABCDSR[0] = ~PIO_PER_P19;
 	PIOD->PIO_ABCDSR[1] |= PIO_PER_P18;
 	PIOD->PIO_ABCDSR[1] |= PIO_PER_P19;
-	
-	
-	p3lr = pin_new(PIOD, PIO_PER_P10);
-	pin_output(&p3lr);
+}
+
+void setupstatus(void){
 	
 	stlb = pin_new(PIOA, PIO_PER_P1);
 	pin_output(&stlb);
-	
 	stlr = pin_new(PIOD, PIO_PER_P11);
 	pin_output(&stlr);
-	
 	button = pin_new(PIOA, PIO_PER_P15);
 	pin_input(&button);
 	
+	p1lr = pin_new(PIOA, PIO_PER_P22);
+	pin_output(&p1lr);
+	p1lg = pin_new(PIOA, PIO_PER_P8);
+	pin_output(&p1lg);
+	p1lb = pin_new(PIOA, PIO_PER_P13);
+	pin_output(&p1lb);
+	
+	p2lr = pin_new(PIOA, PIO_PER_P30);
+	pin_output(&p2lr);
+	p2lg = pin_new(PIOD, PIO_PER_P9);
+	pin_output(&p2lg);
+	p2lb = pin_new(PIOA, PIO_PER_P28);
+	pin_output(&p2lb);
+	
+	p3lr = pin_new(PIOD, PIO_PER_P10);
+	pin_output(&p3lr);
+	p3lg = pin_new(PIOA, PIO_PER_P0);
+	pin_output(&p3lg);
+	p3lb = pin_new(PIOD, PIO_PER_P15);
+	pin_output(&p3lb);
+	
+	p4lr = pin_new(PIOD, PIO_PER_P13);
+	pin_output(&p4lr);
+	p4lg = pin_new(PIOD, PIO_PER_P14);
+	pin_output(&p4lg);
+	p4lb = pin_new(PIOA, PIO_PER_P27);
+	pin_output(&p4lb);
+}
+
+void clearallstatus(void){
+	pin_clear(&p1lr);
+	pin_clear(&p1lg);
+	pin_clear(&p1lb);
+
+	pin_clear(&p2lr);
+	pin_clear(&p2lg);
+	pin_clear(&p2lb);
+
+	pin_clear(&p3lr);
+	pin_clear(&p3lg);
+	pin_clear(&p3lb);
+
+	pin_clear(&p4lr);
+	pin_clear(&p4lg);
+	pin_clear(&p4lb);
+}
+
+int main (void)
+{
+	/* Insert system clock initialization code here (sysclk_init()). */
+
+	board_init();
+	sysclk_init();
+	
+	peripheralsetup();
+	setupstatus();
+	
 	tp1 = tinyport_new(UART2, PIOD, PERIPHERAL_C, PIO_PER_P25, PIO_PER_P26);
 	tp2 = tinyport_new(UART0, PIOA, PERIPHERAL_A, PIO_PER_P9, PIO_PER_P10);
 	tp3 = tinyport_new(UART1, PIOA, PERIPHERAL_C, PIO_PER_P5, PIO_PER_P4);
@@ -110,16 +172,14 @@ int main (void)
 		if(pin_get_state(&button)){ // hi, button is not pressed
 			pin_clear(&stlb);
 			pin_set(&stlr);
-			pin_clear(&p3lr);
+			clearallstatus();
 			tp_putchar(&tp1, 85);
 			tp_putchar(&tp2, 85);
 			tp_putchar(&tp3, 85);
 			tp_putchar(&tp4, 85);
-			pin_set(&p3lr);
 		} else {
 			pin_set(&stlb);
 			pin_clear(&stlr);
-			pin_set(&p3lr);
 		}
 	}
 }