แจกฟรีเฟิร์มแวร์ HandySense สำหรับบอร์ด LARB32 Pro ไม่ต้องเขียนโปรแกรม
อุปกรณ์ที่รองรับ
LARB32 Pro
- การต่อใช้งานบอร์ด LARB32 Pro https://www.hs3uka.com/programing/mcu/larb32-pro/
- สั่งสินค้า https://s.shopee.co.th/5fb6jIU1hF
ดาวน์โหลด
ดาวน์โหลดเฟิร์มแวร์ได้ที่ https://www.hs3uka.com/downloads/LARB32Pro_HandySense.ino.bin.zip
ดาวน์โหลดโปรแกรม Flash Firmware ได้ที่ แจกฟรีโปรแกรม FlashMCU
ดาวน์โหลดโปรแกรมสำหรับตั้งค่าได้ที่ แจกฟรีโปรแกรม LARB Serial Terminal
ดาวน์โหลดโปรแกรมสำหรับตั้งค่าเซ็นเซอร์ RS485 ได้ที่ Mod485 โปรแกรมสื่อสารผ่านพอร์ต RS-485
วิธี Flash Firmware
เสียบบอร์ดเข้ากับคอมพิวเตอร์ผ่านทางสาย USB ไม่ต้องต่อไฟเลี้ยงก็ได้ ถ้าไม่สะดวกยกมาทั้งบอร์ดสามารถถอดเฉพาะโมดูล ESP32 ออกมาก็ได้ หลังจากที่ดาวน์โหลดทั้ง 2 ไฟล์เสร็จแล้วให้แตกไฟล์ออกมา แล้วเปิดไฟล์ชื่อว่า FlashMCU.exe
เลือกบอร์ดเป็น ESP32 และ Port ที่บอร์ดต่ออยู่ แล้วกด … เพื่อเลือกเฟิร์มแวร์ที่ต้องการ ในที่นี้คือ LARB32Pro_HandySense.ino.bin จากนั้นกดปุ่ม Upload แล้วรอซักครู่ เมื่อเสร็จขั้นตอนแล้วหน้าต่างสีดำจะปิดไป
การเชื่อมต่อ
เมื่อ Flash Firmware เป็นที่เรียบร้อยแล้วจะต้องทำการตั้งค่าการเชื่อมต่อผ่านทางสาย USB สามารถตั้งค่าผ่านคอมพิวเตอร์ด้วยโปรแกรม Arduino IDE, LARB Serial Terminal หรือโปรแกรมอื่นที่สามารถสื่อสารผ่านทาง Serial port ได้ นอกจากนี้ยังสามารถใช้สาย USB เสียบกับโทรศัพท์มือถือเพื่อตั้งค่าได้อีกด้วย โดยต่อผ่านสาย USB Type-C to Micro USB ใช้งานผ่านแอพพลิเคชั่น Serial USB Terminal (https://play.google.com/store/apps/details?id=de.kai_morich.serial_usb_terminal)
ตั้งค่าการเชื่อมต่อ
- Baud rate 115200
- Data bits 8
- Parity None
- Stop bits 1
- Receive Newline CR+LF
- Send Newline LF
คำสั่งการตั้งค่า
| คำสั่ง | ข้อมูล | ความหมาย |
|---|---|---|
| ? | แสดงข้อมูลของอุปกรณ์ | |
| json | แสดงข้อมูลของอุปกรณ์ในรูปแบบ json | |
| commit | บันทึกค่าลงหน่วยความจำ หลังจากใช้คำสั่งนี้อุปกรณ์จะรีเซ็ตตัวเอง | |
| factoryreset | ล้างค่าทั้งหมดในหน่วยความจำ หลังจากใช้คำสั่งนี้อุปกรณ์จะรีเซ็ตตัวเอง | |
| rst | คำสั่งรีเซ็ต | |
| help | เรียกดูวิธีใช้งานคำสั่ง | |
| ssid= | Text | ตั้งค่า SSID |
| pass= | Text | ตั้งค่า Password |
| setwifi | บันทึกค่า WiFi ลงหน่วยความจำ | |
| weather_sensor= | <Number 0-9> | ชนิดเซ็นเซอร์ 0.ไม่มี, 1.DHT11, 2.DHT21, 3.DHT22, 4.DS18B20, 5.BME280, 6.SHT20, 7.SHT30, 8.SHT40, 9.SHTx-RS485 |
| soil_sensor= | <Number 0-2> | ชนิดเซ็นเซอร์ 0.ไม่มี 1.Soil485, 2.Analog ให้เชื่อมต่อที่ Pin 34 |
| other_sensor= | <Number 0-3> | ชนิดเซ็นเซอร์ 0.ไม่มี,1.BH1750, 2.RS485, 3.Analog ให้เชื่อมต่อที่ Pin 34 |
| analog_min= | <Number> | ค่า Analog ที่อ่านได้เมื่อเทียบกับ 0% |
| analog_max= | <Number> | ค่า Analog ที่อ่านได้เมื่อเทียบกับ 100% |
| modbus_baud= | <Number> | Baud rate ที่ใช้สื่อสารแบบ RS485 เช่น 2400, 9600 เป็นต้น |
| weather_id= | <Number> | ID ของเซ็นเซอร์อุณภูมิความชื้นในกรณีใช้แบบ RS485 |
| soil_id= | <Number> | ID ของเซ็นเซอร์ความชื้นดินในกรณีใช้แบบ RS485 |
| other_id= | <Number> | ID ของเซ็นเซอร์อื่นๆในกรณีใช้แบบ RS485 |
| weather_func= | <Number 0-1> | ฟังก์ชั่นในการอ่านข้อมูล 0.readHoldingRegister, 1.readInputRegister |
| soil_func= | <Number 0-1> | ฟังก์ชั่นในการอ่านข้อมูล 0.readHoldingRegister, 1.readInputRegister |
| other_func= | <Number 0-1> | ฟังก์ชั่นในการอ่านข้อมูล 0.readHoldingRegister, 1.readInputRegister |
| weather_temp= | <Number> | register address ที่เก็บข้อมูลอุณหภูมิ |
| weather_humi= | <Number> | register address ที่เก็บข้อมูลความชื้นอากาศ |
| soil_humi= | <Number> | register address ที่เก็บข้อมูลความชื้นดิน |
| other_register= | <Number> | register address ที่เก็บข้อมูลอื่นๆที่ต้องการ |
| weather_divide= | <Number> | ตัวหารค่าตัวแปรอุณภูมิความชื้น |
| soil_divide= | <Number> | ตัวหารค่าตัวแปรความชื้นดิน |
| other_divide= | <Number> | ตัวหารค่าตัวแปรข้อมูลอื่นๆที่ต้องการ |
| read_interval= | <Number> | รอบในการอ่านข้อมูลจากเซ็นเซอร์หน่วยเป็น วินาที |
| upload_interval= | <Number> | รอบในการส่งข้อมูลไปยังเซิฟเวอร์หน่วยเป็น วินาที |
| dongle_mode= | <Number 0-1> | ตรวจสอบการเชื่อมต่ออินเตอร์เน็ตถ้าหาก WiFi Dongle ค้างจะทำการรีเซ็ตไฟเลี้ยงที่ช่องต่อ USB 0.ปิด, 1.เปิดใช้งาน |
| pump_mode= | <Number 0-4> | โหมดควบคุมปั๊มน้ำ กรณีที่แปลงไม่มีปั๊มอัตโนมัติหรือถังสูง 0.ปิด 1.P5 ควบคุมสวิทซ์ปั๊มน้ำจาก Relay ช่อง P5 ให้นำไปต่อใช้งานผ่านแมคเนติก 2.RF จะส่งสัญญาณผ่านโมดูล RF ให้เชื่อมต่อโมดูลที่ Pin 17 3.UDP จะบรอดแคสข้อมูลไปยังอุปรณ์ทุกตัวในเน็ตเวิร์คด้วยโปรโตคอล UDP 4.LoRa จะส่งสัญญาณผ่านโมดูล LoRa |
| rc_on= | <Number> | ตัวเลขรหัสคำสั่งเปิดปั๊มน้ำ ใช้ได้กับ RF, UDP, LoRa |
| rc_off= | <Number> | ตัวเลขรหัสคำสั่งปิดปั๊มน้ำ ใช้ได้กับ RF, UDP, LoRa |
| retry_delay= | <Number> | หน่วงเวลาส่งซ้ำ ใช้ได้กับ RF, UDP, LoRa |
| retry_count= | <Number> | จำนวนรอบที่จะส่งซ้ำ ใช้ได้กับ RF, UDP, LoRa |
| udp_port= | <Number> | หมายเลข Port UDP |
การต่อใช้งาน
- เซ็นเซอร์ประเภท RS485 ให้ต่อสายที่ช่อง RS485 หมายเลข 2
- เซ็นเซอร์ประเภท I2C ให้ต่อที่ช่อง I2C หมายเลข 11
- เซ็นเซอร์สัญญาณเส้นเดียว เช่น DHT, DS18B20 ให้ต่อที่ช่องหมายเลข 9 ตำแหน่ง Pin 25
- เซ็นเซอร์อานาล๊อครองรับแรงดันระหว่าง 0-3.3 โวลต์ ให้ต่อที่ช่องหมายเลข 9 ตำแหน่ง Pin 34
- โมดูล RF ต่อ Data ที่ช่องต่อหมายเลข 10 ตำแหน่ง Pin 17
- โมดูล LoRa ให้ติดตั้งที่ช่องหมายเลข 7 และเสาอากาศต่อที่ช่องหมายเลข 6
- สัญญาณสำหรับสั่งแมคเนติดเปิดปั๊มน้ำต่อที่ช่องหมายเลข 3 ตำแหน่ง P5
- USB WiFi Dongle ต่อที่ช่องหมายเลข 16
- ปุ่มกด manual หน้าตู้ต่อที่ช่องหมายเลข 9 ตำแหน่ง Pin 15, 14, 27, 26 และ GNDfff











