Billig buggjägare letar fel direkt i Raspberry Pi Pico-processorn

Permalänk
Melding Plague

Billig buggjägare letar fel direkt i Raspberry Pi Pico-processorn

Utan operativsystem och möjlighet att styra körningen är buggsökande en gissningslek med mikrokontroller, något som nu åtgärdas med verktyget Debug Probe.

Läs hela artikeln här

Visa signatur

Observera att samma trivselregler gäller i kommentarstrådarna som i övriga forumet och att brott mot dessa kan leda till avstängning. Kontakta redaktionen om du vill uppmärksamma fel i artikeln eller framföra andra synpunkter.

Permalänk
Medlem

Trevligt att de fått ner priset till bara 12 dollar men andra debuggers för Cortex m0 måste ha fungerat sen dag 1?

Permalänk
Medlem

Det har gått att göra samma sak med en vanlig PI Pico sedan bra länge. Har för mig att det kallas "pico probe". Då debug proben också använder en RP2040 är det i princip en Pi Pico i lite andra kläder. Är ju dock trevligt att det kommer klart med kontakter och sånt så man inte behöver hålla på att pilla med det.

Permalänk

Det får mig att tänka på JTAG som var ordet alla pratade om år 1985.

Detta är såklart mer avancerat. Jag har inte kodat mikrodatorer de senaste 10åren och vet inte utmaningarna idag, annan hårdvara har jag programmerat och där kan man enkelt stega ens program på hårdvaran.

Permalänk
Medlem

Använt Segger J-Link för debugging, kostar lite mer men stödjer också betydligt fler fabrikat. Jag ska testa den som nämns i artikeln och pico probe någon dag.

Har du experimenterat med Raspberry Pi Pico? Vad har du knåpat ihop?
Jo då, testade mcu mitten 2021 och sedan dess har den ersatt både LPC och STM och sist jag hörde så ligger behovet hos oss på ca 60k st/år av RP2040. Årsbehovet köptes när den mcu:n kostade 5:80/st och då 100k st så helhetslösningen för mcu + oscillator + flash-minne landade på dryga 9kr. Det är bra mycket billigare än vad andra likvärdiga kostat de senaste två åren (om man ens fick tag dem). Men det finns begränsningar som man måste vara medveten och ta ställning till.

Vad jag erfarit hittills på ca 25k som varit ute i fält ett tag är 0 problem. Inga problem som kunnat härledas till mcu:n så jag är riktigt imponerad att den fungerat så bra för att vara ny.

Just nu är denna förstavalet i nästan alla konsultjobb där mcu behövs, trots att man behöver externt flash-minne.

Visa signatur

MSI K9N SLI Diamond | MSI Diamond HDMI 7600GT | AMD X2 4200+ | 1GB Kingston HyperX| 32" LG 5000:1 screen | Asus EeePC 701

Permalänk
Datavetare

Har inte riktigt tagit mig tid att sätta mig in RPi Pico förens väldigt nyligen. Visade sig vara en riktigt trevlig plattform att jobba med så blev en beställning av denna debug-probe

Ser att mycket kretsar kring Micro Python, för RPi Pico. Har själv primärt testat med Adruino. Även om Arduino inte har något direkt stöd för multi-core, RPi Pico är dual-core, så gick det att använda båda kärnorna med en del restriktioner och rätt få rader RPi Pico specifik kod.

Det jobbas på lite mer välintegrerat stöd för att använda båda kärnorna i Arduino, men det verkar inte färdigt än (fungerade i alla fall inte för mig ihop med en uppdaterad PlatformIO).

Är det någon som har tips på andra ramverk? Arms mbed ligger i botten för Arduino-porten (likt hur FreeRTOS ligger i botten för Arduino-porten hos ESP8266/EPS32). Så naturligtvis kan man köra mbed direkt, men är trevligt att kunna flytta projekt mellan ESP32 och RPi Pico (värt att nämna kanske är att ESP32/ESP8266 också stödjer MicroPython)!

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

Har inte riktigt tagit mig tid att sätta mig in RPi Pico förens väldigt nyligen. Visade sig vara en riktigt trevlig plattform att jobba med så blev en beställning av denna debug-probe

Ser att mycket kretsar kring Micro Python, för RPi Pico. Har själv primärt testat med Adruino. Även om Arduino inte har något direkt stöd för multi-core, RPi Pico är dual-core, så gick det att använda båda kärnorna med en del restriktioner och rätt få rader RPi Pico specifik kod.

Det jobbas på lite mer välintegrerat stöd för att använda båda kärnorna i Arduino, men det verkar inte färdigt än (fungerade i alla fall inte för mig ihop med en uppdaterad PlatformIO).

Är det någon som har tips på andra ramverk? Arms mbed ligger i botten för Arduino-porten (likt hur FreeRTOS ligger i botten för Arduino-porten hos ESP8266/EPS32). Så naturligtvis kan man köra mbed direkt, men är trevligt att kunna flytta projekt mellan ESP32 och RPi Pico (värt att nämna kanske är att ESP32/ESP8266 också stödjer MicroPython)!

Zephyr RTOS (https://docs.zephyrproject.org/latest/index.html) kan kanske vara ett alternativ? Dom bygger på samma princip som Linux med device trees. Så i teorin kan du ha samma kod vara kompatibel på ätt lätt sätt med olika plattformar, bara att ändra ditt target när du bygger.

Ett annat alternativ kanske kan vara PlatformIO (https://platformio.org/), har dock inte tittat så mycket på det men deras filosofi är att det ska vara lättare att jobba med olika plattformar. Men vet att ESP32 gör väldigt mycket speciella grejer som kan vara svårt att hålla ett projekt kompatibelt med andra plattformar.

Permalänk
Medlem
Skrivet av Yoshman:

Har inte riktigt tagit mig tid att sätta mig in RPi Pico förens väldigt nyligen. Visade sig vara en riktigt trevlig plattform att jobba med så blev en beställning av denna debug-probe

Ser att mycket kretsar kring Micro Python, för RPi Pico. Har själv primärt testat med Adruino. Även om Arduino inte har något direkt stöd för multi-core, RPi Pico är dual-core, så gick det att använda båda kärnorna med en del restriktioner och rätt få rader RPi Pico specifik kod.

Det jobbas på lite mer välintegrerat stöd för att använda båda kärnorna i Arduino, men det verkar inte färdigt än (fungerade i alla fall inte för mig ihop med en uppdaterad PlatformIO).

Är det någon som har tips på andra ramverk? Arms mbed ligger i botten för Arduino-porten (likt hur FreeRTOS ligger i botten för Arduino-porten hos ESP8266/EPS32). Så naturligtvis kan man köra mbed direkt, men är trevligt att kunna flytta projekt mellan ESP32 och RPi Pico (värt att nämna kanske är att ESP32/ESP8266 också stödjer MicroPython)!

Kör den portade versionen av FreeRTOS till RP2040. Mestadels för att de STM och LPC vi körde tidigare använde FreeRTOS så det var minimalt med handpåläggning, någon extra styrning eller justering av PWM-beräkningen. Som sagt, det gick förvånansvärt smidigt och kisel samt Pico-SDK har haft relativt lite buggar för att vara så ny.

Har provat Micropython förra året och då var det definitivt inte moget för RP2040. Var en del irq's som inte hade stöd i RP2040-versionen men fanns för ESP osv. Kommer nog göra ett försök till sommaren igen då det kan vara trevligt som ett snabbare kom-igång alternativ för proof-of-concepts än att dynga ner sig C/C++ varenda gång, och för att få lite variation i tillvaron naturligtvis

Visa signatur

MSI K9N SLI Diamond | MSI Diamond HDMI 7600GT | AMD X2 4200+ | 1GB Kingston HyperX| 32" LG 5000:1 screen | Asus EeePC 701