From 8043a4e12cb04d0193c019b474aa5ef37fec933e Mon Sep 17 00:00:00 2001
From: Jake <jake.read@cba.mit.edu>
Date: Sat, 17 Mar 2018 14:37:51 -0400
Subject: [PATCH] reich full system walkthrough

---
 .../.vs/mkstepper-v011/v14/.atsuo             | Bin 99840 -> 101888 bytes
 .../mkstepper-v011/mkstepper-v011/stepper.c   |   5 ++++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/embedded/mkstepper-v011/.vs/mkstepper-v011/v14/.atsuo b/embedded/mkstepper-v011/.vs/mkstepper-v011/v14/.atsuo
index 0871b8c868f38dfd65e529bf3b267f96084d33da..0ab6b1ad78864c3f23a5c648dcefc4fc12802044 100644
GIT binary patch
delta 3231
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

delta 3777
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

diff --git a/embedded/mkstepper-v011/mkstepper-v011/stepper.c b/embedded/mkstepper-v011/mkstepper-v011/stepper.c
index 53d2df9..2a59f03 100644
--- a/embedded/mkstepper-v011/mkstepper-v011/stepper.c
+++ b/embedded/mkstepper-v011/mkstepper-v011/stepper.c
@@ -61,9 +61,12 @@ void stepper_targetspeed_float(stepper_t *stepper, float speed){
 
 void stepper_targetspeed_steps(stepper_t *stepper, uint32_t speed){
 	uint32_t speedmin = ((speed / (stepper->position_per_200_steps / 200)) * stepper->microsteps); // enforce no division by 0
+	// minimum of 1 step / s
+	// if speed is 0, we leave speed at minimum and set state to not step?
 	(speedmin < 1) ? speedmin = 1 : (0);
 	// timing not accurate to real-world yet
-	stepper->speed_period = 300000000 / speedmin;
+	// timer is 48MHz clock on a DIV16, so we have 3 000 000 ticks / s (333ns resolution, wow)
+	stepper->speed_period = 60000000 / speedmin;
 }
 
 void stepper_update(stepper_t *stepper){	
-- 
GitLab