Stepper wont work with Mysensors
-
Hello,
I try to run a stepper 28byj-48 with driver in mysensors. As soon as I Mysensors.h activate the stepper motor will not run. Can anyone help me what I do wrong. I use Int 4,5,6,7, above. Also at 3,4,5,6 not work I put too // for Mysensors the engine is running normally. Also burn without Mysensors all 4 LEDs. With Mysensors burn only 3 LEDs.
-
Hi,
we need- Schematic
- Code
- Relevant links to the used parts i.e. datasheets
-
Here the image and the code that i wil use it a start. I am new to programm arduino.
Schematic that i use this works without Mysensors.h (see the sketch)
http://engyfun.blogspot.nl/2015/02/here-is-source-code-for-our-28byj48.html
// =========================== Zet de serielle monitor aan ====================================== #define MY_DEBUG // **************************** Einde Debug ***************************************************** // =========================== Radio instelling RFM 69 =========================================== //#define MY_RADIO_NRF24 #define MY_RADIO_RFM69 //=========================== Node en Child infomatie ============================================= #define MY_NODE_ID 17 #define CHILD_ID 2 //************************************************************************************************** //***************************** Einde Radio setup *************************************************** #include <SPI.h> //#include <MySensors.h> #include <AccelStepper.h> #define HALFSTEP 8 // ============================ Motor pin definitions ================================================== #define motorPin1 4 // IN1 on the ULN2003 driver 1 #define motorPin2 5 // IN2 on the ULN2003 driver 1 #define motorPin3 6 // IN3 on the ULN2003 driver 1 #define motorPin4 7 // IN4 on the ULN2003 driver 1 int CHILD_CURTAIN_ID =4; // Initialize with pin sequence IN1-IN3-IN2-IN4 for using the AccelStepper with 28BYJ-48 AccelStepper stepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4); //================================================================================================== MyMessage msg_S_COVER_U(CHILD_CURTAIN_ID, V_UP); MyMessage msg_S_COVER_D(CHILD_CURTAIN_ID, V_DOWN); MyMessage msg_S_COVER_S(CHILD_CURTAIN_ID, V_STOP); MyMessage msg(CHILD_CURTAIN_ID,V_UP); //************************************************************************************************* // ============================== Begin Setup =========================================================== void setup() { stepper1.setMaxSpeed(18000.0); stepper1.setAcceleration(100.0); stepper1.setSpeed(400); stepper1.moveTo(20000); } //****************************----- (Einde setup )---******************************************************** // ==============================---- Begin Loop ----======================================================== void loop() { //Change direction when the stepper reaches the target position if (stepper1.distanceToGo() == 0) { stepper1.moveTo(-stepper1.currentPosition()); } stepper1.run(); } // **************************** Eind Loop ==================================================================```) Sorry i can get the code not in a nice black box.
-
Code looks good so far... (you misplaced the starting and ending ``` to mark code in a black box).
What I can tell you from own, painful experience: If anything fails with the radio setup (also registration I think), loop() will never be executed. I was testing a LED library, working perfectly without MySensors.h but not doing anything with MySensors.h included.
Later I realized my controller was switched off..after I switched it on everything worked. So ensure that MySensors can communicate properly. That means implementing presentation() and all other functions..
-
Thanks i give it a try.
-
@ Pansen It work now!
When connect the radio then the 4e led and stepper is working.
Thanks for the help.