v4.2.2¶
v4.2.2 เพิ่ม รองรับภาพ PNG (ถอดรหัส/เข้ารหัสผ่าน lodepng) ระบบโหลดโมเดลบิลต์อินแบบตารางข้อมูล รองรับกล้อง OV5640 บน Portenta อัปเดต TensorFlow ของ Edge Impulse และ ulab 4.0 API การกำหนดค่า RPC CAN มีการเปลี่ยนแปลง — โปรดอ่านการเปลี่ยนแปลงที่ไม่เข้ากันด้านล่าง
ไฮไลท์¶
รองรับ PNG —
Image.to_png(),image.PNG, และการอ่าน/เขียนไฟล์ PNGtf.load_builtin_model()— โมเดลบิลต์อินแบบตารางข้อมูลที่สามารถแทนที่หรือเพิ่มได้ตอนบิลด์Portenta H7 — รองรับกล้อง OV5640 (พร้อมโฟกัสอัตโนมัติ)
MicroPython/ulab — อัปเดต ulab เป็น 4.0.0
เปลี่ยนแปลงที่ไม่เข้ากัน: API การกำหนดค่า RPC CAN มีการเปลี่ยนแปลง — ดูการเปลี่ยนแปลงที่ไม่เข้ากัน
ฟีเจอร์ใหม่¶
รูปแบบภาพ PNG — เพิ่มเมธอด
Image.to_png()ค่าคงที่image.PNG/PIXFORMAT_PNGการโหลด/บันทึกไฟล์ PNG (อ่าน/เขียน.png) และผลลัพธ์ PNG ในการแปลงimage.to()ผ่าน codec lodepng ที่ฝังอยู่tf.load_builtin_model(path)— โหลดโมเดลบิลต์อินในเฟิร์มแวร์และคืนค่า tuple(labels, net)โมเดลบิลต์อินใช้ระบบตารางข้อมูลแล้วจึงสามารถแทนที่หรือเพิ่มได้ตอนบิลด์
การเปลี่ยนแปลงและปรับปรุงอื่นๆ¶
TensorFlow / Edge Impulse — อัปเดตไลบรารีการอนุมานที่ฝังมาเป็น Edge Impulse ei-V2.5.0 ย้ายโมเดล
person_detectionไปไว้ในตารางโมเดลบิลต์อิน และเพิ่ม TensorFlow operator ที่ขาดหายไปในบิลด์ Cortex-M0+/M4/M7/M55 ทั้งหมด เพื่อให้โมเดล Edge Impulse ทำงานได้มากขึ้นอัปเดต ulab เป็น 4.0.0
การเปิดพอร์ต USB virtual serial ที่ความเร็ว 1200 bps จะกระตุ้นการรีเซ็ตแบบ Arduino-style touch reset เข้าสู่บูตโหลดเดอร์
อัปเดตเฟิร์มแวร์โมดูล WiFi WINC1500 เป็น 19.7.6 (พร้อมสคริปต์อัปเดต) และตอนนี้รายงานเวอร์ชันไดรเวอร์โฮสต์จริง
พอร์ต RP2 แสดง "MPY: soft reboot" และเพิ่มการ init/de-init UART
แก้ไขบัก¶
แก้ไขขนาดบัฟเฟอร์เฟรมดิบของ Arduino Nano RP2040 Connect และ USB Product ID ของ Arduino Nicla Vision (แก้ไขการระบุ USB ที่ถูกต้อง)
ฮาร์ดแวร์และการรองรับบอร์ด¶
Arduino Portenta H7 — รองรับกล้อง OV5640 (พร้อมโฟกัสอัตโนมัติ) GC2145 ถูกปิดใช้งานบน Portenta
Arduino Nano RP2040 Connect — การกำหนดค่าหน่วยความจำและเทมเพลต fresh-filesystem
WiFi Shield (WINC1500) — อัปเดตเฟิร์มแวร์เป็น 19.7.6
การเปลี่ยนแปลง API ที่ไม่เข้ากัน¶
การเปลี่ยนแปลง API ที่ผู้ใช้มองเห็นได้ระหว่าง v4.2.1 และ v4.2.2 ขอบเขต: Python C-modules ใน modules/ และไลบรารี Python ใน scripts/libraries/
การเปลี่ยนแปลงแต่ละอย่างถูกติดแท็กด้วยผลกระทบ:
minor — API ที่มีขอบเขตแคบ ส่งผลต่อสคริปต์ที่ใช้เท่านั้น
behavior — API เดิม ผลลัพธ์ต่างออกไป ควรตรวจสอบสคริปต์ที่ปรับแต่งไว้
การเปลี่ยนแปลงถูกจัดกลุ่มตามผลกระทบตามลำดับนั้น แต่ละ commit hash เชื่อมโยงไปยัง diff บน GitHub
API การกำหนดค่า RPC CAN (minor)¶
ในไลบรารี rpc อาร์กิวเมนต์คีย์เวิร์ด CAN sampling_point ของ rpc_can_master / rpc_can_slave ถูกเปลี่ยนชื่อเป็น sample_point (เพื่อให้ตรงกับ MicroPython upstream) และตัวช่วยกำหนด CAN bit-timing แบบแมนนวลถูกลบออก — ตอนนี้กำหนดค่า CAN bus ผ่าน CAN(..., baudrate=, sample_point=) สคริปต์ที่ส่ง sampling_point หรืออาศัยการคำนวณ bit-timing แบบเดิมต้องได้รับการอัปเดต
image.format() และภาพที่บีบอัด (behavior)¶
ด้วยเส้นทางภาพที่บีบอัดแบบรวมที่เพิ่มเข้ามาสำหรับ PNG ตอนนี้ image.format() จะคืนค่า PIXFORMAT_INVALID สำหรับรูปแบบที่ไม่รู้จัก และการจัดทำดัชนี / การวนซ้ำ / การพิมพ์ภาพที่บีบอัดครอบคลุม PNG เช่นเดียวกับ JPEG โค้ดที่ตรวจสอบค่าที่ส่งคืนก่อนหน้าสำหรับรูปแบบที่ไม่รู้จักควรตรวจสอบอีกครั้ง
Commit: f12a4659c
รายการตรวจสอบการย้ายระบบ¶
สำหรับการย้ายที่สะอาดไปยัง v4.2.2: เปลี่ยนชื่อ sampling_point → sample_point ของ RPC CAN และยกเลิกการตั้งค่า CAN bit-timing แบบแมนนวลใดๆ (การเปลี่ยนแปลง RPC CAN) และตรวจสอบโค้ดที่ตรวจสอบ image.format() สำหรับรูปแบบที่ไม่รู้จักอีกครั้ง (การเปลี่ยนแปลง format())