CC1101 Module and Arduino Uno R3

Hey,

I am trying to find a way connecting my CC1101 transceiver Module (E07-M1101d) to my Arduino Uno R3 but can't find anything about the wiring and coding. Can someone help me?

Read the documentation that came with the module, it should explain how to use it.
If there is something in the documentation you don't understand, just ask.

I didnt get any documentation I bought it cheap from Aliexpress

The datasheet can be found with google.

google “cc1101 arduino” gave many hits including wiring and coding, I have no time to dig through all hits for you, sorry. There appears at least one library for it.

As the chip looks interesting, I did one click

https://www.easybom.com/blog/a/cc1101-module-pinout-datasheet-arduino-examples

can you give a link to the specific CC1101 module you are using?

be careful the CC1101 data sheet specifies Supply voltage maximum 3.9V
and Voltage on any digital pin VDD + 0.3, max 3.9

if connecting to a UNO which uses 5V logic you require level shifters if the CC1101 module does not have them

Then we can only guess how to connect it.
Can you provide a link to the website where you purchased the module.

not got an example of the CC1101 with Uno R3 (and would not attempt to connect a CC1101 using 3.3.V logic to UNO 5V logic)

but following is an example using an ESP32 host with the Arduino library for CC1101 transceiver

transmitter (note the GPIO pin configuration)

// ESP32 CC1101 transmit test using library https://www.arduinolibraries.info/libraries/cc1101

// from File>Examples>CC1101>HelloWorld>Transmit

#include <Arduino.h>
#include <cc1101.h>

using namespace CC1101;

//  CC1101 to ESP32 GPIO pins
//  CC1101 SPI_CS    5
//  CC1101 SPI_CLK  18
//  CC1101 SPI_MISO 19
//  CC1101 SPI_MOSI 23
//  CC1101 GD0      16
//  CC1101 GD2      17
//  CC1101 VCC      3.3V
//  CC1101 GND      GND

//   Radio(uint8_t cs, uint8_t clk = PIN_UNUSED, uint8_t miso = PIN_UNUSED,
//       uint8_t mosi = PIN_UNUSED, uint8_t gd0 = PIN_UNUSED, uint8_t gd2 = PIN_UNUSED)
Radio radio(/* cs pin */ 5, 18, 19, 23, 16, 17);

void setup() {
  Serial.begin(115200);
  delay(3000);
  Serial.println(F("Starting ..."));
  delay(1000);

  if (radio.begin() == STATUS_CHIP_NOT_FOUND) {
    Serial.println(F("Chip not found!"));
    while (true) { delay(1000); }
  }

  radio.setModulation(MOD_ASK_OOK);
  radio.setFrequency(433.8);
  radio.setDataRate(10);
  radio.setOutputPower(10);

  radio.setPacketLengthMode(PKT_LEN_MODE_VARIABLE);
  radio.setAddressFilteringMode(ADDR_FILTER_MODE_NONE);
  radio.setPreambleLength(64);
  radio.setSyncWord(0x1234);
  radio.setSyncMode(SYNC_MODE_16_16);
  radio.setCrc(true);
  radio.setDataWhitening(true);
  radio.setManchester(false);
  radio.setFEC(false);
}

int counter = 0;

void loop() {
  String data = "Hello #" + String(counter++);

  Serial.print(F("Transmitting: "));
  Serial.print(data);
  Serial.print(F(" "));
  Status status = radio.transmit((uint8_t *)data.c_str(), data.length());

  if (status == STATUS_OK) {
    Serial.println(F("[OK]"));
  } else {
    Serial.print("[ERROR ");
    Serial.print(status);
    Serial.println("]");
  }

  delay(1000);
}

receiver

// ESP32 CC1101 receive test using library https://www.arduinolibraries.info/libraries/cc1101

// from File>Examples>CC1101>HelloWorld>Receive

#include <Arduino.h>
#include <cc1101.h>

using namespace CC1101;

//  CC1101 to ESP32 GPIO pins
//  CC1101 SPI_CS    5
//  CC1101 SPI_CLK  18
//  CC1101 SPI_MISO 19
//  CC1101 SPI_MOSI 23
//  CC1101 GD0      16
//  CC1101 GD2      17
//  CC1101 VCC      3.3V
//  CC1101 GND      GND

//   Radio(uint8_t cs, uint8_t clk = PIN_UNUSED, uint8_t miso = PIN_UNUSED,
//       uint8_t mosi = PIN_UNUSED, uint8_t gd0 = PIN_UNUSED, uint8_t gd2 = PIN_UNUSED)
Radio radio(/* cs pin */ 5, 18, 19, 23, 16, 17);

void setup() {
  Serial.begin(115200);
  delay(3000);
  Serial.println(F("Starting ..."));
  delay(1000);

  if (radio.begin() == STATUS_CHIP_NOT_FOUND) {
    Serial.println(F("Chip not found!"));
    while (true) { delay(1000); }
  }

  radio.setModulation(MOD_ASK_OOK);
  radio.setFrequency(433.8);
  radio.setDataRate(10);
  radio.setOutputPower(10);

  radio.setPacketLengthMode(PKT_LEN_MODE_VARIABLE);
  radio.setAddressFilteringMode(ADDR_FILTER_MODE_NONE);
  radio.setPreambleLength(64);
  radio.setSyncWord(0x1234);
  radio.setSyncMode(SYNC_MODE_16_16);
  radio.setCrc(true);
  radio.setDataWhitening(true);
  radio.setManchester(false);
  radio.setFEC(false);
}

void loop() {
  char buff[32];
  size_t read;

  Serial.println(F("Receiving ..."));
  Status status = radio.receive((uint8_t *)buff, sizeof(buff) - 1, &read);

  if (status == STATUS_OK) {
    buff[read] = '\0';

    Serial.print(F("Data: "));
    Serial.println(buff);

    Serial.print(F("Length: "));
    Serial.println(read);

    Serial.print(F("RSSI: "));
    Serial.print(radio.getRSSI());
    Serial.println(F(" dBm"));

    Serial.print(F("LQI: "));
    Serial.println(radio.getLQI());
  } else if (status == STATUS_CRC_MISMATCH) {
    Serial.println(F("CRC mismatch!"));
  } else {
    Serial.print(F("Error: "));
    Serial.println(status);
  }

  Serial.println();
}

transmitter serial monitor output

Starting ...
Transmitting: Hello #0 [OK]
Transmitting: Hello #1 [OK]
Transmitting: Hello #2 [OK]
Transmitting: Hello #3 [OK]
Transmitting: Hello #4 [OK]
Transmitting: Hello #5 [OK]
Transmitting: Hello #6 [OK]
Transmitting: Hello #7 [OK]
Transmitting: Hello #8 [OK]
Transmitting: Hello #9 [OK]
Transmitting: Hello #10 [OK]
Transmitting: Hello #11 [OK]
Transmitting: Hello #12 [OK]
Transmitting: Hello #13 [OK]
Transmitting: Hello #14 [OK]
Transmitting: Hello #15 [OK]
Transmitting: Hello #16 [OK]
Transmitting: Hello #17 [OK]
Transmitting: Hello #18 [OK]
....
Transmitting: Hello #654 [OK]
Transmitting: Hello #655 [OK]
Transmitting: Hello #656 [OK]
Transmitting: Hello #657 [OK]
Transmitting: Hello #658 [OK]
Transmitting: Hello #659 [OK]
Transmitting: Hello #660 [OK]
Transmitting: Hello #661 [OK]
Transmitting: Hello #662 [OK]
Transmitting: Hello #663 [OK]
Transmitting: Hello #664 [OK]
Transmitting: Hello #665 [OK]
Transmitting: Hello #666 [OK]
Transmitting: Hello #667 [OK]
Transmitting: Hello #668 [OK]

receiver serial monitor output

Receiving ...
Data: Hello #1
Length: 8
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #2
Length: 8
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #3
Length: 8
RSSI: -31 dBm
LQI: 24

Receiving ...
Data: Hello #4
Length: 8
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #5
Length: 8
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #6
Length: 8
RSSI: -31 dBm
LQI: 2

Receiving ...
Data: Hello #7
Length: 8
RSSI: -31 dBm
LQI: 24

Receiving ...
Data: Hello #8
Length: 8
RSSI: -31 dBm
LQI: 19

Receiving ...
Data: Hello #9
Length: 8
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #10
Length: 9
RSSI: -32 dBm
LQI: 8

Receiving ...
Data: Hello #11
Length: 9
RSSI: -30 dBm
LQI: 2

Receiving ...
Data: Hello #12
Length: 9
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #13
Length: 9
RSSI: -30 dBm
LQI: 0

Receiving ...
Data: Hello #14
Length: 9
RSSI: -30 dBm
LQI: 0

…..

Receiving ...
Data: Hello #693
Length: 10
RSSI: -18 dBm
LQI: 1

Receiving ...
Data: Hello #694
Length: 10
RSSI: -17 dBm
LQI: 1

Receiving ...
Data: Hello #695
Length: 10
RSSI: -18 dBm
LQI: 1

Receiving ...
Data: Hello #696
Length: 10
RSSI: -18 dBm
LQI: 1

Receiving ...
Data: Hello #697
Length: 10
RSSI: -17 dBm
LQI: 1

may give you some ideas
e.g. connect to UNO SPI pins
D13 SPI CLK
D12 SPI MISO
D11 SPI MOSI
D10 SPI CS
and select two spare pins for GD0 and GD2

remember to use a level converter to interface the UNO 5V logic to the CC1101 3.3V logic

There are lot of interesting codes around, but you need 3.3V arduino or better Esp32.
If not possible, then use level shifters between Uno and cc1101.
What are you willing to do with it?