#include <SPI.h>
#include <RF24.h>
#include <nRF24L01.h>
#include <Servo.h>
Servo RWServo;
Servo LWServo;
Servo HTServo;
Servo VTServo;
Servo RigthBLDC;
Servo LeftBLDC;
RF24 radio(7,8);
const byte address[] = "node1";
bool buttonState = 0;
int RWServoAngle = 0;
int LWServoAngle = 0;
int HTServoAngle = 0;
int VTServoAngle = 0;
int RightBLDCAngle = 0;
int LeftBLDCAngle = 0;
struct PacketData{
int RWServoAngle = 0 ;
int LWServoAngle = 0 ;
int HTServoAngle = 0 ;
int VTServoAngle = 0 ;
int RightBLDCAngle = 0;
int LeftBLDCAngle = 0;
};
PacketData data;
void setup(){
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
// pinMode(10, INPUT);
// pinMode(11, INPUT);
// pinMode(12, INPUT);
// pinMode(13, INPUT);
RWServo.attach(3);
LWServo.attach(4);
HTServo.attach(5);
VTServo.attach(6);
RigthBLDC.attach(7);
LeftBLDC.attach(8);
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, address);
radio.setPALevel(RF24_PA_MIN);
radio.startListening();
}
void loop(){
while(radio.available()){
radio.read(&data, sizeof(PacketData));
RWServoAngle = data.RWServoAngle ;
LWServoAngle = data.LWServoAngle ;
HTServoAngle = data.HTServoAngle ;
VTServoAngle = data.VTServoAngle ;
RightBLDCAngle = data.RightBLDCAngle ;
LeftBLDCAngle = data.LeftBLDCAngle ;
RWServo.write(RWServoAngle);
LWServo.write(LWServoAngle);
HTServo.write(HTServoAngle);
VTServo.write(VTServoAngle);
RigthBLDC.write(RightBLDCAngle);
LeftBLDC.write(LeftBLDCAngle);
Serial.print(" ");
Serial.print(RWServoAngle);
Serial.print(" ");
Serial.print(LWServoAngle);
Serial.print(" ");
Serial.print(HTServoAngle);
Serial.print(" ");
Serial.print(VTServoAngle);
Serial.print(" ");
Serial.print(RightBLDCAngle);
Serial.print(" ");
Serial.println(LeftBLDCAngle);
Serial.print(" ");
}
}