Vždyť už to monetizují! Do jednoduchého ekosystému původně 8bitových mikroprocesorů nacpali svůj 4+1 jádrový procesor na kterém poběží celý Debian. Celé to kromě rozbití prostředí přívětivého k naprostému začátečníkovi nesmyslně komplikovanou platformou s OS a nějakým trendy blackboxem v podobě "Studia", zavání pokusem zneužít značku Arduino k vytvoření konkurence RPi Foundation.
Nicméně Arduino platforma je stejně už mrtvá, nebýt toho, že se v jejich IDE dá snadno dělat s RPi Pico a ESP32, nejspíš by to dávno umřelo.
Tak som zvedavy, ako to dopadne. Ako keby som nieco tusil, pred par dnami som sa rozhodol kupit knihy o C a povenovat sa trochu podrobnejsie Cecku (nejake bezne zaklady viem, ale rad by som mal pekny cisty kod).
Náhodou... Dost rychle zjistí, že knihovny tam jsou sice možná hezky napsané, ale jinak úplně k ničemu, takže si jednu po druhé bude stejně přepisovat (popř. hledat lepší implementace), což je na učení príma.
I z toho obaleného main()u člověk rychle vyroste, a pak je to klasický toolchain avr-gcc avr-ld avr-dude, který se prostě pověsí na oblíbený editor/IDE.
pouzivam len par zakladnych kniznic, ak mi to cas dovoli, tak si radsej robim vlastnu implementaciu a dam tam iba to, co potrebujem ja. Alebo pouzijem niektoru hotovu a popri tom si robim vlastnu a nejaky ten kod si kopirujem aj z tej povodnej.
Za mladych cias som si pisal programiky v asm, neskor trochu C a ked prisli deti, tak z casoveho hladiska arduino, takze s ucenim problem nemam
To je samozřejmě nesmysl. V Arduinu neuděláte bez C++ objektů ani výpis do UARTu. Proto se to taky kompiluje c++ kompilátorem.
Asi uplne nerozlisuje mezi C a C++ a myslel "ciste c++"?
Ale ono to v nouzi jde i v C, https://github.com/DeqingSun/ch55xduino se snazi o Arduino s obycejnym C protoze pro CH55x se pouziva SDCC
No jestli nerozlišuje strukturované C od objektového C++, tak to je asi jako tvrdit, že mrkev je ovoce a vůbec nezáleží na tom, jestli to pletu se zeleninou, když to oboje roste ze země...
Jinak ten odkazovaný projekt bych chtěl vidět s jiným typem procesoru a nějakou rozumnější periferií, než je tlačítko a LED.
No a jinak čisté C++ to taky není, dokud tam IDE nedoplní include Arduino.h a deklarace funkcí a jádro chybějící main. Taky tam nefungují cin a cout proudy atd.
8. 10. 2025, 17:34 editováno autorem komentáře
Toto opravdu již v roce 2025 ne. Ano SDDC občas sleduji, i jsem ze zvědavosti před let zkoušel, jestli by moje základní C knihovny nezkompilovalo a dokonce pomohl nějakými patchi na inline funkce. Ale to je zábava typu retro-herny. Přitom ano, uLAN nám na přelomu devadesátých let a začátku tisíciletí se SDCC na Intel 8051 chodil díky velmi specifickému psaní knihoven a jádru komunikace v Assembleru z našich předchozích projektů. Podařilo se mi zkompilovat nakonec i s těcmi opravami mojí AVL knihovnu, která je normálně na x86 na 2169 byte kódu a s mnoha testy 16 kB kódu. Na 8051 je ten základ i s optimalizaci 9412 byte a extrémně zjednodušený test na 22073 byte. Na procesoru s 32 nebo 64 kB Flash. tedy je vidět, že je to úplný nesmysl a jen opravdu hrátka pro fajnšmekry. Ale doporučovat SDCC někomu kdo začíná je katastrofa.
"je vidět, že je to úplný nesmysl a jen opravdu hrátka pro fajnšmekry. Ale doporučovat SDCC někomu kdo začíná je katastrofa."
souhlasim s tim ze dnes se pokouset programovat 8051 je katastrofa, ale dokud tady je, tak se neda nic delat. CH55x jsou velice levne cipy s jednoduchym zapojenim co umi USB a bezi i rovnou z 5V (pro USB piny maji interni 3.3V regulator) a na nektere jednoduche 'USB to xxx' veci fungujou a programovani z arduino IDE to proste ulehci. Bohudik uz jsou snad letos za zenitem a nahradily je (i cenou) risc-v verze (treba CH32Vxxx). Ale mimochodem sdcc se pouziva i na build znameho firmware pro levny logicky analyzator s Cypress FX2 https://sigrok.org/wiki/Fx2lafw , ten rozhodne neni nesmysl/hrátka /katastrofa. Ani nove RP2350 neumi USB high speed a lehce pouzitelnych, znamych, dostupnych, levnych cipu ktere ho umi je porad docela malo.
Cože prosím? A k čemu potřebuju na zápis do seriáku (viz snipplet dole) c++ (mimochodem pořádně ořezané anyway) ?
ISR(USART_TX_vect)
{
if (tx_tail != tx_head) {
_SFR_BYTE(UDR0) = tx_buff[tx_tail++];
if (tx_tail >= TX_BUFF_SIZE) {
tx_tail = 0;
}
} else {
tx = 0;
}
}
Pletete si pojmy. Nebavili jsme se o tom, že nejde v C napsat kód pro atmegu, který by šel zkompilovat avr-gcc a používal UART. Bavili jsme se o tom, že jazyk Arduino není čisté C a to není. Váš snippet neodpovídá běžnému zápisu v Arduino, ale klasickém u avr-C. V Arduinu se použije objekt Serial a jeho metody. Pochopitelně, že vzhledem ke zpětné kompatibilitě C s C++ to jde zapsat i v C.
A teď mi tam příhoďte include Arduino.h a zkuste to zkompilovat avr-gcc...
Btw. Není teda jazyk Arduino a také C vlastně "čistý assembler", když se ta úloha dá napsat v assembleru a .ino i .c či.cpp souborů lze bloky v assembleru vložit?
ja arduino pouzivam hlavne preto, lebo som lenivy a na rozne detske hracky je to idealne. Za jedno popoludnie urobena blbina s ktorou sa deti vyblaznia dlhu dobu.
A druha vec, vyuzivam hlavne hw, naco vymyslat koleso, ked mam hotove odladene moduly a nemusim sa trapit s navrhom a vyrobou dps.
Qualcomm má tržní kapitalizaci okolo 170 mld USD, roční obrat řádově 40 mld, zisk před zdaněním 12 mld. Ohledně Arduina se hledají čísla hůř, ale pár jednotlivých numer z pochybných webů vypadá o tři až čtyři desítkové řády níž, některé roky spadne ebitda do záporných hodnot apod.
Slon sežral malinu. Pardon... malinu zatím ne.
Uno Q vypadá jako dost nabušený hardware, podle upoutávky na produktovém webu je schopný zpracování obrazu... Má dva různé procesory, vedle čtyřjádra Qualcomm Drowning s Linuxem a GPU má ještě cituji "real-time STM32U585 microcontroller"... Ve kterém filmu byla dvojice postaviček "master a blaster" ? Mad Max beyond Thunderdome s Tinou Turner? :-)
Takže si Qualcomm koupil mazlíčka, který s trochou štěstí poslouží jako přítulná softwarová stránka beginner evaluation kitu pro Qualcomm hardware. Nástupní platforma vývojářů pro křemík s velkým Q, talent scouting v open-source komunitě apod... Jako když si vezmu, co stojí běžný komerční evaluation board pro nějaký velký čip, tak tahle hračka pro hobbíky má určitě svůj půvab :-)
Možná se k tomu Qualcomm rozhoupal poté, co hobbíci rozjeli zpracování obrazu na RPi Zero (procesor od konkurenčního Broadcomu)
Ona maminka Qualcommová není zrovna proslulá volně dostupnou dokumentací ke svému křemíku. Toto je možná způsob, jak se dostat do povědomí hračičků a open-source komunity, dát jim křemík k dispozici obalený low-code prostředím vlastní provenience, a přitom si podržet u těla dokumentaci o věcech pod kapotou...
To je rek bych predstava dost naivni. Videl bych to spis tak, ze to pro ne predstavovalo nejakou produktovou konkurenci, takze to proste koupi a zrusi.
Ony se totiz i ty nejlowendovejsi hracky daji ve skutecnosti na ledacos pouzit. A oni samozrejme nabidnou "nahradu" ... jen treba za o rad vyssi cenu.
"Qualcomm nezveřejnil informaci o tom, kolik za Arduino zaplatil, získal tím ale rozsáhlou komunitu vývojářů a bastlířů po celém světě. "Po této akvizici získá více než 33 milionů aktivních uživatelů komunity Arduino přístup k výkonným technologiím a globálnímu dosahu společnosti Qualcomm Technologies", píše firma v oznámení."
Ta citace rika a mysli neco opacneho? Ti uzivatele komunity pry ziskaji neco od Qualcommu, ne naopak. Ze by Qualcomm krome firmy Arduino ziskal i "rozsáhlou komunitu vývojářů a bastlířů " silne pochybuju.
Říká, ale zas na druhou stranu kvůli tomu, že si s Arduinem hraje syn jeho CEO ho asi Qualcomm nekupoval.
Je to jeden z produktu ... co myslis, koupil si MS za 4G minecraft? To by byli blazni. Oni si za ty 4G koupili uzivatele/hrace.
Tohle je stejny. Jen to sebou nese jeden drobny problem. Naprosto typicky ti uzivatele instatne zmizej. Je to podobny, jako kdyz prevezmens firmu s tim, ze ziskas jeji zamestnance, ale oni ti z 99% utecou.
To bys musel zachovat "kulturu" ty kupovany firmy a to defakto znamena ji nechat bezet dal samostatne, a to te samozrejme bude stat hromadu penez, a nejspis z toho nic nevytezis.
Navic kdyz chci nejakej easy chip na nejaky primitivni programovani a vystacim si trebas klidne s jednotkama kB ramky a s mozna stovkama instrukci ... tak nechci zadny vicejadro nechci zadny mediaprocesory atd atd atd.
Takze bych to videl tak, ze ta komunita se vypari jak para nad hrncem.
Stejně by mě zajímalo, co obecně vede manažery v kupujících firmách k dojmu, že když z původního produktu po koupi přes noc udělají úplně jiný produkt k úplně jinému účelu, původní uživatelé/zákazníci zůstanou. Tenhle vzorec se při akvizicích opakuje až podezřele často pořád dokola. (V ČR zdravíme třeba do Allegra.)
osobni bonusy? nebo nejaka zkreslena statistika? treba kdyz banka dava za zalozeni uctu par tisic, tak tohle navyseni poctu klientu dovede nejak 'prodat' i kdyz ve vysledku to budou ztraty protoze vetsina lidi vybere penize a ucet necha po splneni podminek lezet nebo ho zrusi. ale i tak muze mit pro ne to zvysene cislo poctu (mrtvych) klientu samo o sobe nejakou hodnotu(?)
9. 10. 2025, 10:32 editováno autorem komentáře
"Je to jeden z produktu ... co myslis, koupil si MS za 4G minecraft? To by byli blazni. Oni si za ty 4G koupili uzivatele/hrace."
MS si koupil produkt ktery dlohodobe vydelava tezke prachy a myslel si ze muze mit potencial i v dalsich oblastech. uzivatele/hraci by byli bezcenni kdyby negenerovali velke penize diky sitovemu efektu. Na minecraft snad nikdy nebyla sleva a myslim ze se porad se prodava docela dobre? Taky se MS snazil minecraft dostat do dalsich oblasti jako skolstvi nebo virtualni realita (nevim s jakym uspechem).
Takze "Oni si koupili uzivatele/hrace." to myslim nevystihuje. A v tom se myslim shodujeme ze u Arduina tohle uz vubec neplati, tihle Arduino 'hraci' jsou prevaznou vetsinou 'freeloaders' kteri si koupi jinou desku nez tu co prodava firma Arduino. I to samotne IDE to podroruje tim, ze do konfigurace staci pridat jednu url a najednou s tim funguje uplne jiny hardware co ani neni klon originalu od Arduina.
Arduino podle mě škodí svým omezeným API světu již příliš dlouho. Přitom nutí i schopné vývojáře tlakem neschopných členů komunity k tomu, aby místo technického přístupu sami mrzačily své návrhy knihoven a HW k tomu, aby byly kompatibilní s tím špatným základem.
Již to začalo vypadat, že si tu hrůzu sama Arduino komunita uvědomuje a byl navržený přechod s API nad Zephyr. Tak uvidíme jestli se to hne tímto směrem. I když asi ta původní naděje, že nad relativně přenositerným jádrem se posupně ty knihovny pro začátečníky (kde i nějaký smysl mají) budou dát použít s desírkami Zephyrem podporovaných architektur a desek asi s nákupem Qualcommem mizí, protože budou směřovat jen na svůj HW. Zároveň tvrdá závislost na master procesoru s GNU/Linuxem také nebude ideální. Jsou aplikace, kde má menší RTOS smysl. Za mě ale má smysl, aby i ten malý RTOS umožňoval komunikaci podle BSD socket API, přístup k souborům,ale i socketům, přes jednotný read, write, close, ne se send a receive v jiné handle doméně jako to mají zkažení i Windows které odmítaly desetiletí internet a tak tam byly z BSD přidané nešťastnými uživateli Trumpet Winsock a Microsoft je pak uznal jako standard ale díky špatnému základu Win 3.1 a Wind 95 zůstaly do dnes v C knihovně s druhou nekompatibilní sadou file handles. Přitom od NT jádra je to úplně zbytečné, protože do jádra se nyní přrhládá vše na jednotné "object" HANDLE.
Takže špatná rozhodnutí v Arduino stejně jako ve FreeRTOS zde budou strašit dlouho. Ve Windows je to již přes 30 let, kdy to smysl nedává.
Zároveň pokud Arduino převezme jeden výrobce čipů, tak skončí ještě hůře než MBed, kde převzetím ARMem nejdříve zmizela podpora všech architektur mimo ARM a pak po vytěžení ho ARM odepsal celý. A tím vlastně způsobil i konec Arduino, protože za zastaralém HW z AVR instrukční sadou odpovídajícím 90-tým letů již Arduino stavět nešlo a tak ty omezující a (přiznávám) úplné začátky zjednodušující vrstvy a především nadšení, návody a vnucování od neodborníků přenesli na ARMy na Mbed, který jim ale ARM zrušil. Takže špatná rozhodnutí a konec. Alternativní implementace nějak bude přežívat nad Espressif IDE.
Ale když vidím ty propagátory Arduino u nás, kteří tím chtějí řídit roboty a další, tak ono tím že neznají základy tak si ani nevšimnou, že časování jimi propagované (stažené) motion control knihovny v Ardino na silném Teensy 4.1 je busysmyčkami testujícími timer a tak, takže pak ztrácí data z komunikace atd....
Trochu úvah a osvěty jsem se pokusil sepsat na ABClinuxu
Jaký systém, RTOS, HAL, atd... volit pro menší MCU
Jaký RTOS na MCU, žádný, máme, vyžadujeme Arduino
ale zdá se, že zaslepení propagátoři Arduino jsou nepoučitelní A souhlasím, že to úplně jednoduché není, protože ty alternativy vyžadují k trochu rozumnému přístupu alespoň minimální znalost.
I když s čistým copy-paste a minimem myšlení i nad NuttXem pod vedením stavili funkční robotické úlohy is studenti bez předchozích znalostí a obecně většina s velkým nezájmem o základní znalosti v rámci kurzu Microcomputer engineering with space applications z ze švédské Kiruny, kde jsem investoval jeden běh do jeho pozvednutí. A přesto, že znalost procesoru odmítli, tak jezdit podle čáry a podobné s námi dodanými Mbot platformami je bavilo.
Jinak nyní došlo ve výuce na FEL k úpadku, kdy se předmětu Programování systémů reálného času skupina, kde se vedení postaralo i lží o to, abych se s lidmi, které jsem přivedl, dále nebavil a nespolupracoval, zbavila předmětu a převzal ho tým navázaný na STM, který prosazuje TheradX místo sice již licenčně a i zastaráváním problematického WindRiver VxWorks . TheradX - systém, který autor výhodně prodal Microsoftu, ten se ho pak zbavil a přenechal ho Eclipse. Původní autor TheradX již prosazuje, že mají uživatelé přejíd na jeho proprietární PX5 RTOS, kde jako jednu za hlavních výhod vyzdvihuje POSIX pthreads. Pak je zase někomu prodá.
Takže studenti se nyní budou učit nepřenositelné API vláken, sítí souborů atd v ThreadX.
Přitom již v době výuky PSR na architektuře PowerPC s VxWorks (alespoň reálně použitými na Marsu, routerech, ADS modemech a s POSIX 1003.1b), jsem předvedl, že všechny úlohy, až na jednu, šly plně řešit na otevřeném RTEMSu a i po přechodu na náš MZ_APO Xilinx Zynq výukový kit jsem s dalším studentem předvedl, že lze totéž učit s RTEMSem a je z toho například výsledkem Návrh subsystému CAN FD sběrnice pro real-time exekutivu RTEMS. Tedy reálný rozvoj jak u studentů, tak u použitého RTOS, stejně další Google Summer of Code projety. Viz mnou vedené nebo motivované projekty
Takže to, že se u jednoho diplomata ta výchova opravdu před mnoha lety nepovedla mě sice stálo hodně času, ale jinde se daří. A stejně jako nemá mysl zas tak času věnovat znalosti odmítající části Arduinistů. Má smysl jít dopředu s lidmi, kteří zájem mají a to i a často především mimo ČR. Viz příští týden probíhající NuttX Workshop, kde tři kolegové/studenti prezentují. S NuttXem se setkáte ve většině řízení lepších dronů, náramcích a hodinkách od Xiaomi, možná i jejich autech, sluchátkách od Sony a i na Měsíci v jejich kamerkách.