
PIrateRF يحوِّل Raspberry Pi Zero W الخاص بك إلى مولد إشارات لاسلكي محمول ينشئ نقطة اتصال WiFi خاصة به. تحكم في كل شيء من البث الإذاعي FM إلى الأنماط الرقمية عبر متصفحك - اخترق الأثير من أي مكان! 📡⚡

PIrateRF تحوِّل Raspberry Pi Zero W الخاص بك إلى مولد إشارات RF محمول يولد نقطة اتصال WiFi خاصة به. تحكم في كل شيء من بث FM إلى الأنماط الرقمية عبر متصفحك - اخترق الأثير من أي مكان! 📡⚡
🎬 اضغط هنا لمشاهدة الفيديو الترويجي لـ PIrateRF
📺 اضغط هنا لمشاهدة فيديو العرض لـ PIrateRF
⚠️ إشعار قانوني
تم تصميم PIrateRF للتجارب الراديوية الهواة والتعليم - بما في ذلك الاختبار الداخلي الآمن دون هوائيات خارجية. صُمم للمهندسين الذين يفهمون أن الممارسات الجيدة لـ RF تهم أكثر من الحدود الإدارية التعسفية. المستخدمون مسؤولون عن الامتثال لجميع اللوائح المحلية لـ RF ومتطلبات الترخيص. لست مسؤولاً عن أي من قراراتك الغبية اللعينة!
تم إجراء جميع صور العرض والاختبارات في هذه الوثائق في الداخل بدون هوائي، بمدى أقصى يبلغ حوالي 5 أمتار.
كل شيء يتم التحكم به عبر نقطة اتصال WiFi مستقلة - قم بتوصيل أي جهاز وابدأ الإرسال مثل المتمرد RF الذي كنت من المفترض أن تكونه! مثالي للعمليات في المياه الدولية والمناطق ذات سياسات الطيف الأكثر... مرونة.
تجاوز كل هراء البناء واذهب مباشرة إلى فوضى RF:
.img الذي تم تنزيلهsudo dd if=piraterf_2025-11-23_22-18-49.img of=/dev/sdX bs=4M status=progress (استبدل /dev/sdX ببطاقة SD الخاصة بك)https://piraterf.local وابدأ الإرسال فوراً!الإعدادات الافتراضية:
fucker, كلمة المرور FUCKER, اسم المضيف piraterf.localقبل أن تفعل أي شيء آخر، قم بتوصيل Pi Zero W اللعين وجعله في متناول SSH. اتبع هذا البرنامج التعليمي الذي يعمل بالفعل:
👉 Pi Zero W USB Connection Tutorial
سيؤدي ذلك إلى توصيل Pi Zero عبر USB مع وصول SSH حتى تتمكن فعليًا من نشر PIrateRF على اللقيط الصغير.
🌐 مشاركة الإنترنت مطلوبة: بعد أن تعمل وصلة USB، يجب عليك مشاركة الإنترنت من جهاز الكمبيوتر الخاص بك إلى Pi Zero. تحتاج نصوص الإعداد إلى تنزيل الحزم والتبعيات - لا إنترنت، لا فوضى RF.
إعداد مشاركة الإنترنت على Ubuntu/Linux:
usb0)، انقر عليه، اذهب إلى إعدادات IPv4، وقم بتغيير الطريقة من "Link-Local Only" إلى "Shared to other computers"3. **إعادة تشغيل NetworkManager**:```bash
sudo systemctl restart NetworkManager
usb0 و enp5s0 بواجهاتك الفعلية):```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 MASQUERADE5. **اختبره**: قم بالاتصال عبر SSH إلى Raspberry Pi الخاص بك باستخدام `ssh [email protected]` (أو أي [email protected] قمت بإعداده) ثم شغّل `ping 8.8.8.8` - إذا نجح ذلك، فأنت جاهز لإحداث بعض الفوضى في الترددات الراديوية!
**ابحث عن واجهاتك**: استخدم `ip link show` لرؤية `usb0` (اتصال Pi) وواجهة الإنترنت الرئيسية لديك.
### 1. الإعداد الأولي```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
مثال للتكوين (قم بتعديله ليتناسب مع إعداد 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
### 2. إعداد Pi الكامل```bash
# Run the full automated setup
make pi
سيقوم هذا الأمر بما يلي:
https://piraterf.localقم بتوصيل أجهزة متعددة بنقطة الوصول PIrateRF وكلها ستصل إلى الواجهة الويب في نفس الوقت! بينما يمكن تشغيل إرسال واحد فقط في كل مرة (لأن GPIO لا يشارك اللعنة)، ترى جميع الأجهزة المتصلة حالة الإرسال في الوقت الفعلي، وسجلات الإخراج، ويمكنها التناوب على التحكم في إرسالات الترددات اللاسلكية. مثالية للتسلية مع الأصدقاء في جلسة جماعية لموجات الراديو! 📡💥
ميزات الأجهزة المتعددة:
قم بتوصيل الهوائي بـ GPIO 4 (السن الفعلي 7) على Pi Zero W:
⚠️ تحذير: يُخرج GPIO الخاص بـ Raspberry Pi موجات مربعة ذات توافقيات عبر الطيف بأكمله. للإرسال الخارجي المناسب، يجب عليك استخدام مرشحات تمرير منخفض مناسبة لقمع الانبعاثات الزائفة والامتثال للوائح الترددات اللاسلكية. بدون ترشيح، فأنت تبث على ترددات متعددة في وقت واحد.

بث FM كامل مع دعم RDS:
خيارات التكوين:
عملية الرفع: يتم تحويل الملفات تلقائيًا عبر FFmpeg إلى تنسيق WAV بتردد 48 كيلو هرتز/16 بت/أحادي وحفظها في
./files/audio/uploads/
الاستقبال:
التطبيقات: البث الإذاعي السري، بث الموسيقى، البث الصوتي، الراديو المجتمعي، محطات الراديو القرصانية، ريكرولينغ الأحياء بأكملها


بث ميكروفون فوري مع تشكيل قابل للتكوين:
خيارات التكوين:
الاستقبال:
التطبيقات: التعليق المباشر، الاتصالات الطارئة، شبكات الراديو الهواة، البث الفوري، بث تجشؤك، اذهب على الهواء عبر الراديو وأنت في حفرة الموش


وضع رقمي للإشارات فائقة الضعف لمسافات بعيدة على الموجات القصيرة:
خيارات التكوين:
الاستقبال:
التطبيقات: اتصالات DX بعيدة المدى، اتصالات الإشارات الضعيفة، اتصالات بين القارات، إرباك المنافسين بشدة


اتصال نصي رقمي كلاسيكي:
خيارات التكوين:
الاستقبال:
التطبيقات: الاتصال النصي الرقمي، النشرات الإخبارية، رسائل التلكس، إرسال فن ASCII عبر RTTY


مفتاح إزاحة التردد الثنائي لنقل البيانات:
خيارات التكوين:
عملية الرفع: يتم نقل الملفات كما هي (بدون تحويل) إلى
./files/data/uploads/مع الحفاظ على الامتداد الأصلي
الاستقبال:
ملاحظة: pw-record --target=81 يلتقط الصوت من وحدة مراقبة PulseAudio (خرج برنامج SDR). قم بتغيير المعامل --rx ليتوافق مع معدل الباود المختار. يعمل التطبيق الحالي بشكل أفضل مع معدلات باود 50-100.
التطبيقات: النشرات الرقمية، نقل الملفات، الراديو الحزمي، نقل البيانات، أنماط الراديو الهواة الرقمية، إرسال المحتوى الإباحي كما في أيام الاتصال الهاتفي


نظام تراسل الصفحات الرقمية:
خيارات التكوين:
الاستقبال:
ملاحظة: pw-record --target=81 يلتقط الصوت من جهاز مراقبة PulseAudio (خرج برنامج SDR الخاص بك). قم بتغيير وضع multimon-ng بناءً على معدل الباود المحدد:
-a POCSAG512-a POCSAG1200-a POCSAG2400التطبيقات: أنظمة النداء في حالات الطوارئ، إشعارات التنبيه، رسائل البيجر، فوضى الإخطار الجماعي، حنين التسعينيات


إرسال CW تقليدي:
خيارات التهيئة:
الاستقبال:
ملاحظة: pw-record --target=81 يلتقط الصوت من مراقب PulseAudio (مخرجات برنامج SDR الخاص بك). يجب ضبط المعلمتين -d (التأخير) و-g (الكسب) بناءً على معدل الإرسال (النقرات في الدقيقة). المعدلات الأعلى تتطلب قيم تأخير أقل، والمعدلات الأقل تحتاج إلى قيم تأخير أعلى لفك التشفير بشكل صحيح.
التطبيقات: تدريب مورس، إرسال المنارات، الاتصالات الطارئة، إرسال رسائل غير لائقة في CW، سبام المنارات


توليد موجة حاملة بسيطة للاختبار:
خيارات التهيئة:
الاستقبال:
التطبيقات: ضبط الهوائي، اختبار المرسل، قياسات SWR، التشويش بالموجة الحاملة الميتة، اختبار دوائر الترددات اللاسلكية


مسح تردد آلي لتحليل الترددات اللاسلكية:
خيارات التهيئة:
الاستقبال:
التطبيقات: تحليل الهوائي، اختبار المرشحات، قياسات استجابة التردد، التذبذب كالمجنون، اختبار تعذيب الهوائي


نقل الصور بتلفزيون المسح البطيء:
خيارات التهيئة:
عملية الرفع: يتم تحويل الصور عبر ImageMagick إلى تنسيق RGB 320x256 (امتداد .rgb) لإرسال SSTV، وحفظها في
./files/images/uploads/(ملفات .Y لطلاء الطيف متاحة أيضًا إذا تم رفعها مسبقًا)
الاستقبال:
التطبيقات: نقل الصور عبر الراديو، SSTV للهواة، الاتصال البصري، بث صور القضيب - انظر إلى ذلك الديك الضخم!

تحويل الصور إلى فن طيف الترددات اللاسلكية:
خيارات التهيئة:
عملية الرفع: يتم تحويل الصور عبر ImageMagick إلى تنسيق YUV (امتداد .Y) لطلاء الطيف AND تنسيق RGB 320x256 (امتداد .rgb) لـ SSTV، ويتم حفظ كلاهما في
./files/images/uploads/
الاستقبال:
التطبيقات: فن طيف الترددات اللاسلكية، تصور الطيف، عروض تحليل الإشارات، رسم صور القضيب على الشلالات، جرافيتي الطيف


إعادة تشغيل ملف عينات IQ خام لإعادة إنتاج الإشارة:
خيارات التهيئة:
عملية الرفع: يتم نقل ملفات IQ كما هي (بدون تحويل) إلى
./files/iqs/uploads/مع الحفاظ على الامتداد .iq
الاستقبال:
التطبيقات: إعادة تشغيل الإشارة، التقاط/إعادة تشغيل المكرر، الاختبار والتحقق، تحليل الإشارة، إعادة إنتاج التشكيلات المعقدة، إعادة تشغيل التقاط SDR، بحث بصمات الترددات اللاسلكية
توقف عن إدخال نفس المعاملات اللعينة كل مرة! يتضمن PIrateRF نظام إدارة إعدادات مسبقة كامل:
الميزات:
الاستخدام:
التخزين:
يتم تخزين الإعدادات المسبقة كملفات JSON في files/presets/{modulename}/ ويمكن نسخها احتياطيًا أو مشاركتها أو التحكم في إصداراتها. مثالية للاحتفاظ بتكوينات إعادة تشغيل جرس الباب المفضلة لديك، أو إعدادات البث FM، أو تكوينات FT8!
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
### إدارة 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
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
## 🏴☠️ إشعار قانوني وسلامة
**⚠️ متطلبات قانونية هامة ⚠️**
### رخصة راديو هاوٍ مطلوبة
- **معظم الترددات تتطلب رخصة راديو هاوٍ**
- FT8، RTTY، FSK، SSTV ومعظم عمليات HF/VHF/UHF تحتاج إلى ترخيص مناسب
- تحقق من هيئة راديو الهواة المحلية (FCC/Ofcom/إلخ) لمتطلبات الترخيص
### لوائح التردد
- **ابق ضمن نطاقات الهواة**: استخدم فقط الترددات المخصصة لراديو الهواة
- **حدود الطاقة**: Pi Zero ينتج فقط بضعة ملي واط - إذا كنت تستخدم مضخمًا، احترم حدود الطاقة القصوى لفئة ترخيصك
- **الانبعاثات الزائفة**: استخدم دائمًا مرشحات التمرير المنخفض المناسبة
- **لا محتوى تجاري**: يحظر راديو الهواة الاتصالات التجارية
### متطلبات الأجهزة (للاستخدام السليم)
- **مرشحات التمرير المنخفض إلزامية**: GPIO الخاص بـ Pi ينتج موجات مربعة مع توافقيات عبر الطيف
- **هوائي مناسب**: استخدم هوائيات رنين لتردد التشغيل الخاص بك
- **خرج الطاقة**: GPIO الخاص بـ Pi Zero ينتج فقط بضعة ملي واط - إذا كنت تريد نطاقًا أكبر، ستحتاج إلى مضخم مناسب ومرشح تمرير منخفض
- **مراقبة SWR**: عند مستويات طاقة ملي واط، لا يهتم Pi بـ SWR على الإطلاق، ولكن إذا كنت تستخدم مضخمًا، فستحتاج إلى مطابقة معاوقة مناسبة وإلا ستقوم بحرق المضخم
### قيود جغرافية
- **خطط النطاقات تختلف حسب البلد**: تختلف تخصيصات الهواة الأمريكية/الأوروبية/الآسيوية
- **حدود الطاقة تختلف**: تحقق من اللوائح المحلية لفئة ترخيصك
- **ترددات الطوارئ**: لا تتدخل أبدًا في اتصالات الطوارئ/السلامة العامة
### 🏠 اختبار وتجارب داخلية
- **لا هوائي = نطاق ضئيل**: بدون هوائي مناسب، تكون الإشارات ضعيفة جدًا ومحصورة داخل منزلك
- **الاختبار والتعلم**: مثالي لفهم مفاهيم الترددات الراديوية، والأنماط الرقمية، ووظائف البرمجيات
- **تطوير البروتوكولات**: اختبار الترميز/فك الترميز دون إرسال خارجي
- **الاستخدام التعليمي**: تعلم التعديل، والترشيح، ومعالجة الإشارات بأمان داخل المنزل
## 📡 ترددات التشغيل القياسية
يدعم PIrateRF طيف راديو الهواة بالكامل. فيما يلي الترددات الشائعة لكل نمط:
### نطاقات الهواة HF (3-30 ميجاهرتز)
- **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
### نطاقات الهواة VHF/UHF
- **2m**: 144-148 MHz (FM: 144.0-148.0 MHz، مكررات: 146.0-148.0 MHz خرج)
- **1.25m**: 222-225 MHz | **70cm**: 420-450 MHz (مكررات: 440-450 MHz خرج)
### ترددات FT8 القياسية (وضع 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
### ترددات RTTY القياسية (وضع 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
### ترددات 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)
### الفواصل القياسية لمكررات FM
- **2m**: إدخال 144-146 MHz، خرج 146-148 MHz (فاصل 0.6 MHz)
- **70cm**: إدخال 420-430 MHz، خرج 440-450 MHz (فاصل 5 MHz)
## 🔗 التبعيات الأساسية
- **[rpitx](https://github.com/F5OEO/rpitx)** - مكتبة إرسال RF لـ Raspberry Pi GPIO
- **[gorpitx](https://github.com/psyb0t/gorpitx)** - غلاف Go يوفر API نظيفة لـ rpitx
- **[servicepack](https://github.com/psyb0t/servicepack)** - إطار تطوير ونشر
- **[aichteeteapee](https://github.com/psyb0t/aichteeteapee)** - خادم HTTP مع دعم WebSocket
## 📝 الترخيص
هذا المشروع مرخص بموجب WTFPL (Do What The Fuck You Want To Public License).
## TODO
- (gorpitx) إضافة ثانية إضافية واحدة من الموجة الحاملة إلى إرسال RTTY
- (gorpitx) التخلص من minimodem في FSK واستخدام شيء آخر
- (gorpitx) إصلاح تباعد الكلمات في شفرة مورس
- إثبات أن SSTV يعمل فعليًا (جربت مع qsstv وإعدادات مختلفة + مستمعين مختلفين ولا يعمل)
- إضافة تراكبات مساعدة لواجهة المستخدم: أزرار معلومات النمط تشرح ما يفعله كل نمط إرسال + تلميحات لكل إدخال تشرح ما يغيره كل خيار تكوين
- إصلاح رأس واجهة المستخدم اللعين بحيث لا يكون مستطيلًا لعينًا بعد الآن مما يفسد الظل لول
**🏴☠️ الآن اخرج وابدأ البث مثل قرصان الترددات الراديوية الذي كنت مقدرًا له أن تكون! 📡**
_تذكر: مع القوة الراديوية العظيمة تأتي المسؤولية العظيمة. اعمل دائمًا بشكل قانوني ولا تكن وقحًا مع المشغلين الآخرين._
---
_بُني بالحقد باستخدام https://github.com/psyb0t/servicepack_
---