diff --git a/include/arch.h b/include/arch.h
index a053b585d415a096025d074c2a6548564c84a2c4..8024818ea7196c82a3f3e68ea715622c0256018f 100644
--- a/include/arch.h
+++ b/include/arch.h
@@ -11,6 +11,7 @@ class Arch {
 		void idle_loop();
 		void idle();
 		void delay_us(unsigned char const us);
+		void delay_ms(unsigned char const ms);
 };
 
 extern Arch arch;
diff --git a/include/arch/arduino-nano-168 b/include/arch/arduino-nano-168
new file mode 120000
index 0000000000000000000000000000000000000000..fd8c755b6bd221f42142452f3ab06e7efcd9e165
--- /dev/null
+++ b/include/arch/arduino-nano-168
@@ -0,0 +1 @@
+arduino-nano
\ No newline at end of file
diff --git a/src/arch/arduino-nano/arch.cc b/src/arch/arduino-nano/arch.cc
index fda518c54f9ff7d1d74f31c55ce76f130e73f888..7f18c38a4605cc2451831d2c1965e2d4853c61e9 100644
--- a/src/arch/arduino-nano/arch.cc
+++ b/src/arch/arduino-nano/arch.cc
@@ -65,7 +65,12 @@ void Arch::idle(void)
 
 void Arch::delay_us(unsigned char const us)
 {
-	__builtin_avr_delay_cycles(1600);
+	_delay_us(us);
+}
+
+void Arch::delay_ms(unsigned char const ms)
+{
+	_delay_ms(ms);
 }
 
 Arch arch;