Isi kandungan:

Pad Kekunci Makro Bluetooth DIY: 10 Langkah (dengan Gambar)
Pad Kekunci Makro Bluetooth DIY: 10 Langkah (dengan Gambar)

Video: Pad Kekunci Makro Bluetooth DIY: 10 Langkah (dengan Gambar)

Video: Pad Kekunci Makro Bluetooth DIY: 10 Langkah (dengan Gambar)
Video: Cara Mengatasi Bluetooth Tidak Dapat Terhubung di Windows 10 2024, November
Anonim
Pad Kekunci Makro Bluetooth DIY
Pad Kekunci Makro Bluetooth DIY

Dalam Instructable ini kita akan melihat penggunaan Bluetooth built-in ESP32 untuk meniru Papan Kekunci Bluetooth.

Bluetooth HID (Human Interface Device) adalah protokol yang digunakan oleh papan kekunci dan tetikus Bluetooth biasa dan mungkin untuk meniru ini hanya dengan ESP32, yang sangat bagus!

Dengan sebilangan papan pengembangan ESP32 bermula kurang dari $ 5 * yang disampaikan, ini adalah kaedah yang sangat murah dan mudah untuk membuat papan kekunci tanpa wayar seperti papan kekunci Makro. Pad kekunci makro dapat digunakan untuk mengendalikan pelbagai aplikasi seperti Editor video atau Photoshop, secara peribadi saya menggunakan saya untuk mengendalikan pemandangan di OBS ketika saya membuat video atau streaming.

Pertama-tama kita akan melihat bagaimana menggunakan pustaka papan kekunci ESP32 HID dan kemudian saya akan menunjukkan kepada anda bagaimana saya menggunakannya untuk membina Pad Kekunci Bluetooth Makro bateri.

Bekalan

  • Papan Dev TinyPICO ESP32 (Mana-mana ESP32 boleh berfungsi)
  • Pad Kekunci 4 * 4 Matriks *

Anda juga memerlukan bateri lipo, saya hanya menggunakan bateri rawak yang saya letakkan sehingga saya tidak dapat menghubungkannya!

Sekiranya PC anda tidak mempunyai Bluetooth, anda boleh menggunakan dongle seperti ini:

Amazon.co.uk *:

Amazon.com *:

Amazon.de *:

* = Ahli gabungan

Langkah 1: Lihat Video

Image
Image

Saya telah membuat video yang merangkumi perkara yang sama seperti Instructable ini, jadi jika anda berminat, sila lihat! Saya juga membuat video di sekitar projek ESP8266 dan ESP32 secara berkala jadi mungkin ada video lain di saluran saya yang mungkin menarik bagi anda!

Langkah 2: [Pilihan] Bermula dengan ESP32

ESP32 adalah mikrokontroler yang serasi dengan Arduino IDE dan disertakan dengan WiFi dan Bluetooth. Mereka juga cukup murah sehingga ia merupakan kerepek yang sangat berguna untuk projek anda.

Anda perlu menambahkan definisi papan ESP32 ke Arduino IDE anda, untuk ini anda boleh mengikuti langkah-langkah yang disenaraikan di ESP32 Arduino projek Github Page

Langkah 3: Memasang Pustaka Papan Kekunci ESP32 Ble

Memasang Pustaka Papan Kekunci ESP32 Ble
Memasang Pustaka Papan Kekunci ESP32 Ble
Memasang Pustaka Papan Kekunci ESP32 Ble
Memasang Pustaka Papan Kekunci ESP32 Ble

Adalah mungkin untuk menggunakan Bluethooth HID pada ESP32 tanpa perpustakaan luaran, tetapi pengguna Github T-Vk telah menulis perpustakaan yang disebut Papan Kekunci ESP32-BLE yang menjadikannya lebih seperti perpustakaan papan kekunci Arduino standard yang menjadikannya lebih mudah digunakan.

Perpustakaan ini tidak tersedia di pengurus perpustakaan, jadi anda perlu memuat turunnya dari Github.

  • Pergi ke halaman keluaran projek dan muat turun ESP32-BLE-Keyboard.zip terkini
  • Setelah dimuat turun, anda boleh menambahkannya ke Arduino IDE anda tetapi pergi ke Sketch -> Include Library dan kemudian Tambahkan Zip ke library dan pilih ESP32-BLE-Keyboard.zip dari langkah sebelumnya.

Langkah 4: Melihat Contohnya

Melihat Contohnya
Melihat Contohnya
Melihat Contohnya
Melihat Contohnya
Melihat Contohnya
Melihat Contohnya

Setelah ditambahkan, kita dapat membuka contoh yang disertainya. Ini adalah contoh yang cukup bagus kerana menunjukkan beberapa perkara berbeza yang dapat anda capai dengan perpustakaan tetapi saya juga akan menambahkan sedikit lebih terperinci di mana saya fikir ia akan berguna.

Anda boleh mengakses contoh dengan pergi ke Fail -> Contoh -> Papan Kekunci ESP32 BLE -> SendKeyStrokes

Menyiapkan sambungan Bluetooth

Dalam penyediaan ia memulakan sambungan Bluetooth, pada tahap ini seharusnya tersedia untuk dipasangkan pada perangkat anda.

bleKeyboard.begin ();

Di dalam gelung itu juga memeriksa apakah ia disambungkan ke peranti

bleKeyboard.isSambungan ()

Menaip

Perkara pertama yang ditunjukkan oleh contohnya ialah bagaimana anda dapat menaip teks setelah disambungkan, ia akan menaip "Hello world" terlebih dahulu menggunakan

bleKeyboard.print ("Hello world");

Tekan butang tunggal

Ini kemudian menunjukkan bagaimana anda dapat "menulis" kunci kembali, ini pada dasarnya meniru satu kekunci tekan butang ini.

bleKeyboard.write (KEY_RETURN);

Anda boleh membuka fail perpustakaan BleKeyboard.h untuk melihat semua kunci yang ditentukan seperti ini. Anda juga boleh menghantar watak ascii dengan memasukkannya dalam koma tunggal.

bleKeyboard.write ('A');

Kekunci Media

Ini juga menunjukkan bagaimana anda dapat mengirim kunci media, ini serupa dengan bagaimana anda dapat mengawal kelantangan atau melangkau trek dengan fon kepala Bluetooth anda. Contohnya menunjukkan kunci main / jeda, tetapi sekali lagi anda boleh membuka BleKeyboard.h untuk melihat pilihan lain yang ada.

bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);

Menekan dan melepaskan kekunci

Perkara terakhir yang ditunjukkan oleh kita adalah bagaimana anda boleh menekan dan menahan kekunci, ini berguna untuk membuat papan kekunci Makro. Contoh yang ditunjukkan di sini adalah untuk Ctrl + Alt + Delete

bleKeyboard.press (KEY_LEFT_CTRL);

bleKeyboard.press (KEY_LEFT_ALT);

bleKeyboard.press (KEY_DELETE);

Ia kemudian memanggil ReleaseAll, yang mungkin anda dapat meneka dengan nama melepaskan semua kekunci yang ditekan.

bleKeyboard.releaseAll ();

Anda juga boleh melepaskan kunci tertentu jika anda mahu dengan menggunakan arahan pelepasan dengan kunci yang ingin dilepaskan

bleKeyboard.release (KEY_DELETE);

Langkah 5: Petua Lain untuk Perpustakaan

Petua lain untuk Perpustakaan
Petua lain untuk Perpustakaan
Petua lain untuk Perpustakaan
Petua lain untuk Perpustakaan
Petua lain untuk Perpustakaan
Petua lain untuk Perpustakaan

Kami merangkumi fungsi utama perpustakaan pada langkah sebelumnya, tetapi berikut adalah beberapa perkara tambahan yang saya rasa mungkin berguna untuk diketahui

Gunakan Pencetus Luaran

Selalu terbaik untuk mengawal peranti HID seperti ini menggunakan pencetus luaran seperti menekan butang. Sekiranya anda menggunakan pemasa dan ada yang tidak beres, ia mungkin menyusahkan untuk memutuskan sambungan. Bayangkan anda perlu mematikan Bluetooth anda jika anda secara tidak sengaja memprogramnya untuk menekan Ctrl + Alt + Del setiap 100mS!

Menukar nama peranti

Secara lalai nama perangkat akan muncul sebagai "Papan Kekunci ESP32 BLE", ini dapat diubah ketika Anda membuat contoh perpustakaan. Anda boleh menetapkan nama peranti, pengeluar dan tahap bateri awal.

BleKeyboard bleKeyboard ("Nama Peranti Bluetooth", "Pengilang Peranti Bluetooth", 100);

Menetapkan tahap bateri (sekurang-kurangnya tidak berfungsi untuk saya)

Perpustakaan mendakwa anda juga boleh menetapkan tahap bateri tetapi ia tidak berfungsi pada PC Windows saya (ia tetap dengan nilai awalnya) dan telefon android saya tidak menunjukkan tahap semuanya. Inilah perintah untuknya sekiranya ia berfungsi untuk anda

bleKeyboard.setBatteryLevel (50)

Keserasian Peranti

Saya berjaya menjalankan contoh pada PC Windows 10, telefon Android dan Mac saya (walaupun entah bagaimana ia masih menjalankan Sierra!)

Ia juga hanya dapat disambungkan ke satu peranti pada satu masa.

Penyelesaian Masalah Berpasangan

Sekiranya anda mengalami masalah memasangkan, cuba mulakan semula ESP32 semasa peranti anda mencari. Saya juga pernah menghidupkan dan mematikan bluetooth pada PC untuk memasangkannya.

Langkah 6: Pad Kekunci Makro

Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro
Pad Kekunci Makro

Sekarang kita mempunyai asas-asasnya, mari kita buat sesuatu yang praktikal dari itu!

Dalam panduan sebelumnya, saya menunjukkan cara membuat papan kekunci Makro termudah daripada papan kekunci Arduino pro Micro dan murah. Untuk setiap butang pada papan kekunci ia mengirimkan kombinasi tombol yang berbeza yang dapat digunakan untuk mengendalikan aplikasi, secara peribadi saya menggunakannya untuk OBS, perisian yang saya gunakan untuk merakam video dan ketika saya melakukan streaming. Ini nampaknya seperti projek yang baik untuk menggunakan ESP32 supaya kita dapat membuat versi tanpa wayar.

Untuk membina ini, saya akan menggunakan papan TinyPICO ESP32 milik Unknown Maker. Sebab utama untuk memilihnya adalah papan yang sangat cekap kuasa dan mempunyai litar untuk kehabisan dan mengecas bateri Lipo yang terpasang, jadi yang perlu saya lakukan ialah memasang bateri.

Saya akan berbohong jika fakta bahawa ia mempunyai jarak baris yang sama dengan Pro Micro dan saya dapat menggunakan papan pemecah yang sudah dibuat yang saya buat sebelumnya juga tidak menarik!

Pad kekunci memerlukan 8 pin GPIO untuk beroperasi, dan TinyPICO mempunyai 8 pin GPIO berturut-turut sehingga kami akan menggunakannya. Anda boleh menyambungkan papan kekunci ke TinyPICO dengan mudah seperti yang ditunjukkan dalam gambar di atas.

Langkah 7: Kod untuk Pad Kekunci Makro

Kod untuk Pad Kekunci Makro
Kod untuk Pad Kekunci Makro
Kod untuk Pad Kekunci Makro
Kod untuk Pad Kekunci Makro

Kod untuk lakaran Macro Keypad boleh didapati di Github saya.

Seperti juga perpustakaan BleKeyboard yang dipasang pada langkah sebelumnya, anda juga perlu memasang perpustakaan untuk pad kekunci, anda boleh melakukannya dengan membuka pengurus perpustakaan dengan pergi ke Sketsa -> Sertakan Perpustakaan -> Kelola Perpustakaan

Di dalam pengurus perpustakaan, cari "pad kekunci" dan pasang satu oleh Mark Stanley dan Alexander Brevig

Satu konfigurasi yang mungkin perlu anda buat jika anda menggunakan ESP32 yang berbeza daripada TinyPICO adalah pin papan kekunci, ia ditetapkan dalam array rowPins dan colPins. Apabila melihat bahagian depan papan kekunci dan bermula dari kiri, 4 pin pertama adalah pin baris dan 4 yang kedua adalah pin col.

Setelah selesai, muat naik kod ke papan dan anda harus menguji pada tahap ini berfungsi.

Langkah 8: Mari Jadikannya Tanpa Wayar

Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!
Mari Jadikannya Tanpa Wayar!

Seperti yang telah disebutkan sebelumnya, TinyPICO mempunyai rangkaian untuk mengendalikan Lipo yang terpasang sehingga yang perlu kita lakukan hanyalah menyambungkannya. Ia dilengkapi dengan penyambung JST yang dapat disolder ke bawah, atau anda boleh menggunakan pin Bat dan GND jika anda ingin melakukannya melalui pin.

Sekiranya anda menggunakan penyambung JST, sila periksa polariti bateri anda yang sesuai dengan TinyPICO, tidak ada piawai untuk bagaimana bateri ini disambungkan sehingga ada kemungkinan bateri anda tidak sepadan.

Periksa voltan bateri lipo anda sebelum menggunakannya, bateri yang sihat mestilah 3V atau lebih tinggi, bateri yang saya dapati dengan penyambung JST yang betul membaca 0V!

Saya akhirnya menggunakan sel 18650 dalam pemegang dan menyoldernya ke penyambung JST bateri mati.

TinyPICO mengurangkan penggunaan kuasanya ketika kehabisan bateri dengan tidak menghidupkan LED mana pun, jadi walaupun tidak menyala, semoga benar! Penambahbaikan projek pada masa akan datang adalah dengan memancarkan LED dotstar onboard pada permulaan untuk memberitahu anda bahawa ia sebenarnya telah dihidupkan dan mungkin sekali lagi ketika ia menyambung. Buat masa ini anda boleh menyemak menu Bluetooth sistem anda yang sudah aktif dan disambungkan ok.

Langkah 9: Mengujinya

Mengujinya!
Mengujinya!

Mari kita uji, jika saya membuka bahagian hotkeys OBS, saya boleh mengklik tindakan yang berbeza untuk merakam kombinasi butang yang akan mengawalnya, untuk ini kita hanya boleh mengklik butang pada papan kekunci kami dan ia akan dikemas kini.

Selepas anda klik berlaku, anda tidak boleh menggunakan papan kekunci anda untuk mengawal pemandangan anda di OBS.

Langkah 10: Terima kasih kerana Membaca

Semoga anda mendapat Arahan ini berguna. Saya ingin mendengar tentang apa yang akan anda buat dengan jenis persediaan ini. Tolong beritahu saya dalam komen di bawah ini, atau sertai saya dan sekumpulan pembuat lain di pelayan Discord saya, di mana kita boleh membincangkan topik ini atau mana-mana pembuat yang berkaitan dengan anda, orang-orang sangat membantu di sana jadi ini adalah tempat yang bagus untuk menggantung keluar

Saya juga ingin mengucapkan terima kasih banyak kepada Penaja Github saya yang membantu menyokong apa yang saya lakukan, saya sangat menghargainya. Sekiranya anda tidak tahu, Github sepadan dengan penajaan untuk tahun pertama, jadi jika anda membuat penajaan, mereka akan sepadan dengan 100% untuk beberapa bulan akan datang.

Terima kasih untuk membaca!

Disyorkan: