v4.3.1

v4.3.1 เพิ่มการรองรับเซนเซอร์ time-of-flight หลายโซน VL53L5CX ปรับปรุง CAN FD finalizer สำหรับปิด ImageIO อัตโนมัติ และชุดแก้ไขความน่าเชื่อถือของกล้อง USB และ soft-reboot

ไฮไลท์

  • รองรับเซนเซอร์ time-of-flight หลายโซน VL53L5CX (โมดูล Python + ตัวอย่าง)

  • รองรับ CAN FD ที่ปรับปรุงบน STM32

  • ปิด ImageIO อัตโนมัติ — สตรีมจะปิดตัวเองเมื่อถูก garbage collected

  • เปลี่ยนแปลงที่ไม่เข้ากัน: stdout ถูก buffer แล้ว — ดูการเปลี่ยนแปลงที่ไม่เข้ากัน

ฟีเจอร์ใหม่

  • VL53L5CX — โมดูล Python เซนเซอร์ ToF หลายโซน VL53L5CX ใหม่ ไดรเวอร์ ST และสคริปต์ตัวอย่าง ToF

  • finalizer ImageIO — สตรีม ImageIO ตอนนี้ปิดโดยอัตโนมัติเมื่อ object ถูก garbage collected

  • CAN FD — รองรับ CAN FD ที่ปรับปรุงบน STM32

  • I2C bus หลายอุปกรณ์ — การสแกน bus กล้องสามารถคืนค่าหลายอุปกรณ์ และเซนเซอร์ความร้อน FIR รองรับ bus ที่ใช้ร่วมกับอุปกรณ์อื่น พอร์ต RP2 เพิ่มการรองรับ I2C general-call

แก้ไขบัก

การประมวลผลภาพ:

  • แก้ไขการรั่วไหลของหน่วยความจำ quad_segment_maxima (การตรวจจับ AprilTag/quad) การแปลงสี SIMD YCbCr→RGB เส้นดำบนเฟรมแรก และการใช้ LCD cache บน OpenMV Pure Thermal

กล้องและเซนเซอร์:

  • แก้ไขการซิงโครไนซ์การอ่านเฟรม MLX9064x การจัดการ VSYNC EXTI บน Portenta H7 / STM32 และโหมดแหล่งจ่ายไฟและค่า HSE clock ของ Arduino Nicla Vision

ระบบและ USB:

  • แก้ไข offset ของ USB High-Speed endpoint descriptor การ de-init โมดูลในการเปลี่ยน main.py → IDE การทำความสะอาด soft-reboot (mp_deinit() และการรีเซ็ต CDC buffer) การเริ่มต้น sys.path ของ nRF และความถี่ fast-mode-plus ของ RP2 I2C

ฮาร์ดแวร์และการรองรับบอร์ด

  • เซนเซอร์ ToF หลายโซน VL53L5CX

  • OpenMV Cam H7 — บัฟเฟอร์บรรทัดเฟรมขนาดใหญ่ขึ้น (รองรับภาพที่กว้างกว่า)

  • Arduino Nicla Vision — แก้ไขแหล่งจ่ายไฟและนาฬิกา

การเปลี่ยนแปลง API ที่ไม่เข้ากัน

การเปลี่ยนแปลง API ที่ผู้ใช้มองเห็นได้ระหว่าง v4.3.0 และ v4.3.1

การเปลี่ยนแปลงที่ไม่เข้ากันเพียงอย่างเดียวคือการเปลี่ยนแปลง behavior (API เดิม เวลาต่างกัน)

stdout แบบ buffered (behavior)

standard output ถูก buffer แล้ว เอาต์พุต print() อาจไม่ปรากฏบนโฮสต์/IDE ทันที — จะถูก flush เมื่อขึ้นบรรทัดใหม่หรือเมื่อ buffer เต็ม สคริปต์ที่พึ่งพา output แบบ unbuffered ทีละอักขระควรเพิ่ม flush ที่ชัดเจน (หรือพิมพ์บรรทัดใหม่) ในที่ที่ต้องการเอาต์พุตทันที

Commit: 8cddada54

รายการตรวจสอบการย้ายระบบ

เฉพาะเวลาของเอาต์พุตเท่านั้นที่ได้รับผลกระทบ: เพิ่ม flush ที่ชัดเจนในที่ที่คุณพึ่งพา print() output ทันที (การเปลี่ยนแปลง buffered-stdout) สคริปต์อื่นๆ ทั้งหมดทำงานได้โดยไม่ต้องแก้ไข