Lập trình OTA (Over the Air) là một tính năng của bất kỳ bộ vi điều khiển nào hỗ trợ WiFi như ESP32 và ESP8266 cho phép các thiết bị này nâng cấp không dây phần sụn hoặc phần mềm của chúng mà không cần bất kỳ quyền truy cập vật lý nào. Tính năng này có thể được sử dụng để lập trình lại các thiết bị được cố định trên mái nhà hoặc bất kỳ nơi nào khác khó kết nối cáp. Sử dụng OTA, bạn có thể gửi bản cập nhật cho nhiều bộ vi điều khiển hoặc thiết bị trên cùng một mạng. Ví dụ: tính năng này có thể được sử dụng để gửi các bản cập nhật để giải quyết lỗi, thêm một số tính năng, v.v. cho nhiều bộ vi điều khiển, điện thoại di động, máy tính, hộp giải mã tín hiệu, v.v. Các bản cập nhật OTA cũng đóng một vai trò quan trọng trong IoT. Nó được sử dụng để cập nhật từ xa các thiết bị kết nối internet với các cài đặt, phần mềm và chương trình cơ sở mới.
Trước đây chúng ta đã học lập trình ESP8266 NodeMCU bằng OTA. Trong hướng dẫn này, chúng tôi sẽ sử dụng lập trình qua mạng (OTA) với ESP32 bằng Trình cập nhật web OTA trong Arduino IDE.
Thành phần bắt buộc
- ESP32
- Arduino IDE
Lập trình OTA hoạt động như thế nào?
Để sử dụng tính năng lập trình Over the Air (OTA), trước tiên, bạn cần tải lên bản phác thảo qua cổng nối tiếp. Bản phác thảo này chứa mã HTML để tạo Trình cập nhật web OTA để bạn có thể tải lên mã sau này bằng trình duyệt. Khi mã được tải lên qua cổng nối tiếp, nó tạo ra một máy chủ web nơi bạn có thể chọn và tải lên bản phác thảo mới thông qua trình duyệt web.
Để tải lên mã đầu tiên, hãy kết nối ESP32 với máy tính xách tay và mở Arduino IDE, chọn Loại bảng là ESP32 Dev Kit và chọn đúng cổng nối tiếp.
Sau đó đi tới Tệp> Ví dụ> ArduinoOTA> OTAWebUpdater
Thay đổi tên và mật khẩu Wi-Fi trong mã gốc.
const char * ssid = "Tên WiFi của bạn"; const char * password = "Mật khẩu";
Tải mã lên bảng ESP32 của bạn. Sau khi tải mã lên thành công, hãy mở màn hình nối tiếp. Thay đổi Baud Rate của 115200 trên Serial Monitor và nhấn nút Reset trên ESP32 và nó sẽ in Địa chỉ IP ESP32.
Bây giờ, hãy mở trình duyệt mặc định và dán Địa chỉ IP ESP32. Nó sẽ mở máy chủ Web để lập trình Over the Air như thể hiện trong hình ảnh dưới đây:
Tên người dùng và Mật khẩu mặc định là quản trị viên.
Sau đó nhập tên người dùng và mật khẩu và nhấp vào trang đăng nhập, một tab mới sẽ mở ra. Đây là nơi bạn có thể tải lên mã.
Ở đây chúng tôi sẽ tải lên một mã nhấp nháy đèn LED đơn giản. Mọi mã mà bạn tải lên qua mạng phải có mã OTA trong đó. Vì vậy, hãy thêm phần nhấp nháy trong mã OTA gốc. Mã hoàn chỉnh được đưa ra ở cuối trang.
void loop (void) {server.handleClient (); trì hoãn (1); digitalWrite (dẫn, CAO); chậm trễ (600); digitalWrite (dẫn đầu, THẤP); chậm trễ (600); }
Lưu mã của bạn với một tên mới và sau đó chuyển đến S ketch> Export Binary đã biên dịch . Thao tác này sẽ tạo một tệp .bin mới trong thư mục phác thảo của bạn.
Bây giờ, hãy truy cập trang web OTA và sau đó nhấp vào nút ' Chọn tệp' và chọn tệp .bin . Sau đó, nhấp vào nút 'Cập nhật' để tải lên bản phác thảo.
Đây là cách ESP32 có thể được lập trình bằng OTA mà không cần sử dụng giao tiếp nối tiếp.