Posts

Showing posts with the label PulseView

Tools for inspecting OOK

Image
14.5.2021 Tools for inspecting OOK Quhwa doorbell (OOK, PWM) 433.948 MHz CC1120 + CC Debugger + SmartRF Studio 7 Universal Radio Hacker, Audacity, PulseView CC1120 GPO0 connected to Logic Analyzer CH1 (SERIAL_RX) CC1120 GPO2 connected to Logic Analyzer CLK (SERIAL_CLK, not used - CC1120 transparent ASK/OOK mode with carrier sense)   Universal Radio Hacker   Audacity (signal recorded with URH - complex16s) Import raw data   Waveform (dB)   SmartRF Studio CC1120 register settings <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE configuration SYSTEM "C:/Program Files (x86)/Texas Instruments/SmartRF Tools/SmartRF Studio 7/config/xml/configdata.dtd"[]> <dcpanelconfiguration>     <Devicename>CC1120</Devicename>     <Description>Saved configuration data</Description>     <registersettings>         <Register>     ...

Remote controls in 868 MHz ISM band with static keycodes

Image
 13.11.2021 Remote controls in 868 MHz ISM band with static keycodes ADALM-PLUTO GNU Radio PulseView RTL_433 Old tech remote door openers which use PWM and static key codes can still be found from 868 MHz ISM band.

Python/PulseView - inspecting PWM signal

Image
 29.10.2021 Python/PulseView - inspecting PWM signal 868 MHz ISM band door opener system signal originally recorded with SDR# at 250 kHz. Conversion with SoX (http://sox.sourceforge.net/) to float format: sox SDRSharp868961000Hz_IQ.wav sdr1.f32 import numpy as np import matplotlib.pyplot as plt ##from scipy import signal ## sox SDRSharp868961000Hz_IQ.wav sdr1.f32 samples = np.fromfile('G:\sdr1.f32', np.complex64) ##f = signal.resample(samples, len(samples) * 3) sample_rate = 0.25e6 center_freq = 868.961e6 ##print(type(samples[0])) psd = np.abs(np.fft.fftshift(np.fft.fft(samples)))**2 dB_psd = 10 * np.log10(psd) f = np.linspace(sample_rate/-2, sample_rate/2, len(psd)) # time domain plt.figure(0) plt.plot(np.real(samples[::100])) plt.plot(np.imag(samples[::100])) plt.xlabel("Time") # freq domain plt.figure(1) plt.plot(f/1e6, dB_psd) plt.xlabel("Frequency [MHz]") plt.ylabel("PSD") # psd plt.figure(2) plt.psd(samples, NFFT=1024, Fs=sample_rate/1e6, Fc=...