Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
piraterf — PIrateRF transforma tu Raspberry Pi Zero W en un generador de señales RF portátil que crea su propio punto de acceso WiFi. Controla todo, desde transmisiones de FM hasta modos digitales, a través de tu navegador: ¡piratea las ondas desde cualquier lugar! 📡⚡ | Kitploit
Herramientas/GitHubGitHub/psyb0t/piraterf
Seguridad de Sistemas EmbebidosUtilidades de Propósito GeneralOSINT (Inteligencia de Fuentes Abiertas)ExplotaciónHerramientas RFID/NFCFuzzingSeguridad InalámbricaPruebas de PenetraciónSeguridad de Hardware e IoTAprendizaje y EducaciónRed Teaming
27429hace 18 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
GitHub
psyb0t/piraterf

piraterf

PIrateRF transforma tu Raspberry Pi Zero W en un generador de señales RF portátil que crea su propio punto de acceso WiFi. Controla todo, desde transmisiones de FM hasta modos digitales, a través de tu navegador: ¡piratea las ondas desde cualquier lugar! 📡⚡

Ver RepositorioSitio web

🏴‍☠️ PIrateRF - Plataforma de Transmisión Radioeléctrica Definida por Software

PIrateRF

PIrateRF transforma tu Raspberry Pi Zero W en un generador de señales RF portátil que crea su propio punto de acceso WiFi. Controla desde emisiones FM hasta modos digitales a través de tu navegador: ¡hackea las ondas desde cualquier lugar! 📡⚡

🎬 Haz clic aquí para ver el video promocional de PIrateRF

📺 Haz clic aquí para ver el video demostrativo de PIrateRF


⚠️ AVISO LEGAL

PIrateRF está diseñado para experimentación amateur y educación radioeléctrica, incluyendo pruebas seguras en interiores sin antenas externas. Construido para ingenieros que entienden que las buenas prácticas de RF importan más que los límites administrativos arbitrarios. Los usuarios son responsables de cumplir con todas las regulaciones locales de RF y requisitos de licencia. ¡No soy responsable de ninguna de tus estúpidas decisiones!

Todas las imágenes de demostración y pruebas en esta documentación se realizaron en interiores sin antena, con un alcance máximo de aproximadamente 5 metros.


📋 Tabla de Contenidos

  • 🎯 12 Modos de Transmisión Diferentes
  • 🚀 Guía de Configuración Rápida
    • Requisitos Previos
    • Opción 1: Imagen Preconstruida (Recomendada)
    • Opción 2: Configuración Manual
      • 🚨 IMPORTANTE: ¡Configura Pi Zero Primero!
      • 1. Configuración Inicial
      • 2. Configuración Completa de Pi
      • 3. Conectar y Usar
  • 🎉 Modo Tripulación Pirata
  • 🔌 Configuración de Antena
  • 📡 Modos de Transmisión Explicados
    • 🎵 Estación FM
    • 🎙️ Transmisión en Vivo con Micrófono
    • 📟 FT8
    • 📠 RTTY
    • 📊 FSK
    • 📱 POCSAG
    • 📻 Código Morse
    • 🎛️ Onda Portadora
    • 🌊 Barrido de Frecuencia
    • 📺 SSTV
    • 🎨 Pintura Espectral
    • 📡 IQ
  • 💾 Sistema de Presets
  • 🛠️ Comandos de Desarrollo
    • Desarrollo Local
    • Gestión de Pi
  • 📁 Estructura del Proyecto
  • 🏴‍☠️ Aviso Legal y de Seguridad
    • Licencia de Radioaficionado Requerida
    • Regulaciones de Frecuencia
    • Requisitos de Hardware (para uso adecuado)
    • Restricciones Geográficas
    • 🏠 Pruebas y Experimentación en Interiores
  • 📡 Frecuencias Operativas Estándar
    • Bandas de Aficionados HF (3-30 MHz)
    • Bandas de Aficionados VHF/UHF
    • Frecuencias Estándar FT8 (modo USB)
    • Frecuencias Estándar RTTY (modo USB)
    • Frecuencias Estándar SSTV
    • Separaciones Estándar de Repetidores FM
  • 🔗 Dependencias Principales
  • 📝 Licencia
  • 📋 Registro de Cambios
  • TODO

🎯 12 Diferentes Modos de Transmisión

  • 🎵 Estación FM - Transmisión FM completa con metadatos RDS, listas de reproducción y procesamiento de audio
  • 🎙️ Transmisión en Vivo con Micrófono - Transmisión en tiempo real desde el micrófono con modulación configurable (AM/DSB/USB/LSB/FM/RAW)
  • 📟 FT8 - Modo digital de largo alcance para comunicación con señal débil en bandas HF
  • 📠 RTTY - Radioteletipo usando código Baudot y modulación FSK
  • 📊 FSK - Modulación por desplazamiento de frecuencia para transmisión de datos digitales
  • 📱 POCSAG - Sistema de mensajería para buscas digitales
  • 📻 Código Morse - Transmisión CW con WPM configurable
  • 🎛️ Onda Portadora - Generación de portadora simple para pruebas
  • 🌊 Barrido de Frecuencia - Barridos RF para pruebas y análisis de antenas
  • 📺 SSTV - Transmisión de imágenes de televisión de barrido lento
  • 🎨 Pintura Espectral - Convertir imágenes en arte espectral RF
  • 📡 IQ - Reproducción de muestras IQ sin procesar para reproducción y prueba de señales

Todo controlado a través de un punto de acceso WiFi independiente: conecta cualquier dispositivo y comienza a transmitir como el rebelde RF que estabas destinado a ser. ¡Perfecto para operaciones en aguas internacionales y regiones con políticas de espectro más... flexibles!

🚀 Guía de Configuración Rápida

Requisitos Previos

  • Raspberry Pi Zero 1 W (modelo original, recomendado) con tarjeta SD de 4GB+
    • Otros modelos de Pi: rpitx funciona en Pi 1, 2, 3, 3B+, Zero, Zero W y Pi 4 — pero los scripts de despliegue de PIrateRF, la configuración del AP WiFi, la compilación cruzada y la imagen preconstruida están diseñados específicamente para la Pi Zero 1 W. Otras placas pueden funcionar con configuración manual, pero no han sido probadas.

Opción 1: Imagen Preconstruida (Recomendada)

Sáltate todo el rollo de compilación y ve directo al caos RF:

  1. Descarga la imagen preconstruida: Imagen PIrateRF v2025-11-23
  2. Graba en la tarjeta SD usando:
    • Raspberry Pi Imager (recomendado): Selecciona "Usar imagen personalizada" y elige el archivo .img descargado
    • Línea de comandos: sudo dd if=piraterf_2025-11-23_22-18-49.img of=/dev/sdX bs=4M status=progress (reemplaza /dev/sdX con tu tarjeta SD)
  3. Arranca la Pi Zero W y conéctate al WiFi: "🏴‍☠️📡" (contraseña: "FUCKER!!!")
  4. Abre el navegador: https://piraterf.local ¡y empieza a transmitir inmediatamente!

Configuración por Defecto:

  • Punto de Acceso WiFi: SSID "🏴‍☠️📡", Contraseña "FUCKER!!!"
  • Acceso SSH: Usuario fucker, Contraseña FUCKER, Nombre de Host piraterf.local
  • Interfaz Web: https://piraterf.local

Opción 2: Configuración Manual

🚨 IMPORTANTE: ¡Configura Pi Zero Primero!

Antes de hacer CUALQUIER otra cosa, consigue que tu maldita Pi Zero W esté conectada y accesible por SSH. Sigue este tutorial que realmente funciona:

👉 Tutorial de Conexión USB para Pi Zero W

Esto conectará tu Pi Zero vía USB con acceso SSH para que puedas desplegar PIrateRF en el pequeño cabrón.

🌐 COMPARTIR INTERNET REQUERIDO: Después de que la conexión USB funcione, DEBES compartir internet desde tu computadora a la Pi Zero. Los scripts de configuración necesitan descargar paquetes y dependencias: sin internet, no hay caos RF.

Configurar el uso compartido de Internet en Ubuntu/Linux:

  1. Configurar conexión como compartida: En la Configuración de Red de Ubuntu, encuentra la conexión USB (generalmente usb0), haz clic en ella, ve a la configuración de IPv4, y cambia el método de "Solo enlace local" a "Compartida con otros ordenadores"

  2. Detener servicios Docker (interfieren con la red):```bash sudo systemctl stop docker.socket sudo systemctl stop docker

root@kitploit:~
3. **Reiniciar NetworkManager**:```bash
sudo systemctl restart NetworkManager
  1. Configurar las reglas de iptables (reemplace usb0 y enp5s0 con sus interfaces reales):```bash sudo iptables -A FORWARD -i usb0 -o enp5s0 -j ACCEPT sudo iptables -A FORWARD -i enp5s0 -o usb0 -j ACCEPT sudo iptables -t nat -A POSTROUTING -s 10.42.0.0/24 -o enp5s0 -j MASQUERADE
root@kitploit:~
5. **Pruébalo**: Conéctate por SSH a tu Raspberry Pi con `ssh [email protected]` (o el [email protected] que hayas configurado) y ejecuta `ping 8.8.8.8` - si funciona, ¡estás listo para causar algunos estragos en RF!

**Encuentra tus interfaces**: Usa `ip link show` para ver `usb0` (conexión a la Pi) y tu interfaz de internet principal.

### 1. Configuración inicial```bash
# Clone the repository
git clone https://github.com/psyb0t/piraterf.git
cd piraterf

# Configure your Pi settings
nano scripts/pi_config.sh
# Set: PI_USER, PI_HOST, PI_PASS, AP_SSID, AP_PASSWORD

Configuración de ejemplo (modifica para que coincida con tu configuración de la Pi):```bash PI_USER="fucker" # Pi username PI_HOST="piraterf.local" # Pi hostname/IP PI_PASS="FUCKER" # Pi password

AP_SSID="🏴‍☠️📡" # WiFi AP name AP_PASSWORD="FUCKER!!!" # WiFi AP password AP_CHANNEL="7" # WiFi channel (1-14) AP_COUNTRY="US" # Country code

root@kitploit:~
### 2. Configuración completa de Pi```bash
# Run the full automated setup
make pi

Este comando:

  • Instalar rpitx y dependencias
  • Configurar punto de acceso WiFi
  • Construir e implementar PIrateRF
  • Instalar servicio systemd
  • Reiniciar en modo pirata completo 🏴‍☠️

3. Conectar y Usar

  1. Conectar a WiFi: Tu SSID configurado (por defecto: "🏴‍☠️📡")
  2. Abrir navegador: https://piraterf.local
  3. Seleccionar modo de transmisión y empezar a emitir como un auténtico pirata RF

🎉 Modo Tripulación Pirata

Conecta múltiples dispositivos al punto de acceso de PIrateRF y todos acceden a la interfaz web simultáneamente. Aunque solo una transmisión puede ejecutarse a la vez (porque GPIO no jode compartiendo), todos los dispositivos conectados ven el estado de la transmisión en tiempo real, los registros de salida, y pueden turnarse para controlar las transmisiones RF. ¡Perfecto para joder con amigos en una orgía de ondas de radio! 📡💥

Características Multi-Dispositivo:

  • Control compartido: Cualquier dispositivo puede iniciar/detener transmisiones
  • Estado en vivo: Todos los dispositivos ven el progreso de la transmisión en tiempo real
  • Transmisión de salida: Registros de transmisión RF visibles para todos
  • Caos por turnos: Pasa el control entre dispositivos para emisión colaborativa

🔌 Configuración de Antena

Conecta tu antena a GPIO 4 (Pin Físico 7) en la Pi Zero W:

  • Sin antena: Señal extremadamente débil contenida dentro de tu hogar - perfecto para caos seguro sin joder a los vecinos
  • Cable corto (10-20 cm): Alcance mínimo para experimentación en interiores
  • Antena de cable (75 cm): Mayor alcance pero los armónicos de onda cuadrada viajan más lejos de lo previsto - mantén esta mierda en interiores
  • Filtro pasa-bajos + antena: Para transmisión exterior adecuada (consigue tu puta licencia primero)
  • Filtro pasa-bajos + amplificador + antena: Para máximo alcance y máximo caos (la Pi emite milivatios por defecto)

⚠️ ADVERTENCIA: La Raspberry Pi emite ondas cuadradas con armónicos en todo el espectro. Para una transmisión exterior adecuada, DEBES usar filtros pasa-bajos apropiados para suprimir emisiones espurias y cumplir con las regulaciones RF. Sin filtrado, estarás transmitiendo en múltiples frecuencias simultáneamente.

📡 Modos de Transmisión Explicados

🎵 Estación FM

FM Station

Transmisión FM completa con soporte RDS:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en MHz
  • Archivo de Audio: Subir MP3/WAV/FLAC/OGG o seleccionar archivos procesados

    Proceso de Subida: Los archivos se convierten automáticamente mediante FFmpeg a formato WAV 48kHz/16 bits/mono y se guardan en ./files/audio/uploads/

  • Constructor de Lista de Reproducción: Herramienta UI para combinar múltiples archivos de audio y SFX en un solo WAV usando Sox
  • Ajustes RDS:
    • Código PI: Identificador de estación de 4 caracteres
    • Nombre PS: Nombre de estación de 8 caracteres
    • Texto de Radio: Mensaje desplazable de 64 caracteres
  • Modo de Reproducción: Alternar entre "reproducir una vez" y "bucle"
  • Pistas Intro/Outro: Pistas SFX de introducción y final
  • Corrección de Reloj PPM: Ajuste fino de precisión de frecuencia
  • Tiempo de Espera: Parada automática después de segundos especificados (0 = sin tiempo de espera)
  • Grabación de Micrófono: Grabar audio directamente a través de la interfaz del navegador y guardar como WAV

Recepción:

  • Demodulación: WFM (FM de banda ancha)
  • Señal RDS: La transmisión incluye tres señales visibles:
    • Señal principal: Contiene el audio/música
    • Dos señales RDS paralelas: Ubicadas en un desplazamiento de frecuencia fijo desde la portadora principal, que contienen metadatos de la estación
  • Decodificación RDS: SDR++ (fork sdrpp-brown) incluye un decodificador RDS incorporado (sin necesidad de plugins) que puede decodificar el código PI, nombre PS y texto de radio

Aplicaciones: Radiodifusión subterránea, transmisión de música, podcasts, radio comunitaria, estaciones de radio pirata, hacer rickroll a barrios enteros

FM Station Demo

🎙️ Transmisión en Vivo con Micrófono

Live Microphone Broadcast

Transmisión en tiempo real de micrófono con modulación configurable:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Tasa de Muestreo: Tasa de muestreo de audio (por defecto 48000 Hz)
  • Tamaño de Buffer: Buffer de audio del navegador (1024-16384 muestras)
    • 1024: Baja latencia, puede fallar
    • 4096: Configuración equilibrada por defecto
    • 16384: Máxima calidad, mayor latencia
  • Modulación: AM, DSB, USB, LSB, FM, RAW (nota: USB/LSB son lentos en Pi Zero)
  • Ganancia: Multiplicador de ganancia de audio (por defecto 1.0)
  • Procesamiento en tiempo real: El navegador captura el micrófono, transmite mediante WebSocket a un socket unix que se canaliza a rpitx

Recepción:

  • Demodulación: Usa el mismo modo de modulación que seleccionaste para la transmisión (AM, DSB, USB, LSB, FM o RAW)

Aplicaciones: Comentarios en vivo, comunicaciones de emergencia, redes de radioaficionados, transmisión en tiempo real, transmitir tus pedos, salir en vivo por radio mientras estás en el moshpit

Live Microphone Broadcast Demo

📟 FT8

FT8

Modo digital de señal ultra-débil para HF DX:

Opciones de Configuración:

  • Frecuencia: Frecuencia base en Hz (ej. 14074000 para 20m)
  • Mensaje: Texto del mensaje FT8 (ej. "CQ CA0ALL JN06")
  • Corrección de Reloj PPM: Ajuste fino de precisión de frecuencia
  • Desplazamiento de Frecuencia: 0-2500 Hz dentro de la sub-banda FT8 (por defecto 1240)
  • Intervalo de Tiempo: Elegir intervalo de transmisión de 15 segundos (0, 1 o 2)
  • Modo Repetir: Transmisión continua cada 15 segundos

Recepción:

  • Demodulación: Modo USB
  • Decodificación: SDR++ (fork sdrpp-brown) tiene un módulo decodificador FT8 incorporado que funciona cuando se sintoniza en frecuencias FT8 estándar (ej. 14.074 MHz)
  • ⚠️ ADVERTENCIA DE LICENCIA: NO transmitas FT8 sin un indicativo de radioaficionado válido - los mensajes FT8 contienen indicativos y transmitir sin uno es suplantación directa de indicativo y altamente ilegal

Aplicaciones: Contactos DX de larga distancia, comunicación de señal débil, contactos intercontinentales, confundir a los participantes de concursos

FT8 Demo

📠 RTTY

RTTY

Comunicación de texto digital clásica:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Frecuencia de Espacio: Desplazamiento de frecuencia FSK para espacio (por defecto 170 Hz)
  • Mensaje: Texto a transmitir

Recepción:

  • Demodulación: Modo USB
  • Decodificación con fldigi:
    • Configurar fldigi en modo RTTY
    • Ajustar el desplazamiento para que coincida con tu frecuencia de espacio (por defecto: 45.45/170 o tu frecuencia de espacio seleccionada)
    • Configurar la entrada de audio de fldigi para usar el monitor PulseAudio de la salida de tu software SDR (SDR++, GQRX, SDRSharp, SDRAngel, etc.)

Aplicaciones: Comunicación de texto digital, boletines de noticias, mensajería teletipo, enviar arte ASCII por RTTY

RTTY Demo

📊 FSK

FSK

Modulación por desplazamiento de frecuencia binaria para transmisión de datos:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Tipo de Entrada: Modo texto o archivo
    • Modo Texto: Entrada de texto directa
    • Modo Archivo: Subir archivos de datos (cualquier formato)

      Proceso de Subida: Los archivos se mueven tal cual (sin conversión) a ./files/data/uploads/ conservando la extensión original

  • Tasa de Baudios: Velocidad de transmisión (por defecto 50 baudios para fiabilidad)

Recepción:

  • Demodulación: Modo FM
  • Decodificación con minimodem: ```bash pw-record --target=81 --rate=48000 --channels=1 - | minimodem --rx 50 -q -c 1
    root@kitploit:~

Nota: pw-record --target=81 captura audio desde el monitor de PulseAudio (salida de tu software SDR). Cambia el parámetro --rx para que coincida con la tasa de baudios seleccionada. La implementación actual funciona mejor con tasas de 50-100 baudios.

Aplicaciones: Boletines digitales, transferencia de archivos, radio por paquetes, transmisión de datos, modos digitales de radioaficionado, envío de pornografía como en los días de acceso telefónico

FSK Demo

📱 POCSAG

POCSAG

Sistema de mensajería de buscapersonas digital:

Opciones de configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Tasa de baudios: 512, 1200 (predeterminado) o 2400 bps
  • Bits de función: 0-3 (predeterminado 3) determina el tipo de mensaje:
    • 0: Mensajes solo numéricos (codificados en BCD)
    • 1-2: Solo timbre (el comportamiento real depende de la configuración del buscapersonas)
    • 3: Mensajes alfanuméricos (codificados en ASCII, predeterminado)
  • Recuento de repeticiones: Número de repeticiones de transmisión (predeterminado 4)
  • Modo numérico: Alternar para mensajes solo numéricos
  • Invertir polaridad: Inversión de polaridad de la señal
  • Modo de depuración: Habilitar salida de depuración
  • Mensajes: Arreglo de mensajes, cada uno contiene:
    • Dirección: Dirección del buscapersonas (entero no negativo)
    • Mensaje: Texto del mensaje a transmitir
    • Bits de función (opcional): Sobrescritura de bits de función por mensaje (0-3)

Recepción:

  • Demodulación: Modo FM
  • Decodificación con multimon-ng: ```bash pw-record --target=81 --rate=22050 --channels=1 - | multimon-ng -t raw -a POCSAG1200 -
    root@kitploit:~

Nota: pw-record --target=81 captura audio desde la salida del monitor de PulseAudio (la salida de tu software SDR). Cambia el modo multimon-ng según la velocidad en baudios seleccionada:

  • 512 baudios: -a POCSAG512
  • 1200 baudios: -a POCSAG1200
  • 2400 baudios: -a POCSAG2400

Aplicaciones: Sistemas de búsqueda de emergencia, notificaciones de alerta, mensajería de buscapersonas, caos de notificaciones masivas, bombardeo de nostalgia de los 90

POCSAG Demo

📻 Código Morse

Morse Code

Transmisión CW tradicional:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Velocidad: Velocidad de transmisión en puntos por minuto (por defecto 20)
  • Mensaje: Texto a convertir a código Morse

Recepción:

  • Demodulación: Modo CW
  • Decodificación con multimon-ng: ```bash pw-record --target=81 --rate=22050 --channels=1 - | multimon-ng -t raw -a MORSE_CW -d 60 -g 60 -
    root@kitploit:~

Nota: pw-record --target=81 captura audio desde el monitor de sumidero de PulseAudio (la salida de tu software SDR). Los parámetros -d (retardo) y -g (ganancia) deben ajustarse según tu tasa de transmisión (puntos por minuto). Tasas más altas requieren valores de retardo más bajos; tasas más bajas necesitan valores de retardo más altos para una decodificación adecuada.

Aplicaciones: Práctica de código Morse, transmisiones de baliza, comunicaciones de emergencia, envío de mensajes sucios en CW, spam de balizas

Demostración de código Morse

🎛️ Onda Portadora

Onda Portadora

Generación de portadora simple para pruebas:

Opciones de Configuración:

  • Frecuencia: Frecuencia de la portadora en Hz
  • Corrección de Reloj PPM: Ajuste fino de la precisión de frecuencia

Recepción:

  • Demodulación: Modo RAW
  • Señal: Onda continua simple a la frecuencia especificada

Aplicaciones: Sintonización de antenas, pruebas de transmisores, mediciones de ROE, trolleo con portadora muerta, pruebas de circuitos RF

Demostración de Onda Portadora

🌊 Barrido de Frecuencia

Barrido de Frecuencia

Barridos de frecuencia automatizados para análisis RF:

Opciones de Configuración:

  • Frecuencia Central: Frecuencia central en Hz
  • Ancho de Banda: Ancho de banda de barrido en Hz (por defecto 1 MHz)
  • Duración del Barrido: Tiempo para un barrido completo en segundos (por defecto 5.0)

Recepción:

  • Demodulación: Modo RAW
  • Observa: El barrido activo de la frecuencia portadora de izquierda a derecha en tu visualización de cascada

Aplicaciones: Análisis de antenas, pruebas de filtros, mediciones de respuesta en frecuencia, wobulación como un maníaco, pruebas de tortura de antenas

Demostración de Barrido de Frecuencia

📺 SSTV

SSTV

Transmisión de imágenes de televisión de barrido lento:

Opciones de Configuración:

  • Frecuencia: Frecuencia de transmisión en Hz
  • Archivo de Imagen: Subir o seleccionar archivo de imagen

    Proceso de Subida: Las imágenes se convierten mediante ImageMagick a formato RGB 320x256 (extensión .rgb) para transmisión SSTV, guardadas en ./files/images/uploads/ (los archivos .Y de spectrum paint también están disponibles si se subieron previamente)

Recepción:

  • Demodulación: Modo USB
  • Modo SSTV: Martin 1
  • Decodificación: Se puede decodificar usando QSSTV u otro software SSTV
  • ⚠️ NO VERIFICADO: He intentado decodificar esto con QSSTV pero aún no he recibido imágenes con éxito. Se confía en que el módulo SSTV de rpitx genera señales Martin 1 adecuadas. Si logras decodificar transmisiones SSTV de PIrateRF, por favor abre un PR describiendo tu configuración y proceso de decodificación.

Aplicaciones: Transmisión de imágenes por radio, SSTV de radioaficionados, comunicación visual, transmisión de fotos de gallos - mira ese gallo enorme

🎨 Spectrum Paint

Spectrum Paint

Convertir imágenes en arte espectral RF:

Opciones de Configuración:

  • Frecuencia: Frecuencia base de transmisión en Hz
  • Archivo de Imagen: Subir o seleccionar archivo de imagen

    Proceso de Subida: Las imágenes se convierten mediante ImageMagick a formato YUV (extensión .Y) para spectrum paint Y a formato RGB 320x256 (extensión .rgb) para SSTV, ambos guardados en ./files/images/uploads/

  • Excursión: Desviación de frecuencia en Hz (por defecto 100000)

Recepción:

  • Demodulación: Modo RAW
  • Configuración de Cascada: Ajusta la visualización de cascada a resolución completa (sin filtrado, mostrar todos los picos del espectro, no solo los altos) para ver la imagen completa pintada a través del espectro

Aplicaciones: Arte espectral RF, visualización de espectro, demostraciones de análisis de señales, dibujo de fotos de penes en cascadas, graffiti espectral

Demostración de Spectrum Paint

📡 IQ

IQ

Reproducción de archivos de muestras IQ en bruto para reproducción de señales:

Opciones de Configuración:

  • Frecuencia: Frecuencia de la portadora en Hz
  • Archivo IQ: Subir o seleccionar archivo .iq

    Proceso de Subida: Los archivos IQ se mueven tal cual (sin conversión) a ./files/iqs/uploads/ conservando la extensión .iq

  • Tasa de Muestreo: Tasa de muestreo en Hz (por defecto 48000)
    • Rango: 10,000 a 2,000,000 Hz
    • Valores por encima de 200,000 Hz activan diezmado automático
  • Armónico: Número armónico para transmisión (por defecto 1)
  • Tipo de Datos IQ: Formato de muestra (u8, i16, float, double)
    • Por defecto: i16 (entero con signo de 16 bits)
  • Nivel de Potencia: Nivel de excitación de 0.0 a 7.0 (por defecto 0.1)
  • Token de Memoria Compartida: Token IPC opcional para control en tiempo de ejecución
    • Cuando se configura, fuerza el tipo IQ a float y habilita el control de memoria compartida
  • Tiempo de Espera: Auto-parada después de segundos especificados (0 = sin tiempo de espera, por defecto 30)
  • Modo Bucle: Reproducir continuamente el archivo IQ

Recepción:

  • Demodulación: Depende de qué señal fue capturada en el archivo IQ
  • Tipo de Señal: Los archivos IQ contienen muestras I/Q en bruto que pueden representar cualquier esquema de modulación
  • Fidelidad de Reproducción: La transmisión reproducirá las características exactas de la señal capturada en el archivo IQ

Aplicaciones: Reproducción de señales, captura/reproducción de repetidores, pruebas y validación, análisis de señales, reproducción de modulaciones complejas, reproducción de capturas SDR, investigación de huellas dactilares RF

💾 Sistema de Presets

¡Deja de ingresar los mismos malditos parámetros cada vez! PIrateRF incluye un sistema completo de gestión de presets:

Características:

  • Guardar Configuraciones: Guarda la configuración actual del módulo como presets con nombre
  • Carga Rápida: Selecciona y recarga presets guardados con un clic
  • Gestión de Presets: Crea, renombra y elimina presets a través de la interfaz web
  • Almacenamiento por Módulo: Cada modo de transmisión tiene su propio directorio de presets
  • Selección Persistente: El último preset seleccionado se recuerda al recargar la página
  • Reversión con un Clic: El botón de recarga revierte los cambios no guardados a los valores del preset

Uso:

  1. Configura tus parámetros de transmisión (frecuencia, archivo de audio, ajustes RDS, etc.)
  2. Haz clic en "📝 Nuevo" para crear un preset con un nombre personalizado
  3. Selecciona el preset del menú desplegable para habilitar los botones Guardar/Recargar/Editar
  4. Realiza cambios y haz clic en "💾 Guardar" para actualizar el preset
  5. Haz clic en "🔃 Recargar" para revertir cualquier cambio no guardado
  6. Haz clic en "✏️ Editar" para renombrar o eliminar el preset

Almacenamiento:

Los presets se almacenan como archivos JSON en files/presets/{modulename}/ y se pueden respaldar, compartir o versionar. Perfecto para mantener tus configuraciones favoritas de reproducción de timbres, configuraciones de radiodifusión FM o configuraciones FT8.

🛠️ Comandos de Desarrollo

Desarrollo Local```bash

make run-dev # Run locally with development setup make build # Cross-compile for Pi Zero ARM make lint-fix # Format and lint code make test-coverage # Run tests with coverage

root@kitploit:~
### Gestión de Pi```bash
make pi               # Complete automated setup
make deploy           # Deploy to Pi
make install          # Install systemd service
make ssh              # SSH into Pi
make pi-reboot        # Reboot Pi
make uninstall        # Remove from Pi
make pi-image         # Clone and shrink Pi SD card image

📁 Estructura del Proyecto```

piraterf/ ├── cmd/ # Application entry points ├── internal/pkg/services/ │ └── piraterf/ # Core service implementation │ ├── http_server.go # Web server and API │ ├── websocket*.go # Real-time communication │ ├── audio_.go # Audio processing │ ├── image_.go # Image processing │ ├── preset_.go # Preset management │ └── execution_.go # RF transmission management ├── scripts/ # Setup and deployment scripts ├── html/ # Web interface templates ├── static/ # Frontend assets (CSS/JS/images) ├── files/ # Runtime file storage │ ├── audio/ # Audio files (uploads, SFX) │ ├── images/ # Image files (uploads) │ ├── data/ # Data files for FSK │ ├── iqs/ # IQ sample files │ └── presets/ # Per-module preset configurations │ ├── pifmrds/ # FM broadcast presets │ ├── sendiq/ # IQ transmission presets │ └── ... # Other module presets └── uploads/ # Temporary upload staging

root@kitploit:~
## 🏴‍☠️ Aviso Legal y de Seguridad

**⚠️ REQUISITOS LEGALES IMPORTANTES ⚠️**

### Se Requiere Licencia de Radioaficionado

- **La mayoría de frecuencias requieren una licencia de radioaficionado**
- FT8, RTTY, FSK, SSTV, y la mayoría de operaciones HF/VHF/UHF necesitan la licencia adecuada
- Consulte a su autoridad local de radioaficionados (FCC/Ofcom/etc.) para conocer los requisitos de licencia

### Regulaciones de Frecuencia

- **Manténgase dentro de las bandas de aficionados**: Use solo frecuencias asignadas a radioaficionados
- **Límites de potencia**: Pi Zero produce solo unos pocos milivatios - si usa un amplificador, respete los límites máximos de potencia para su clase de licencia
- **Emisiones espurias**: Use siempre filtros pasa-bajos apropiados
- **Sin contenido comercial**: La radioafición prohíbe las comunicaciones comerciales

### Requisitos de Hardware (para uso adecuado)

- **Filtros pasa-bajos obligatorios**: La GPIO de Pi emite ondas cuadradas con armónicos en todo el espectro
- **Antena adecuada**: Use antenas resonantes para su frecuencia de operación
- **Salida de potencia**: La GPIO de Pi Zero produce solo unos pocos milivatios - si desea más alcance, necesitará un amplificador adecuado y un filtro pasa-bajos
- **Monitoreo de ROE**: A niveles de potencia de milivatios, al Pi no le importa un carajo la ROE, pero si usa un amplificador necesita una adaptación de impedancia adecuada o freirá su amplificador

### Restricciones Geográficas

- **Los planes de banda varían según el país**: Las asignaciones de aficionados de EE.UU./Europa/Asia difieren
- **Los límites de potencia varían**: Consulte las regulaciones locales para su clase de licencia
- **Frecuencias de emergencia**: Nunca interfiera con comunicaciones de emergencia/seguridad pública

### 🏠 Pruebas y Experimentación en Interiores

- **Sin antena = alcance mínimo**: Sin una antena adecuada, las señales son extremadamente débiles y se mantienen dentro de su hogar
- **Pruebas y aprendizaje**: Perfecto para entender conceptos de RF, modos digitales y funcionalidad del software
- **Desarrollo de protocolos**: Pruebe codificación/descodificación sin transmisión externa
- **Uso educativo**: Aprenda sobre modulación, filtrado y procesamiento de señales de forma segura en interiores

## 📡 Frecuencias de Operación Estándar

PIrateRF soporta todo el espectro de radioaficionados. Aquí están las frecuencias comunes para cada modo:

### Bandas de HF de Aficionados (3-30 MHz)

- **80m**: 3.5-4.0 MHz | **40m**: 7.0-7.3 MHz | **30m**: 10.1-10.15 MHz
- **20m**: 14.0-14.35 MHz | **17m**: 18.068-18.168 MHz | **15m**: 21.0-21.45 MHz
- **12m**: 24.89-24.99 MHz | **10m**: 28.0-29.7 MHz

### Bandas de VHF/UHF de Aficionados

- **2m**: 144-148 MHz (FM: 144.0-148.0 MHz, Repetidores: 146.0-148.0 MHz salida)
- **1.25m**: 222-225 MHz | **70cm**: 420-450 MHz (Repetidores: 440-450 MHz salida)

### Frecuencias Estándar FT8 (modo USB)

- **80m**: 3.573 MHz | **40m**: 7.074 MHz | **30m**: 10.136 MHz
- **20m**: 14.074 MHz | **17m**: 18.100 MHz | **15m**: 21.074 MHz | **10m**: 28.074 MHz

### Frecuencias Estándar RTTY (modo USB)

- **80m**: 3.580-3.600 MHz | **40m**: 7.035-7.045 MHz | **30m**: 10.130-10.150 MHz
- **20m**: 14.070-14.099 MHz | **15m**: 21.070-21.100 MHz | **10m**: 28.070-28.120 MHz

### Frecuencias Estándar SSTV

- **80m**: 3.736 MHz (LSB) | **40m**: 7.055 MHz (LSB)
- **20m**: 14.233 MHz (USB) | **15m**: 21.343 MHz (USB) | **10m**: 28.667 MHz (USB)
- **2m**: 144.55 MHz (FM)

### Separaciones Estándar de Repetidores FM

- **2m**: Entrada 144-146 MHz, Salida 146-148 MHz (separación de 0.6 MHz)
- **70cm**: Entrada 420-430 MHz, Salida 440-450 MHz (separación de 5 MHz)

## 🔗 Dependencias Principales

- **[rpitx](https://github.com/F5OEO/rpitx)** - Biblioteca de transmisión RF para GPIO de Raspberry Pi
- **[gorpitx](https://github.com/psyb0t/gorpitx)** - Envoltorio Go que proporciona una API limpia para rpitx
- **[servicepack](https://github.com/psyb0t/servicepack)** - Marco de desarrollo y despliegue
- **[aichteeteapee](https://github.com/psyb0t/aichteeteapee)** - Servidor HTTP con soporte WebSocket

## 📝 Licencia

Este proyecto está licenciado bajo WTFPL (Do What The Fuck You Want To Public License).

## TODO

- (gorpitx) Añadir 1 segundo extra de portadora a la transmisión RTTY

- (gorpitx) Abandonar minimodem en FSK y usar otra cosa

- (gorpitx) Corregir el espaciado de palabras en código morse

- Probar realmente que SSTV funciona (probado con qsstv y varias configuraciones + varios oyentes y nop, no funciona)

- Añadir superposiciones de ayuda en la IU: botones de información de modo que expliquen lo que hace cada modo de transmisión + tooltips por entrada que expliquen lo que cambia cada opción de configuración

- Arreglar el maldito encabezado de la IU para que ya no sea un maldito rectángulo que jode la sombra lol

**🏴‍☠️ ¡Ahora sal ahí fuera y empieza a transmitir como el pirata de RF que estabas destinado a ser! 📡**

_Recuerda: Un gran poder RF conlleva una gran responsabilidad. Siempre opere legalmente y no sea un imbécil con otros operadores._

---

_Construido con rencor usando https://github.com/psyb0t/servicepack_

---
Descargar herramienta