v4.4.0

v4.4.0 מוסיפה API של tf.regression(), תמיכה ב-FLIR Lepton ב-OpenMV Cam H7 Pro, תמיכה במעבד-העזר Cortex-M4 ב-Arduino Nicla Vision, ו-MicroPython 1.19. כמה מודולים ייעודיים ללוחות והתנהגויות WiFi/LCD השתנו — קראו את השינויים השוברים תאימות שלהלן.

עיקרי הדברים

  • tf.regression() — הרצת מודלי רגרסיה של TensorFlow Lite עם קלט חד-ממדי/פלט חד-ממדי.

  • תמיכה בחיישן התרמי FLIR Lepton ב-OpenMV Cam H7 Pro.

  • Arduino Nicla Vision — תמיכה במעבד-העזר Cortex-M4, MicroSpeech תקין, LPUART1.

  • MicroPython עודכן ל-1.19; ulab עודכן ל-5.1.1.

  • שובר תאימות: מודולי ה-lcd/tv של Nicla Vision הושבתו ומנהל ההתקן של WiFi ב-RP2040 Connect השתנה — ראו את השינויים השוברים תאימות.

תכונות חדשות

  • tf.regression(model, input_array) — פונקציה חדשה למודלי רגרסיה של TensorFlow Lite עם קלט/פלט חד-ממדי, המחזירה רשימה של פלטים מסוג float.

  • בקרות GC2145sensor.set_auto_exposure() ו-sensor.set_auto_whitebal() פעילות כעת ב-GC2145 (ניתן להשבית חשיפה אוטומטית / איזון לבן; הגדרת חשיפה/הגבר (gain) מפורשת אינה נתמכת עדיין).

  • Arduino Nicla Vision — אופשרו תמיכה במעבד-העזר Cortex-M4 (CM4) וההתקן ההיקפי LPUART1.

  • machine.Pin — הפין USB_VBUS חשוף כעת לסקריפטים של המשתמש.

שינויים ושיפורים נוספים

  • MicroPython עודכן ל-1.19; ulab ל-5.1.1; מנהל ההתקן המצורף cyw43 ל-WiFi עודכן.

  • פורט RP2 (Arduino Nano RP2040 Connect) ופורט nRF (Arduino Nano 33 BLE Sense) עברו למנהל באגים החדש המבוסס על TinyUSB עבור חיבור ה-IDE/מארח.

  • ה-XCLK של OV7670 הועלה מ-12 MHz ל-24 MHz (סט אוגרים מעודכן).

תיקוני באגים

מצלמה וחיישנים:

  • סטטיסטיקת טמפרטורת הרכיבים (blob) של OpenMV Pure Thermal משתמשת כעת בתמונת ה-IR במקום בתמונת הצבע, כך שטמפרטורת הממוצע לכל רכיב נכונה.

  • תוקן הטיפול ב-ROI ב-draw_image() וקנה המידה של השטח, לפלט מוקטן מדויק יותר.

  • ה-IMU מאותחל מחדש לאחר אתחול רך כך שהוא ממשיך לפעול כאשר אפיק ה-SPI של ה-IMU מאופשר.

מערכת:

  • תוקנו בעיות השוואה בין ערכים מסומנים/לא-מסומנים בזיהוי המאפיינים FAST/AGAST, בזיהוי רכיבים (blob), ב-CLAHE ובמנהלי ההתקן LCD/TV; תוקנו ביטול-אתחול של GPIO-מצלמה / SPI / DAC ב-STM32, מיפוי פיני LPUART ב-H7, ורישום מודול ה-nn של STM32Cube.AI.

Arduino Nicla Vision:

  • MicroSpeech פועל כעת (חוצץ (buffer) PDM הוכפל, נוספה דוגמה) ומצב המתנה חסכוני בחשמל תוקן.

תמיכת חומרה ולוחות

  • OpenMV Cam H7 Pro — תמיכה בחיישן התרמי FLIR Lepton.

  • Arduino Nicla Vision — מעבד-עזר CM4, LPUART1, MicroSpeech, מצב המתנה חסכוני בחשמל.

שינויי API שוברי תאימות

שבירות API גלויות למשתמש בין v4.3.3 ל-v4.4.0. היקף: מודולי C של Python בתוך modules/ וספריות Python בתוך scripts/libraries/.

כל שינוי מתויג לפי ההשפעה שלו:

  • minor — API צר; משפיע רק על סקריפטים בלוח מסוים.

  • behavior — אותו API, תוצאות שונות; בדקו מחדש סקריפטים מכווננים.

השינויים מקובצים לפי השפעה בסדר הזה. אם אתם רק רוצים להסב את הקוד שלכם, דלגו אל רשימת התיוג להסבה שבסוף. כל גיבוב (hash) של commit מקושר ל-diff שלו ב-GitHub.

מודולי Nicla Vision ו-WiFi של RP2040 (minor)

ב-Arduino Nicla Vision, מודולי ה-lcd וה-tv הושבתו כדי לפנות זיכרון לתמיכה במעבד-העזר CM4 — סקריפטים שמשתמשים במודולים אלה ב-Nicla Vision כבר לא ימצאו אותם. ה-Arduino Nano RP2040 Connect עבר מהמימוש המותאם-אישית של OpenMV ל-WiFi/nina אל מנהל ההתקן/מודול NINA-W10 הרשמי של MicroPython, שה-API שלו שונה.

Commits: f78d191e3, ddf01cb09

פסק זמן (timeout) של שקע WiFi והיפוך אנכי של LCD (behavior)

פסק זמן של שקע WINC1500 מחזיר כעת שגיאה לא-חוסמת (EWOULDBLOCK) במקום ETIMEDOUT, כך ששקעים שעבר זמנם כבר אינם נסגרים באופן בלתי צפוי — יש לעדכן קוד שתפס ETIMEDOUT. מודול ה-display של מגן ה-LCD מסוג SPI מעלה כעת ValueError (”Vertical flip requires triple buffering!“) כאשר מבוקש y_scale שלילי ללא הפעלת חציצה משולשת.

Commits: 1dc4bea88, 7e52cf751

רשימת תיוג להסבה

להסבה נקייה ל-v4.4.0 העבודה הטיפוסית היא:

  1. ב-Nicla Vision, הפסיקו להשתמש ב-lcd/tv; ב-Nano RP2040 Connect, הסבו את קוד ה-WiFi למנהל ההתקן הרשמי NINA-W10 (שינויי מודול הלוח).

  2. עדכנו את קוד שקע WINC1500 כך שיצפה ל-EWOULDBLOCK בפסק זמן, ואפשרו חציצה משולשת עבור פלט LCD הפוך אנכית (שינויי ההתנהגות).