ShIoTiny: Pembaruan dan Pemberitahuan



Tentang apa artikel ini


Kami melanjutkan serangkaian artikel tentang ShIoTiny - pengontrol yang dapat diprogram secara visual berdasarkan chip ESP8266 .

Artikel ini berbicara tentang apa yang telah berubah sejak firmware ShIoTiny sebelumnya: bagaimana antarmuka pengguna telah berubah; cara menugaskan kembali "kaki" dan hal-hal lain yang kurang penting, tetapi tidak lama ditunggu-tunggu.

Artikel ini menyajikan sesuatu seperti " lembar fakta " tentang keadaan di bidang pengembangan firmware ShIoTiny . Mereka yang tidak tertarik dengan perkembangan saya dalam artikel ini dapat melewati artikel ini dengan hati nurani yang jelas.

Mereka yang tidak tahu apa yang mereka bicarakan, tetapi ingin mengetahuinya, dapat membaca artikel saya sebelumnya tentang firmware ShIoTiny atau merujuk ke dokumentasi .

Situs Proyek ShIoTiny

Versi online editor ElDraw persis sama dengan di firmware, untuk referensi.

Tautan ke skema, firmware, dan lainnya - di situs web ShIoTiny di bagian dokumentasi.

Artikel ShIoTiny Sebelumnya dan Artikel Lainnya Saya

Intro untuk meyakinkan masyarakat terhormat


Kebetulan kuartal keempat adalah terburu-buru permanen. Oleh karena itu, beberapa kawan sudah mulai mengubur proyek ShIoTiny dan menulis surat kepada saya, mereka berkata - “hai, penulis, di mana Anda?! kenapa kamu tidak menulis ?! kami menggunakan firmware Anda di sini! dan Anda bukan satu artikel baru! "
Tentu saja, itu dengan cara yang sopan, tetapi dari segi makna itu. Beberapa, sebaliknya, menulis saran dan komentar, yang banyak membantu dalam menangkap kutu perangkat lunak. Terima kasih kawan Itu selalu baik bahwa Anda tidak memasak dalam jus Anda sendiri, tetapi memiliki orang yang berpikiran sama.

Teman! Saya mengingatkan Anda bahwa proyek saya adalah hobi dan selain itu saya punya pekerjaan, seorang istri dan anak-anak. Jadi saya mohon: bersikap lunak! Penulis menulis bagaimana ia bisa dan bisa :)

Saya segera meyakinkan semua orang: proyek ini tidak mati ! Saya menangkap beberapa kutu dari kode dan, di samping itu, redid situs proyek (meskipun saya masih belum menyelesaikannya - saya mengisi situs dengan konten).

Dari sudut pandang sebagian besar ajaran filosofis di dunia tidak ada yang permanen. Bahkan alam semesta kita berkembang. Apa yang dapat kita katakan tentang firmware mikrokontroler atau situs web proyek?

Perubahan kunci pada firmware ShIoTiny memengaruhi terutama dua hal: kemungkinan mendefinisikan ulang kaki dan halaman status pengontrol. Kami akan membicarakannya. Adapun desain baru dari situs proyek, saya tidak akan menyentuhnya di sini: siapa pun yang penasaran akan datang, melihat dan mengkritik.

Mendefinisikan ulang ESP8266 Kaki


Jadi, kaki atau mereka - GPIO . Awalnya, kaki-kaki mikrokontroler ESP866 tidak dimaksudkan untuk didefinisikan ulang. Mereka secara kaku dipaku pada input dan output papan ESP-07 (siapa pun yang tertarik - semuanya tentang hal itu ada di situs web proyek).

Tetapi tiba-tiba ternyata firmware saya tanpa perubahan apa pun tidak hanya terjadi pada modul ESP-07 dengan FLASH 1MB, tetapi juga pada ESP-01 , ESP-12 dan bahkan pada ESP-8285 !

Muncul pertanyaan yang benar bahwa seseorang membutuhkan 5 input dan satu output, 6 output lainnya dan tidak ada input, dan ketiga termometer pada saat yang sama.

Gelombang surat dari publik yang marah hampir membuat sisa-sisa pikiranku menjadi gelap! Istri saya sudah bersiap memanggil saya mantri dengan kemeja kematian ... Tapi saya ternyata gila!
Sambil menggertakkan gigi dan minum tiga liter kopi, saya mengumpulkan sisa-sisa otak, yang kebetulan tidak mabuk di tubuh siswa, dan menemukan cara menerapkan trik dengan mendefinisikan kembali kaki sehingga semua orang akan merasa baik.

Saya tidak akan membuat pembaca bosan dengan dapur program internal. Dari sudut pandang pengguna, semuanya terlihat sangat sederhana: ia menusuk mouse pada simpul yang terhubung ke kaki mana pun dari modul GPIO dan memilih satu kaki dari daftar yang mungkin. Kira-kira seperti yang ditunjukkan pada gambar di bawah ini.



N / A - berarti bahwa kaki tidak dipilih.
Jika ada simpul di sirkuit dengan kaki N / A tidak dipilih, maka sirkuit seperti itu tidak dapat dimuat ke dalam perangkat - editor ElDraw tidak akan mengizinkannya. Tetapi skema semacam itu dapat diunduh ke disk untuk melanjutkan pengeditannya “beberapa saat kemudian”.

Semuanya sangat sederhana, tetapi ada nuansa.

Pertama , yang menurut saya sangat nyaman, hanya kaki yang tidak digunakan yang ditampilkan dalam daftar. Artinya, memilih satu kaki dua kali tidak mungkin.

Kedua , kaki GPIO15 dicadangkan untuk tombol AP dan tidak dapat digunakan untuk tujuan lain. Maaf, tetapi sebaliknya, tidak mungkin ...

Ketiga , kaki GPIO16 tidak dapat digunakan sebagai input biner biasa ( Input node).

Keempat , kaki GPIO9 dan GPIO10 hanya dapat digunakan pada modul ESP-8285 . Pada modul lain, hasilnya akan menjadi bencana - ketergantungan penuh dan reboot tanpa akhir!

Poin terakhir - pemahaman beberapa modul ketika memilih kaki GPIO9 dan GPIO10 membuat saya berpikir keras. Lagi pula, saya tidak ingin mengubah pengontrol setiap kali jika kaki salah pilih! Dan saya menemukan cara baru yang dimodifikasi untuk masuk ke mode konfigurasi.

Cara baru untuk masuk ke mode konfigurasi


Jika seseorang membaca artikel saya sebelumnya, maka dia ingat bahwa mode konfigurasi firmware ShIoTiny adalah mode ketika chip ESP8266 menjadi titik akses terbuka, dan sirkuit program tidak memulai secara otomatis setelah reboot. Dan jika itu tidak dimulai, maka itu tidak akan menggantung ketika memilih kaki GPIO .

Artinya, dalam mode konfigurasi, Anda dapat mengubah kaki masalah GPIO9 dan GPIO10 ke orang lain. Tapi masalahnya adalah, Anda bisa masuk ke mode konfigurasi hanya dengan menahan tombol AP selama sekitar 4 detik! Dan selama waktu ini, pengontrol akan memiliki waktu untuk mulai menjalankan program rangkaian "kurva" dan membeku!

Untuk mengatasi masalah ini, saya datang dengan interval penjaga setengah detik setelah me-reboot controller. Jika tombol AP ditekan dalam 0,5 detik setelah me-reboot controller, controller akan segera reboot dalam mode konfigurasi. Pada saat yang sama, selama interval penjaga setengah detik, skema program tidak dimulai. Dan itu berarti tidak bisa digantung.

Kontra jelas - program tidak memulai segera, tetapi setengah detik kemudian. Keuntungannya jauh lebih besar - jika Anda memilih "kaki yang salah" atau program sirkuit macet karena alasan lain, Anda selalu dapat masuk ke mode konfigurasi dan memperbaiki situasi tanpa menginstal controller.

Dalam praktiknya, semuanya terlihat lebih sederhana daripada lobak kukus: kami menekan tombol Reset dan, melepaskan tombol Reset di sana, tanpa mengganggu, kami menekan tombol AP . Segera sekitar setengah detik LED STATUS biru menyala (jika Anda, tentu saja, menyoldernya ke GPIO0 ) dan pengontrol akan reboot dalam mode konfigurasi.

Jika rangkaian program bekerja secara normal, maka Anda selalu dapat beralih ke mode konfigurasi dengan cara "lama" - dengan menekan dan menahan tombol AP selama sekitar 4 detik (sampai LED STATUS biru menyala).

Halaman Status ShIoTiny


Kemampuan untuk menghubungkan kaki dengan kehendak pengguna telah menyebabkan revisi halaman informasi utama dari firmware ShIoTiny .

Setelah banyak pertimbangan, saya sampai pada kesimpulan bahwa halaman tersebut harus a) informatif dan b) tidak mengandung terlalu banyak.

Apa yang saya dapatkan ditunjukkan pada gambar di bawah ini.



Ada dua bagian pada halaman informasi utama: Info - informasi umum dan GPIO Bekas - informasi tentang penggunaan kaki I / O. Mari kita pertimbangkan secara lebih detail.

Bagian Info


Name: esp_8266_155da4 - nama unik untuk perangkat. Ini dihasilkan secara otomatis dan tidak dapat diubah.

Ver: 2019-10-22 22:54:51 +0700 6b5ee82 clean - versi firmware (tanggal pembuatan dan pengidentifikasi komit).

MQTT: Terhubung ke: 192.168.1.2:1064, SSL - koneksi ke server MQTT. Memperlihatkan alamat IP atau URL server, port server, dan mode SSL jika koneksi aman digunakan. Ingat bahwa jika program rangkaian tidak mengandung node untuk bekerja dengan MQTT, maka koneksi tidak akan pernah dibuat!

WiFi: STA ip: 192.168.1.134. - Mode operasi WiFi ESP8266 : STA - station, AP - titik akses. Kedua mode dengan alamat IP yang berbeda dapat dipilih secara bersamaan.

Sekarang: Rabu 30 Oktober 2019 21:49:28 GMT + 0700 - waktu sekarang. Ditampilkan hanya ada waktu yang ditentukan oleh simpul Set Time ! Jika tidak, maka akan ditunjukkan bahwa waktu tidak disinkronkan dan tidak disetel.

Bagian GPIO yang Digunakan


Bagian ini menunjukkan semua kaki modul yang digunakan dalam diagram program dan statusnya saat ini.

Format output jelas: GPIO <nomor leg> (fungsi): status
Nomor kaki adalah nomor atau, untuk ADC , alih-alih nomor akan menjadi adc prasasti.
Fungsi: Input - input biner; Relay - output biner; ADC - ADC atau tipe sensor: DS182x atau DHTxx .

Field "state" - tergantung pada tujuan kaki.
Untuk input dan output biner - 0 atau 1.
Untuk sensor - suhu, kelembaban.
Untuk ADC - bacaannya dihitung ulang sesuai dengan rumus yang diberikan (lihat deskripsi bekerja dengan ADC dalam instruksi).

Menurut pendapat saya, halaman utama berisi semua informasi yang diperlukan tentang pengoperasian controller.

Kesimpulan


Di sini, pada kenyataannya, semua perubahan besar dalam firmware saat ini. Selain inovasi ini, lusinan kesalahan kecil diperbaiki.

Seperti biasa - instruksi terperinci di situs web ShIoTiny di bagian dokumentasi atau di sini .

Saran, harapan, kritik, uang, hadiah, dan sebagainya - kirimkan saya komentar atau email: shiotiny@yandex.ru .

Menunggu umpan balik dan saran.

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


All Articles