Skip to main content


 

Arduino IDE 1.8.8


Upgraduju si právě Arduino IDE z 1.8.5 na 1.8.8 a tak ze zvědavosti porovnávám soubory a pozoruju rozdíly. Kromě přechodu z GCC 4.9.2 na verzi 5.4.0 (na kterou jsem se kvůli (ne)podpoře ATMEGA328PB těšil před 3/4 rokem) jsou zajímavé i změny/opravy v low-level knihovnách Arduina - např. v HardwareSerial nebo ve Wire (I2C). A to ani nemluvím o velkých změnách v Ethernetu, které na první pohled ani nejsem schopen pochopit. Asi se fakt vyplatí držet se poslední verze, přestože to často zase něco někde jinde rozbije :-)

asi jsem přišel na původ obřích změn v Ethernetu: vyměkli a vzali Pavlovu verzi knihoven (FastEthernet), podobně jako už dříve vyměkli u OneWire a dalších. Jooo Pavel jede!

Je to super zajímavé z toho důvodu, že pamětníci si vybaví, jak mi moje domácí Arduina s Ethernetem pravidelně nepravidelně po nějakých 20-40 dnech přestanou komunikovat. Teď s Pavlovýma knihovnama by se to mělo hned zkusit přeložit, třeba už je ďábel vyexorcistován?

A nad Arduino 1.9 (Beta) jsi nepřemýšlel?
Já tam oceňuju autocomplete a nápovědu
https://chiptron.cz/news.php?readmore=694

Po vlastním omezení Arduina použitím nejshitovějších CPU ATMega (ATmega328 je parametrově fakt výsměch - RAM, FLASH, EEPROM, v dnešní době a ESP32) je Arduino IDE druhá nejhorší část. S jeho preprocesorem jsem se nikdy rozumně nedomluvil a dělit projekty do několika souborů a includovat je šílené, skoro bych řekl nedeterministické chování :-(

Pravda, používat ArduinoIDE chce to jistou dávku sebemrskačství, ale zase třeba super cool PlatformIO mi dělalo takové psí kusy (psal jsem na G+), že jsem se ještě rád vrátil k ArduinoIDE, které mě víceméně poslouchá. 1.9Beta jsem nezkoušel, nemám čas ladit cizí chyby všude, i když jsem sám na sebe zvědavý, jestli mi autocomplete napsané v Javě udělá radost, nebo zkazí zážitek.

Na PlatformIO mi vadilo to, že bez myši to bylo pro mne skoro nepoužitelné, jelikož nerad sundávám ruce z klávesnice při každé chvilce psaní/uploadování kódu. Nakonec jsem zakotvil na MS Visual Studiu Community rozhraní s Visual Micro rozšířením. Ohromná výhoda je, že rozhraní je pak stejné, jak jsem zvyklý z práce pro programování v C++ v klasickém MS Visual Studiu. Dnes už do Arduino IDE jdu jen v nouzových situacích (tak jednou za rok).

Co se týče CPU ATMEGA, tak na ně nedám dopustit. Dělají, co po nich chci, takže i do nejnovějších produktů (třeba teď ty bezdrátové senzory) je vždycky rád použiju. Srovnávat ATMEGA328 a ESP32 zavání naprostým nepochopením účelu těch MCU a vůbec sklonu k používání kanónu na vrabce, Kamile :-)

Pokud bych po připojení pár knihoven typu Ethernet apod. nemusel na ATMEGA328 nesmyslně bojovat s každým byte paměti (hlavně flash), tak bych i souhlasil. To jsou prostě věci, které v roce 2018 nechci řešit, když je to otázka minimálního rozdílu v ceně výroby. Navíc stačí novější verze kompilátoru/knihovny a najednou se to už nevejde...
Kdyby to mělo alespoň parametry ATmega2560 (ty také nejsou nic extra, ale už se to dá trochu přežít).
Arduino IDE nepoužívám, koupil jsem si https://programino.com/ . Je to taky jednoduché jako Arduino IDE, ale s více možnostmi a není to zase už nepřehledná šílenost jako PlatformIO nebo pluginy do Eclipse atd.). Ale jen pro Windows, které zcela svobodně používám... show more

a jaký MCU tedy doporučuješ používat pro Ethernet? Skutečně ESP32? Nebo jsi to napsal jen tak, a ve skutečnosti používáš něco jiného?

Já se necítím cokoli doporučovat, na to nemám zkušenosti a praxi. ESP32 nepoužívám. Obecně používám klony Arduina (rozměrově menší desky typu Arduino Micro/Nano s ATMEGA328, nepoužívám jen CPU+součástky) a kde narazím, tak desky s ATMEGA2560. Ale to už je kráva jako pr*se. Kdyby se dělaly malé desky typu Arduino Micro/Nano s ATMEGA2560 (nebo ještě lepším), tak by jen na nich.
Pro mě není až tak důležité, jestli mě ta deska stojí 2$ nebo 4$. Nedělám sériovou výrobu a na kšeft, dělám si jen pro radost, takže v tom mém množství to není podstatné.

Tak to děláme velmi podobně až stejně. Všechny moje moduly jsou postavené na Pro Mini. Také souhlasím s tebou, že bojovat o poslední bajt ve flašce je o nervy. Sám jsem na to před lety dojel v pokojovém termostatu (co o něm byl seriál na Rootu). To ale nic nemění na tom, že ATTiny a ATMEGA jsou naprosto skvělé řady MCU, které když jsou použité na věci, pro které jsou určeny, plní úkoly na výbornou.
Mimochodem, osobně už mnoho let hledám vhodný MCU na ethernetové věci, a pořád ještě jsem ho nenašel. Takže když jsi to zmínil výše, že ATMEGA328 s Arduino ethernet knihovnami zaplní hodně flaš paměti, tak to je sice pravda, ale neznám nic lepšího. ESP32 to možná bude (na vyzkoušení se teprve chystám),... show more

mě snad trefí... stačí, když řeknu, že něco nejde, a okamžitě to někdo udělá!!
www.aliexpress.com/item/MEGA25… https://www.aliexpress.com/item/MEGA2560-PRO-EMBED-Micro-USB-Adapter-Development-Board-CH340G-ATMEGA2560-16AU-for-Arduino-ATmega2560-Expansion-Module/32968615346.html
This entry was edited (2 months ago)

Mega2560 používám vždy s Ethernet shieldem, tak ještě kdyby na tuhle mikroverzi taky existoval mikroshield kompatibilní s W5100 :)

Mě by se spíše líbila malá deska přímo s ATMEGA2560 s integrovaným W5500 a PoE. Něco takového, ale menší a ne za takovou šílenou cenu: https://www.sparkfun.com/products/11229