GPIO kompatibilní s RPi je samozřejmě nesmysl, protože RP2040 nemá zdaleka takové možnosti jako RPi SoC, příp. RP1 v RPi5. RP2040 je v té X4 k SoCu připojen přes USB1.1 a UART, tedy datové kapacity zcela nesrovnatelné s možnostmi RPi.
Radxa u téměř všech svých desek zeveřejňuje schémata (i datasheety, kde to lze), X4 viz https://dl.radxa.com/x/x4/radxa_x4_v1.11_schematic.pdf
Taky jsem na to včera koukal :) Raspberry je tam maximálně ten použitý mikrokontroler a 40 pinový konektor.
Zas s přimhouřením obou očí by ty pomalá rozhraní možná mohla být pro někoho zajímavá. Vzhledem k tomu, že na x86 platformě je to v takhle integrované formě vcelku neobvyklé a lze to využít na nějaké řídící I/O, nebo další periferie.
Byť se upřímně přiznám, mě konkrétně tahle deska třeba v porovnání s posledními RPi úplně neoslovuje.
Před cca 10 lety jsem něco udělal s Minnowboardem Max, což bylo něco podobného s Atomem E3825. Ale to byla doba, kdy jsem s ARM SBC řešil spousty implementačních i výkonových problémů, takže ten BayTrail ATOM byl fakt lepší v mnoha ohledech. Dnes už jsou i ty ARM SoC a ekosystém okolo jinde.
USB2 jde z N100, ale RP2040 má USB device 1.1.
https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf:
RP2040 contains a USB 2.0 controller that can operate as either:
• a Full Speed device (12Mbps)
• a host that can communicate with both Low Speed (1.5Mbps) and Full Speed devices. This includes multiple downstream devices connected to a USB hub.
There is an integrated USB 1.1 PHY which interfaces the USB controller with the DP and DM pins of the chip
Nikde se mi nepodařilo najít, v čem se liší USB2.0-compatible bez HS od USB1.1-compatible. USB specs pdf popisuje v historii revizi 2.0 jako:
Revisions to chapters 5, 7, 8, 9, 11 to add high speed.
Chápu, že USB2.0 kontrolér se ovládá přes xHCI API, ale to se RP2040 netýká. Tak netuším, v čem je to IP v RP2040 USB2.0.
Treba.. ze USB version v deskriptoru bude 2.0 a..
As the guys on the official usb site would say:
'Why would you want to design a new device to an obsolete specification version?'
Treba atxmega ma stejny 2.0 bez highspeed... nasel jsem tohle zhrnuti, pokud te to zajima:
https://forum.microchip.com/s/topic/a5C3l000000M10SEAS/t233928
Pokud si dobre pamatuji, tak reset je ze strany hostu indikovan urcitou statickou urovni D+/D- po dobu nekolikanasobne delsi nez je polling interval. A pak po ukonceni resetu bude jedna z linek pullupnuta, podle toho, zda je to LS/FS, pripadne tam bude namodulovane to pipnuti (chirp) ze strany zarizeni, ze tedy zna HS. A pak mu host bud pipne zpet a pokracuje se v HS, nebo ne a jede to na FS.
Neliší se, aspoň jak to chápu já. Tohle mi vždycky přišlo velmi nešťastné u standardů od USB konsorcia, protože nový standard zpravidla nahrazuje předchozí a případné revize se už týkají jen toho novějšího. Pokud je tam nějaká kompatibilní technologie, tak se (pro zmatení všech zúčastněných) přejmenuje a začlení se do toho novějšího standardu.
Totéž je pak např. původní USB 3.0 (z r 2008) je teď USB 3.2 Gen 1x1, ale mezitím to bylo třeba taky USB 3.1 Gen 1, ale pořád jde v zásadě o ten samý protokol.
Jediné, co se reálně mění s novějšími standardy (ve stejném přenosovém režimu) jsou pak změny v konektorech. Takže například. v době vydání USB 1.1 ještě neexistoval MicroUSB konektor, ten je součástí až standardu USB 2.0.
Jinými slovy, pokud třeba uvidíte zařízení, co má MicroUSB konektor a funguje na 12Mbit, tak je to USB 2.0 FS a ne USB 1.1, i když po těch drátech jde úplně to samé. Pokud to ale má USB-B konektor (domeček), tak tomu můžete víceméně říkat jak chcete USB 1.1 i USB 2.0 :)
Technici jako my se v tom přes prskání zorientujeme, ale horší je celá tahle magořina třeba pro koncové zákazníky nebo prodavače. Zvlášť teď kdy USB 4 standard v sobě obsahuje víceméně úplně všechno, má to alternativní režimy, PD profily atp.