Nrf24L01 Software SPI

Unfortunatly My Arduino Mega 51 pin not working.
The shop said its manufacturing issue.

Can I use ICSP header pin to communicate with nrf24L01.
or Software SPI for communication?

I really need to fix this with other options
please Provide resource and Code if Possible.
Thank you.

If the processor has a bad pin the ICSP header may not work but Software SPI should without problems, just be sure to do it in the proper mode.

Can you provide any code for that?

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

// Define custom SPI pins
#define MY_CE_PIN 49
#define MY_CSN_PIN 48
#define MY_MISO_PIN 47
#define MY_MOSI_PIN 46
#define MY_SCK_PIN 45

RF24 radio(MY_CE_PIN, MY_CSN_PIN);

void setup() {
  Serial.begin(9600);
  
  // Setup custom SPI pins
  pinMode(MY_MISO_PIN, INPUT);
  pinMode(MY_MOSI_PIN, OUTPUT);
  pinMode(MY_SCK_PIN, OUTPUT);
  
  // Initialize SPI with custom pins
  SPI.begin();
  radio.begin();
  radio.setPALevel(RF24_PA_LOW);
  radio.openWritingPipe(0x7878787878LL); // Set the address for writing
}

void loop() {
  const char text[] = "Hello, world!";
  
  radio.stopListening(); // Put radio in transmit mode
  radio.write(&text, sizeof(text)); // Send data
  
  Serial.println("Data sent");
  delay(1000);
}

Is that code is correct for Software SPI?

I would highly recommend you read the Arduino Cookbook and do a few Arduino tutorials. This will better help you understand what is being given to you.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.