nrf24l01 + old aritronics + L298N need a little help.

Ok, before I go to look at your code very closely, I have made some changes of my own that I want you to look at.

I saved a new version of the existing code I had and completely took out the motor control and replaced it with the motor control from the working wired sketch. Then I added some serial.print code to see what it does.

With a bit of tweaking, I was able to get the serial output to do exactly what I expected it to do. I was reading the input from joystick[2] and the output to LeftMSpeed for both motors. They are exactly the same. I push joystick up I seed joystick input rise to expected values. At the same time, LeftMSpeed goes from 0 - 255 in a smooth sweep exactly as I would expect from a working code.

Here's the weird part though. While the right motor does everything right, the left motor does not twitch UNTIL LeftMSpeed hits 255 in either forward or reverse direction. Then it kicks in and goes at full speed in whatever direction is required of it. I've swapped the motors left to right, I've changed out the speed controller with brand new.

Can anybody suggest what else might be the problem?

In the code you will notice that some of the serial.print stuff is commented out. That's because I'm no good at formatting the output yet so I had to output one motor at a time to get a clear reading.

/*
  ---- Receiver Code ----
  Mert Arduino Tutorial & Projects (YouTube)
  Please Subscribe for Support
*/

#include <Servo.h>    //the library which helps us to control the servo motor
#include <SPI.h>      //the communication interface with the modem
#include "RF24.h"     //the library which helps us to control the radio modem (nRF24L)

//define our L298N control pins
//Motor Left
const int enA = 10;     //enA  for speed control
const int IN1 = 2;    // IN1
const int IN2 = 3;   // IN2
//Motor RIght
const int enB = 5;       //enB for speed control
const int IN3 = 4;     // IN3
const int IN4 = 6;    // IN4
int LeftMSpeed;   // interger to capture speed
int RightMSpeed; // to capture R speed
int LMotor;
int RMotor;
int joystick[8]; //The element array holding the data from joysticks
int fail = 0; // for when we lose radio range
int servo_pos;
bool newData = false;  //
int leftAdcVal;
int leftMotorVal;
int rightAdcVal;
int rightMotorVal;
//define the servo name
Servo myServo;


RF24 radio(7, 8);     /*This object represents a modem connected to the Arduino.
                      Arguments 5 and 10 are a digital pin numbers to which signals
                      CE and CSN are connected.*/

const uint64_t pipe = 0xE8E8F0F0E1LL; //the address of the modem,that will receive data from the Arduino.



void setup() {
  Serial.begin(115200); // for outputting debuggin information to serial monitor
  delay(3000);
  Serial.println("Nrf24l01 Receiver Starting");
  pinMode(enB, OUTPUT); // RIgnt Motor speed PWM
  pinMode(enA, OUTPUT); //Left Motor Speed PWM
  pinMode(IN3, OUTPUT); //Right Forward
  pinMode(IN1, OUTPUT); //Left Forward
  pinMode(IN2, OUTPUT); //Left Backward
  pinMode(IN4, OUTPUT);//Right Backward

  //define the servo input pins
  myServo.attach(14); //A0

  radio.begin();                    //it activates the modem.
  radio.openReadingPipe(1, pipe);   //determines the address of our modem which receive data.
  radio.startListening();           //enable receiving data via modem
}

void loop() {

  if (radio.available() ) {
    radio.read( joystick, sizeof(joystick) ); // Fetch the data payload

    leftAdcVal = joystick[0];  //Reading the horizontal movement value xpos
    rightAdcVal = joystick[2];  //Reading the vertical movement value ypos
    //Serial.print("LMotor =");
    //Serial.print(joystick[0]);
    Serial.print("      RMotor =");
    Serial.print(joystick[2]);

    if (leftAdcVal < 504) {    //Rotating the left motor in clockwise direction
      LeftMSpeed = map(leftAdcVal, 504, 416, 0, 255);   //Mapping the values to 0-255 to move the motor
      digitalWrite(IN1, LOW);
      digitalWrite(IN2, HIGH);
      analogWrite(enA, LeftMSpeed);
    //  Serial.print("    LeftMSpeedR =");
    //  Serial.println(LeftMSpeed);
    }
    else if (leftAdcVal > 504 && leftAdcVal < 517) { //Motors will not move when the joystick will be at center
      digitalWrite(IN1, LOW);
      digitalWrite(IN2, LOW);
    //  Serial.print("    LSTOP =");
    //  Serial.println(LeftMSpeed);
    }

    else if (leftAdcVal > 517) {   //Rotating the left motor in anticlockwise direction
      LeftMSpeed = map(leftAdcVal, 517, 605, 0, 255);
      digitalWrite(IN1, HIGH);
      digitalWrite(IN2, LOW);
      analogWrite(enA, LeftMSpeed);
   //   Serial.print("    LeftMSpeedF =");
   //   Serial.println(LeftMSpeed);
    }

    if (rightAdcVal < 508) {        //Rotating the right motor in clockwise direction
      RightMSpeed = map(rightAdcVal, 508, 364, 0, 255);
      digitalWrite(IN3, LOW);
      digitalWrite(IN4, HIGH);
      analogWrite(enB, RightMSpeed);
      Serial.print("    RightMSpeedR =");
      Serial.println(RightMSpeed);
    }
    else if (rightAdcVal > 509 && rightAdcVal < 512) {
      digitalWrite(IN3, LOW);
      digitalWrite(IN4, LOW);
      Serial.print("    RSTOP =");
      Serial.println(LeftMSpeed);
    }

    else if (rightAdcVal > 511) {       //Rotating the right motor in anticlockwise direction
      RightMSpeed = map(rightAdcVal, 511, 652, 0, 255);
      digitalWrite(IN3, HIGH);
      digitalWrite(IN4, LOW);
      analogWrite(enB, RightMSpeed);
      Serial.print("    LeftMSpeedF =");
      Serial.println(RightMSpeed);
    }
    // for the servo motor
    servo_pos = map(joystick[7], 0, 1024, 0, 255);
    myServo.write(servo_pos);
  }
}