Daftar Isi:

RF433Analyser: 7 Langkah
RF433Analyser: 7 Langkah

Video: RF433Analyser: 7 Langkah

Video: RF433Analyser: 7 Langkah
Video: Kiosk mode Bruteforce Evasion with Flipper Zero 2024, Juli
Anonim
RF433Analyser
RF433Analyser
RF433Analyser
RF433Analyser

Instruksi ini menciptakan instrumen pengukuran untuk membantu menganalisis transmisi RF 433MHz yang biasanya digunakan untuk komunikasi jarak jauh berdaya rendah dalam otomatisasi dan sensor rumah. Ini mungkin dapat dengan mudah dimodifikasi untuk bekerja pada transmisi 315MHz yang digunakan di beberapa negara. Ini akan dilakukan dengan menggunakan RXB6 versi 315MHz, bukan versi 433MHz saat ini.

Tujuan dari instrumen ini adalah dua kali lipat. Pertama, ia menyediakan pengukur kekuatan sinyal (RSSI) yang dapat digunakan untuk memeriksa cakupan di sekitar properti dan menemukan titik hitam. Kedua, ia dapat menangkap data bersih dari pemancar untuk memudahkan analisis data dan protokol yang digunakan oleh perangkat yang berbeda. Ini berguna jika mencoba mendesain add-on yang kompatibel ke unit yang ada. Biasanya pengambilan data diperumit oleh kebisingan latar belakang yang ada di penerima yang menghasilkan banyak transisi palsu dan membuatnya lebih sulit untuk menemukan transmisi yang sebenarnya.

Unit ini menggunakan receiver superhet RXB6. Ini menggunakan chip penerima Synoxo-SYN500R yang memiliki output analog RSSI. Ini secara efektif merupakan versi buffer dari sinyal AGC yang digunakan untuk mengontrol penguatan penerima dan memberikan kekuatan sinyal pada rentang yang luas.

Penerima dipantau oleh modul ESP8266 (ESP-12F) yang mengubah sinyal RSSI. Ini juga menggerakkan layar OLED lokal kecil (SSD1306). Elektronik juga dapat menangkap informasi waktu pada transisi data.

Tangkapan dapat dipicu secara lokal dengan tombol pada unit. Data yang diambil disimpan ke file untuk analisis nanti.

Modul ESP12 menjalankan server web untuk memberikan akses ke file dan tangkapan juga dapat dipicu dari sini.

Instrumen ini didukung oleh baterai isi ulang LIPO kecil. Ini memberikan waktu berjalan yang wajar dan elektronik memiliki arus diam yang rendah saat tidak digunakan.

Langkah 1: Komponen dan Alat yang Diperlukan

Catatan penting:

Saya menemukan beberapa receiver RXB6 433Mhz memiliki keluaran RSSI yang tidak berfungsi meskipun AGC dan fungsionalitas lainnya OK. Saya menduga mungkin ada beberapa chip tiruan Syn500R yang digunakan. Saya telah menemukan bahwa receiver berlabel WL301-341 menggunakan chip yang kompatibel dengan Syn5500R dan RSSI berfungsi. Mereka juga memiliki keuntungan karena tidak menggunakan penyaringan dapat membuat kapasitor AGC lebih mudah untuk dimodifikasi. Saya akan merekomendasikan menggunakan unit ini.

Komponen berikut diperlukan:

Modul wifi ESP-12F

  • Pengatur 3.3V xc6203
  • 220uF 6V kapasitor
  • 2 dioda schottky
  • tombol tekan 6mm
  • n saluran MOSFET mis. AO3400
  • p saluran MOSFET mis. AO3401
  • resistor 2x4k7, 3 x 100K, 1 x 470K
  • sepotong kecil papan prototipe
  • Penerima RXB6 atau WL301-341 superhet 433MHz
  • SSD1306 0.96 layar OLED (versi SPI satu warna)
  • Baterai LIPO 802030 400mAh
  • Konektor 3 pin untuk pengisian daya
  • Kaitkan kawat
  • Kawat tembaga diemail self-fluxing
  • resin epoksi
  • Pita dua sisi
  • kandang cetak 3D

Alat yang dibutuhkan

  • Besi solder titik halus
  • Jalinan solder
  • Pinset
  • Tang

Langkah 2: Skema

Skema
Skema

Sirkuit ini cukup mudah.

Regulator LDO 3.3V mengubah LIP menjadi 3.3V yang dibutuhkan oleh modul ESP-12F.

Daya disuplai ke layar dan Penerima melalui dua MOSFET switching sehingga mati saat modul ESP sedang tidur.

Tombol memulai sistem dengan memasok 3.3V ke input EN dari ESP8266. GPIO5 kemudian mempertahankan ini saat modul aktif. Tombol tersebut juga dipantau menggunakan GPIO12. Ketika GPIO5 dilepaskan maka EN dilepas dan unit dimatikan.

Jalur data dari penerima dipantau oleh GPIO4. Sinyal RSSI dipantau oleh AGC melalui pembagi potensial 2:1.

Layar SSD1306 dikendalikan melalui SPI yang terdiri dari 5 sinyal GPIO. Mungkin saja menggunakan versi I2C tetapi ini akan memerlukan perubahan pustaka yang digunakan dan memetakan ulang beberapa GPIO.

Langkah 3: Modifikasi Penerima

Modifikasi Penerima
Modifikasi Penerima
Modifikasi Penerima
Modifikasi Penerima
Modifikasi Penerima
Modifikasi Penerima

Seperti yang disediakan, RXB6 tidak membuat sinyal RSSI tersedia pada pin data eksternalnya.

Modifikasi sederhana memungkinkan ini. Konektor sinyal DER pada unit sebenarnya hanyalah pengulangan dari sinyal sinyal Data. Mereka dihubungkan bersama melalui resistor 0 Ohm berlabel R6. Ini harus dihilangkan dengan menggunakan besi solder. Komponen berlabel R7 sekarang harus ditautkan. Ujung atas sebenarnya adalah sinyal RSSI dan bagian bawah menuju ke konektor DER. Seseorang dapat menggunakan resistor 0 Ohm tetapi saya hanya menghubungkannya dengan sedikit kabel. Lokasi ini dapat diakses di luar kaleng penyaringan logam yang tidak perlu dilepas untuk modifikasi ini.

Modifikasi dapat diuji dengan memasang voltmeter di DER dan GND dengan penerima dinyalakan. Ini akan menunjukkan tegangan antara sekitar 0.4V (tidak ada daya yang diterima) dan sekitar 1.8V dengan sumber lokal 433MHz (misalnya remote control).

Modifikasi kedua tidak mutlak penting tetapi cukup diinginkan. Seperti yang diberikan, waktu respons AGC penerima diatur menjadi cukup lambat, membutuhkan beberapa ratus milidetik untuk merespons sinyal yang diterima. Ini mengurangi resolusi waktu selama pengambilan RSSI dan juga membuatnya kurang responsif untuk menggunakan RSSI sebagai pemicu pengambilan data.

Ada kapasitor tunggal yang mengontrol waktu respons AGC tetapi, sayangnya, kapasitor ini terletak di bawah kaleng penyaringan logam. Sebenarnya cukup mudah untuk melepas kaleng penyaring karena hanya dipegang oleh 3 lugs dan dapat diangkat dengan memanaskan masing-masing secara bergantian dan mengangkatnya dengan obeng kecil. Setelah dilepas, seseorang dapat membersihkan lubang untuk perakitan ulang dengan menggunakan jalinan de-solder atau pengeboran ulang dengan bit sekitar 0,8 mm.

Modifikasinya adalah dengan melepas kapasitor AGC C4 yang ada dan menggantinya dengan kapasitor 0,22uF. Ini mempercepat respons AGC sekitar 10 kali lipat. Itu tidak memiliki efek merugikan pada kinerja penerima. Pada gambar saya menunjukkan potongan trek dan tautan ke trek ini dari kapasitor AGC. Ini tidak perlu tetapi membuat titik AGC tersedia pada pad di luar kaleng penyaringan di bawah kristal jika seseorang ingin menambahkan kapasitansi ekstra kembali. Saya tidak perlu melakukan itu. Skrining kemudian dapat diganti.

Jika menggunakan unit WL301-341 RX maka foto menunjukkan ini dengan kapasitor AGC disorot. Pin sinyal RSSI juga ditampilkan. Ini sebenarnya tidak terhubung dengan apa pun. Satu hanya dapat menghubungkan kabel halus langsung ke pin. Atau di sana dua pin jumper pusat dihubungkan bersama dan keduanya membawa output data. Jejak di antara mereka dapat dipotong dan kemudian RSSI dihubungkan melalui yang cadangan untuk membuat sinyal RSSI tersedia pada keluaran jumper.

Langkah 4: Konstruksi

Konstruksi
Konstruksi
Konstruksi
Konstruksi
Konstruksi
Konstruksi
Konstruksi
Konstruksi

Ada sekitar 10 komponen yang dibutuhkan di luar modul ESP-12. Ini dapat dibuat dan dihubungkan pada sepotong papan prototyping. Saya menggunakan papan prototyping khusus ESP yang saya gunakan untuk memfasilitasi pemasangan regulator dan komponen smd lainnya. Ini menempel langsung di atas modul ESP-12.

Kotak yang saya gunakan adalah desain cetak 3D dengan 3 lekukan di dasar untuk mengambil modul penerima, tampilan dan esp. Ini memiliki potongan untuk tampilan dan lubang untuk titik pengisian dan tombol tekan yang harus dimasukkan dan diamankan dengan sedikit resin poxy.

Saya menggunakan kabel pengait untuk membuat koneksi antara 3 modul, titik pengisian daya, dan tombol. dan kemudian kencangkan di tempatnya menggunakan selotip dua sisi untuk ESP dan penerima dan tetes kecil epoksi untuk menahan sisi layar di tempatnya. Baterai dihubungkan ke titik pengisian dan dipasang di atas penerima menggunakan selotip dua sisi.

Langkah 5: Perangkat Lunak dan Konfigurasi

Perangkat lunak ini dibangun di lingkungan Arduino.

Kode sumber untuk ini ada di https://github.com/roberttidey/RF433Analyser Kode dapat memiliki beberapa konstanta untuk kata sandi yang diubah untuk tujuan keamanan sebelum dikompilasi dan di-flash ke perangkat ES8266.

  • WM_PASSWORD mendefinisikan kata sandi yang digunakan oleh wifiManager saat mengonfigurasi perangkat ke jaringan wifi lokal
  • update_password mendefinisikan kata sandi yang digunakan untuk mengizinkan pembaruan firmware.

Saat pertama kali digunakan perangkat memasuki mode konfigurasi wifi. Gunakan ponsel atau tablet untuk menyambung ke Titik akses yang diatur oleh perangkat, lalu telusuri ke 192.168.4.1. Dari sini Anda dapat memilih jaringan wifi lokal dan memasukkan kata sandinya. Ini hanya perlu dilakukan sekali atau jika mengubah jaringan wifi atau kata sandi.

Setelah perangkat terhubung ke jaringan lokalnya, perangkat akan mendengarkan perintah. Dengan asumsi alamat IP-nya adalah 192.168.0.100 maka pertama-tama gunakan 192.168.0.100:AP_PORT/upload untuk mengunggah file di folder data. Ini kemudian akan memungkinkan 192.168.0.100/edit untuk melihat dan mengunggah file lebih lanjut dan juga memungkinkan 192.168.0.100 untuk mengakses antarmuka pengguna.

Poin yang perlu diperhatikan dalam perangkat lunak adalah

  • ADC di ESP8266 dapat dikalibrasi untuk meningkatkan akurasinya. Sebuah string dalam file konfigurasi menetapkan nilai mentah yang dicapai untuk dua tegangan input. Ini tidak terlalu penting karena RSSI adalah sinyal yang cukup relatif tergantung pada antena dll.
  • Tegangan RSSI ke db cukup linier tetapi melengkung pada ekstrem. Perangkat lunak ini memiliki kecocokan kubik untuk meningkatkan akurasi.
  • Sebagian besar aritmatika dilakukan dengan menggunakan bilangan bulat berskala sehingga nilai RSSI sebenarnya 100 kali dari yang sebenarnya. Nilai yang ditulis ke file atau ditampilkan akan dikonversi kembali.
  • Perangkat lunak ini menggunakan mesin keadaan sederhana untuk mengontrol penangkapan RSSI dan transisi data.
  • Transisi data dipantau menggunakan rutin layanan interupsi. Pemrosesan loop Arduino normal ditangguhkan selama pengambilan data dan pengawas tetap hidup secara lokal. Ini untuk mencoba meningkatkan latensi interupsi untuk menjaga pengukuran waktu sesetia mungkin.

Konfigurasi

Ini disimpan di esp433Config.txt.

Untuk pengambilan RSSI, interval dan durasi pengambilan sampel dapat diatur.

Untuk pengambilan data, tingkat pemicu RSSI, jumlah transisi, dan durasi maksimum dapat diatur. Level pemicu yang sesuai adalah sekitar +20dB di latar belakang tanpa level sinyal. Sebuah string pulseWidths juga memungkinkan kategorisasi sederhana dari lebar pulsa untuk membuat analisis lebih mudah. Setiap baris yang dicatat memiliki pulseLevel, lebar dalam mikrodetik dan kode yang merupakan indeks dalam string pulseWidths yang lebih besar dari lebar yang diukur.

CalString dapat meningkatkan akurasi ADC.

idleTimeout mengontrol jumlah milidetik ketidakaktifan (tidak ada tangkapan) sebelum perangkat mati secara otomatis. Menyetelnya ke 0 berarti tidak akan habis waktu.

Pengaturan tiga tombol mengontrol apa yang membedakan penekanan tombol pendek menengah dan panjang.

displayUpdate memberikan interval penyegaran tampilan lokal.

Langkah 6: Penggunaan

Unit dihidupkan dengan menekan tombol untuk waktu yang singkat.

Layar awalnya akan menampilkan alamat IP lokal selama beberapa detik sebelum mulai menampilkan level RSSI secara real time.

Menekan tombol sebentar akan memulai pengambilan RSSI ke file. Biasanya ini akan berakhir ketika durasi RSSI telah selesai tetapi penekanan tombol pendek lebih lanjut juga akan menghentikan pengambilan.

Menekan tombol sedang akan memulai pengambilan transisi data. Layar akan menunjukkan menunggu pemicu. Ketika RSSI berada di atas level pemicu, maka RSSI akan mulai menangkap transisi data berjangka waktu untuk jumlah transisi yang ditentukan.

Menahan tombol lebih lama dari durasi tombol yang lama akan mematikan unit.

Perintah pengambilan juga dapat dimulai dari antarmuka web.

Langkah 7: Antarmuka Web

Antarmuka Web
Antarmuka Web
Antarmuka Web
Antarmuka Web

Mengakses perangkat dengan alamat ipnya menunjukkan antarmuka web dengan 3 tab; Menangkap, status dan konfigurasi.

Layar pengambilan menunjukkan file yang diambil saat ini. Isi file dapat ditampilkan dengan mengklik namanya. Ada juga tombol hapus dan unduh untuk setiap file.

Ada juga menangkap RSSI dan menangkap tombol Data yang dapat digunakan untuk memulai penangkapan. Jika nama file diberikan, itu akan digunakan jika tidak, nama default akan dibuat.

Tab config menunjukkan konfigurasi saat ini dan memungkinkan nilai diubah dan disimpan.

Antarmuka web mendukung panggilan berikut:

/edit - mengakses sistem pengarsipan perangkat; dapat digunakan untuk mengunduh file langkah-langkah

  • /status - mengembalikan string yang berisi detail status
  • /loadconfig -mengembalikan string yang berisi detail konfigurasi
  • /saveconfig - mengirim dan menyimpan string untuk memperbarui konfigurasi
  • /loadcapture - mengembalikan string yang berisi ukuran dari file
  • /setmeasureindex - ubah indeks yang akan digunakan untuk pengukuran selanjutnya
  • /getcapturefiles - dapatkan string dengan daftar file ukuran yang tersedia
  • /capture - memicu penangkapan RSSI atau data
  • /firmware - memulai pembaruan firmware

Direkomendasikan: