APC220 Radio; Arduino
Introduction
APC220 is a transmitter--receiver. Use TTL/USB converter in computer.
Note the pins:
- No pins in J2 and J3: Programming is possible
- Pins on J2-1 and J2-2: transmit using radio
- Pins on J3-1 and J3-2: save data to SD card
Theory
Frequencies
433.050 MHz - 434.800 MHZ.
RF Magic
Rf Magic http://www.dfrobot.com/image/data/TEL0005/rfmagic.rar can be used but it unreliable. You should use Arduino to program radio.
USB-TTL converter
SiLabs.com CP210x USB-UART VCP drivers. Run CP210xVCPInstaller_x64 at https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers#windows
APC220 Pinouts
- VIN: Module power supply
- GND: Ground
- RX: Data receive through serial protocol
- TX: Data transmit through serial protocol
- SET: Mode Setting
- AUX: For other commands
- EN: Enable module
Use Arduino's pins GND, 8, 9, 10, 11, 12 and 13.
It only need four pins connect with Arduino board.
Note: Disconnect the RX and TX pin with Arduino before download program, otherwise the program download fails.
Arduino
Library: https://github.com/PaulStoffregen/SoftwareSerial
apc220cfg https://learn.andoyaspace.no/wp-content/uploads/2016/11/apc220Cfg.zip
J2 & J3
/*
Modified on March 09, 2021
Modified by MohammedDamirchi from https://github.com/PaulStoffregen/SoftwareSerial
Home
https://electropeak.com/learn/interfacing-apc220-rf-transceiver-data-communication-module-with-arduino/
*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// set the data rate for the SoftwareSerial port
mySerial.begin(9600);
}
void loop() { // run over and over
if (mySerial.available()) {
Serial.write(mySerial.read());
}
if (Serial.available()) {
mySerial.write(Serial.read());
}
}
Terminal program
Br@y++:n Terminal v.1.9b https://sites.google.com/site/terminalbpp/