Extender HDMI Optik. 300 meter

Selamat siang, Habr!



Pengembangan kabel ekstensi serat optik HDMI untuk 300 meter. Penolakan saluran balik (transmisi data pada satu kabel serat optik). Mengkloning EDID dari monitor.

Standar HDMI banyak digunakan di banyak area di mana Anda ingin menampilkan gambar di layar. Secara pribadi, saya dapat mengirimkan sinyal melalui kabel HDMI ke jarak 10 meter (itu tidak diperlukan lagi). Saya pikir tanpa kehilangan kualitas, Anda dapat mentransfer gambar ke jarak 30-40m. Kerugian utama dalam kasus pemasangan kabel seperti itu adalah diameter dan ukurannya, secara langsung, dari konektor. Cara termudah untuk mengecualikan kabel adalah dengan menggunakan kabel ekstensi nirkabel, saya pikir akan mungkin mencapai 100-150 meter, tapi saya tidak akan mengatakannya dengan pasti. Sayangnya, tidak semua objek, karena satu dan lain hal, memungkinkan penggunaan jaringan nirkabel. Dan jika Anda perlu lebih jauh?


Fig. 1. Kabel dan optik HDMI (LC)

Tentu saja, optik mungkin bukan pilihan terbaik untuk mentransmisikan video, tetapi ketika menggunakan PC dan monitor stasioner, itu bahkan bukan apa-apa. Tesis pertama adalah diameter kabel optik (dalam kasus saya, itu adalah 2-3mm) dan diameter konektor kabel serat optik. Yang kedua, tentu saja, jaraknya. Ke depan, saya akan mengatakan bahwa pengujian dilakukan pada kabel 300m, diameter (eksternal) - 3mm.

Basis unsur


Ketika mengembangkan basis elemen, pilihannya secara tak terduga jatuh pada perusahaan Cina SiFotonics, yang berspesialisasi dalam peralatan semacam ini. Sebagai permulaan, kami mempelajari produk-produk mereka dan mendapatkan dua debug yang kami sambungkan dengan kabel optik setinggi tiga ratus meter dan memastikan semuanya bekerja dengan sempurna. Mereka juga memiliki penerima / pemancar optik SFP (ROSA / TOSA), serializers / deserializers, driver, dll.

Prinsip kerja


Untuk menghubungkan dan mengoperasikan perangkat, Anda perlu menghubungkan dua kabel optik dan menerapkan daya (kabel microUSB). Jika kita memberikan analogi dengan kabel HDMI konvensional, di mana ada I2C untuk bertukar tabel EDID, maka semuanya sama - satu saluran untuk transfer data, yang kedua - untuk mentransfer EDID dari monitor ke kartu video. Data ditransmisikan dengan kecepatan 10Gbps. Merobek kabel saluran balik, gambar selalu hilang. Pada saat ini, beberapa keraguan merayap masuk, dan apakah ada data layanan atau tanda sinkronisasi di saluran kembali sedang dikirim, atau mungkin perangkat sedang memonitor koneksi satu sama lain ...


Fig. 2. Komposisi modul

Iterasi pertama papan, itu juga tata letak, ternyata berukuran 20X45mm. Dengan konektor daya "samping", untuk memudahkan mendistribusikan bus listrik di tempat pembuangan sampah. Total 4 lapisan ternyata. Mengapa konfigurasi PCB ini buruk, saya akan menulis nanti. Pengembang debug yang rumit menggunakan 0201 pasif, yang saya benar-benar tidak ingin melakukannya, jadi saya menggunakan 0402 dan bubur kapasitor di bawah chip.


Fig. 3. Model 3D dari tata letak papan modul sumber

Seperti yang saya tulis di atas, tugas saya bukan hanya membuat pasangan dengan jarak kerja 300 meter, tetapi juga untuk menghapus saluran balik optik. Bahkan pada tahap pengembangan, kami memutuskan untuk tidak terlibat dalam menyelesaikan perangkat lunak Cina (meskipun kami dengan baik hati disediakan dengan semua sumber), karena, pertama, ini adalah sekelompok baris kode aneh dalam kompiler yang tidak dapat dipahami, dan kedua, SiFotonics dapat menyediakan chip yang di-flash, yang Sangat nyaman, karena sangat sulit untuk mem-flash perangkat sebagai bagian dari produksi. Agar pembaca tidak berpikir bahwa saya melebih-lebihkan ketika berbicara tentang kesulitannya, saya akan memberikan foto stand pemrograman.


Fig. 4. Berdiri untuk pemrograman dan diagnostik

Ya, ya, seperti yang mungkin sudah Anda duga, kontak JTAG untuk pemrograman adalah output ke kontak microUSB, dan untuk beberapa kontak HDMI yang dulunya GND. Saya harus mengatakan segera bahwa ini tidak mempengaruhi kualitas pekerjaan. Jadi, berdirilah. Untuk memprogram chip, Anda harus terlebih dahulu memasang satu sirkuit dudukan dan meletakkan chip dalam mode pemrograman menggunakan perangkat lunak khusus. Selanjutnya, Anda perlu memasang sirkuit lain dan menggunakan perangkat lunak lain untuk mem-flash board. Setelah itu, secara otomatis masuk ke mode kerja.
Secara umum, menurut saya ini tidak praktis bahkan untuk 1000 buah.

Mari kita kembali ke saluran balik. Untuk menyimpan tabel EDID, kita memerlukan EEPROM, dan kita perlu mengubah alamatnya dengan cepat. Dia mengambil N24C02UDTG dalam paket miniatur US-8. Untuk pemrogramannya, saya menggunakan mikrokontroler STM32F031G4U6, juga dalam paket terkecil yang dapat ditemukan di domain publik - UFQFPN-28. Saya juga mengambil saklar daya TPS27081ADDCR. Dan inilah yang saya dapat:


Fig. 5. Skema implementasi kloning EDID

Idenya adalah sebagai berikut. Sirkuit ini diimplementasikan pada modul transmisi (yang menghubungkan ke PC). Untuk mengkloning monitor EDID, perangkat terhubung ke monitor. Secara default, alamat EEPROM pada modul kami tidak boleh bertepatan dengan alamat EEPROM di monitor (saat membaca), yaitu, dapat berupa yang lain, misalnya, saya membuat kaki A0 dapat dikelola. Pada saat menghubungkan ke monitor, daya disuplai ke EEPROM, dan kaki A0 ditarik ke resistor logis "0". Dua EEPROM dengan alamat yang sama tergantung di bus i2c, tetapi ini tidak penting, karena kami belum bekerja dengan mereka. Di sirkuit saya ada juga tombol dan LED untuk menunjukkan daya / firmware EDID / kesalahan. Tekan sebentar tombol mengubah alamat dan memungkinkan mikrokontroler untuk mulai membaca / menulis EDID. Kami menyetel ulang EEPROM dengan daya (untuk berjaga-jaga) ketika kami menerima sinyal dari tombol, membaca EDID monitor dan segera menuliskannya ke chip kami. Kami berkedip 3 kali dengan LED dan mematikan kekuatan EEPROM. Membaca / menulis terjadi secara instan, sehingga penundaan terpaksa dilakukan untuk berkedip, sehingga pengguna mengerti bahwa ada sesuatu yang terjadi. Artinya, kita mulai berkedip ketika sudah mungkin untuk melepaskannya. Jika ada sesuatu yang salah, maka jangan menyalakan LED.

Selanjutnya, hubungkan modul ke PC dan segera lihat monitor baru di pengaturan. Masalahnya terpecahkan.

Untuk pemrograman, mikrokontroler membawa bus SWD.


Fig. 6. Sisi belakang papan modul

Fitur


Setelah semua pekerjaan dilakukan dengan kloning EDID, saya menghapus saluran optik terbalik dan semuanya bekerja dengan sempurna. Dalam percobaan ini, daya berasal dari PC USB. Selama boot, komputer (dalam kasus apa pun milik saya) mematikan daya USB untuk sesaat dan gambar BIOS berkedip pada monitor - ini tidak kritis. Kemudian saya mengeluarkan modul saluran balik dari perangkat dan setelah ini berkedip gambar berhenti pulih. Dan ini justru karena kurangnya modul TOSA pada perangkat monitor. Saya mencoba meniru kehadiran laser, tetapi semuanya sia-sia. Saya hampir yakin bahwa masalah ini dapat diselesaikan dengan firmware, tetapi kami memutuskan untuk tidak membahasnya. Sebuah keajaiban terjadi ketika saya menghubungkan kedua perangkat (penerima dan pemancar) ke catu daya (seperti, seperti yang ditunjukkan dalam pernyataan kerja). Gambar berhenti berkedip, dan karenanya menghilang. Jika Anda mendistorsi kekuatan perangkat selama operasi, gambar dipulihkan tanpa masalah.


Gbr. 7. Sirkuit switching modul pemancar (laser)

Sekarang kembali ke konfigurasi PCB dan konektor daya samping. Implementasi ini awalnya tidak nyaman dan hanya cocok untuk tata letak. Dalam perangkat rilis, saya mengurangi lebar papan menjadi 16,3 mm dan meletakkan konektor daya di tempat modul optik saluran balik - ini akan memungkinkan Anda untuk memasukkan beberapa perangkat dalam satu kartu video. Kalau tidak, konektor daya mengganggu saya dan papan sangat lebar.


Gbr. 8. Papan penerima dan pemancar yang sempit

Di sini, tentu saja, ada banyak pengkabelan ulang dan penataan ulang komponen. Kisaran suplai benar-benar diperbaiki untuk mengoptimalkan ukuran ini dan mentransfer konektor microUSB. Seperti yang Anda duga, casing untuk kedua perangkat identik, oleh karena itu konfigurasi papan, konektor, dan modul optik terletak sama. Tubuh digiling dari aluminium dan merupakan pendingin untuk prosesor dan driver. Tonjolan untuk komponen-komponen ini digiling di dalam, sehingga mereka juga terletak dengan cara yang sama.

Kesimpulan


Saat ini, empat pasang perangkat disolder, tes dilakukan pada kabel panjang pada monitor dan TV yang berbeda. Tidak ada keluhan tentang pekerjaan itu. Kami memeriksa hanya pada FullHD dan di bawah ini.

Terima kasih dan sampai jumpa lagi!

Source: https://habr.com/ru/post/id473796/


All Articles