Posts

Showing posts with the label DTMF

ADALM-PLUTO - 2

Image
 20.8.2021 ADALM-PLUTO - 2 Oracle VM VirtualBox Ubuntu 18.04 GNU Radio 3.7 gr-iio https://wiki.analog.com/resources/tools-software/linux-software/gnuradio PlutoSDR Sink IIO context URI / PlutoSDR Source Device URI ip:pluto.local ERROR: Avahi Resolver: Failed to resolve host 'pluto.local': Timeout reached fix: ip:192.168.2.1 error: from gnuradio import io importerror cannot import name iio fix: gr-iio install cmake -DCMAKE_INSTALL_PREFIX=/usr . Occasionally GNU Radio PlutoSDR Sink stops working. Fix: restart GNU Radio       GNU Radio XMLRPC server - change GNU Radio variable value from XMLRPC client Python 2.7 XMLRPC client code import time import xmlrpclib try:     client = xmlrpclib.Server("http://localhost:8080/")     for n in range(8):         client.set_freq(500)         time.sleep(1.5)         client.set_freq(2000)   ...

CC1120 - transmit DTMF tones

Image
13.9.2020 CC1120 - transmit DTMF tones Arduino Uno + breadboard + jumper wires + CC1120 https://www.mikroe.com/ccrf-3-click SDR# + VB-Audio virtual audio cable + Multimon-ng Arduino tone library: https://github.com/bhagman/Tone ... works quite ok with just jumper wires connecting digital pin 4 & 5 to CC1120 GDO0 pin, DTMF tone 6 not working CC1120 Transparent serial mode, FSK, SERIAL_RX on IOCFG0, 437.500 MHz, TX power 3 dBm.   #include <SPI.h> #include <Tone.h> #include "cc1120.h" #define PRINT_INFO    1 #define DTMF_DURATION 200 #define DTMF_ARR_LEN  10 #define portOfPin(P)\   (((P)>=0&&(P)<8)?&PORTD:(((P)>7&&(P)<14)?&PORTB:&PORTC)) #define ddrOfPin(P)\   (((P)>=0&&(P)<8)?&DDRD:(((P)>7&&(P)<14)?&DDRB:&DDRC)) #define pinOfPin(P)\   (((P)>=0&&(P)<8)?&PIND:(((P)>7&&(P)<14)?&PINB:&PINC)) #define pinIndex(P)((uint8_t...

SmartRF Studio & CC1101/Arduino - transmit DTMF tones

Image
22.9.2020 SmartRF Studio & CC1101/Arduino - transmit DTMF tones SmartRF Studio 7, SDR#, Multimon-ng CC1101 + SmartRF04eb + Arduino Uno Works quite ok, sometimes same tone detected twice by Multimon-ng ... probably needs custom delays for each tone. CC1101 asynchronous serial TX mode. GDO0 pin configured as RX_HARD_DATA[0] and GDO2 pin configured as RX_HARD_DATA[1]. SDR#: NFM, 9 kHz filter bandwidth, squelch off, filter audio off. Arduino Uno code: CC1101 GDO0 pin connected to Arduino Uno digital pin 2 CC1101 GDO2 pin connected to Arduino Uno digital pin 3 Arduino tone library: https://github.com/bhagman/Tone #include <Tone.h> #define GDO0_PIN      2 #define GDO2_PIN      3 #define DTMF_DURATION 56 #define DTMF_ARR_LEN  10 Tone f1; Tone f2; uint16_t dtmf_f1[DTMF_ARR_LEN] = {1336, 1209, 1336, 1477, 1209, 1336, 1477, 1209, 1336, 1477}; uint16_t dtmf_f2[DTMF_ARR_LEN] = {941, 697, 697, 697, 770, 770, 770, 852, 852, 852}; void s...

Arduino/SX1278 - transmit DTMF

Image
31.7.2020 Arduino/SX1278 - transmit DTMF Arduino Uno Dragino Lora Module (SX1278) https://www.arduinolibraries.info /libraries/tone-library https://github.com/jgromes/LoRaLib   Quick and dirty. Better with some components, e.g. capacitors. Dragino Lora Module DIO2 (DCLK) is connected to pin 6. #include <Tone.h> #include <LoRaLib.h> #define DTMF_PIN1 3 #define DTMF_PIN2 4 SX1278 fsk = new LoRa; Tone freq1; Tone freq2; const int16_t DTMF_freq1[] = {1336, 1209, 1336, 1477, 1209, 1336, 1477, 1209, 1336, 1477}; const int16_t DTMF_freq2[] = {941, 697, 697, 697, 770, 770, 770, 852, 852, 852}; void setup() {   Serial.begin(9600);   freq1.begin(DTMF_PIN1);   freq2.begin(DTMF_PIN2);   Serial.print(F("Initializing ... "));   int16_t state = fsk.beginFSK();   if (state == ERR_NONE) {     Serial.println(F("success!"));   } else {     Serial.print(F("failed, code "));     Serial.println(state);  ...