Jak programovat Arduino, ESP32 a Raspberry Pi s pomocí AI. Správné zadání promptu, časté chyby a jak poznat, že AI chápe váš záměr.

Stručně: AI (např. ChatGPT, Claude) dokáže generovat funkční kód pro Arduino, ESP32 i Raspberry Pi, ale kvalita závisí na přesnosti promptu. Klíčové je uvést konkrétní hardware, framework, verzi knihovny a rozdělit složitější úkoly na kroky. Níže najdete ověřené tipy, časté chyby a způsoby, jak poznat, že AI váš záměr správně pochopilo.

Používání AI při bastlení už není sci-fi. Stává se z něj běžný nástroj – podobně jako datasheet, osciloskop nebo Google. Rozdíl je ale v tom, že kvalita výsledku extrémně závisí na tom, jak AI zadáte úkol. Dobře napsaný prompt vám ušetří hodiny práce. Špatný vás naopak může zavést slepou uličkou.

V tomto článku se podíváme nejen na výhody a rizika programování Arduina, ESP32 a Raspberry Pi s AI, ale hlavně na praktickou stránku zadávání promptů, typické chyby a postupy, jak si ověřit, že AI skutečně chápe to, co po ní chcete.

Tip na úvod: pokud s AI teprve začínáte a tenhle článek je pro vás moc „embedded“, projděte si nejdřív náš praktický kurz Základy AI – vysvětlí promptování úplně od nuly a bez žargonu. Sem se pak vraťte pro konkrétní bastlířskou praxi.


Proč je prompt důležitější než samotná AI

AI není kouzelný čip, který „ví, co chcete“. Funguje čistě na základě vstupu. Pokud zadání:

  • není přesné,
  • míchá více cílů dohromady,
  • nebo vynechává klíčové informace o hardwaru,

výstup bude odpovídat právě tomu – neurčitý, nepřesný nebo nepoužitelný.

V elektronice a embedded vývoji to platí dvojnásob. Jeden špatně zvolený GPIO pin nebo jiná verze knihovny znamená nefunkční projekt.


Jak vypadá dobrý prompt pro bastlení

Dobrý prompt má strukturu. Nemusí být dlouhý, ale musí být konkrétní.

Ideální prompt obsahuje:

  • Typ desky
    (např. Arduino Uno, ESP32-C3, ESP32-S3, Raspberry Pi 4)
  • Použitý hardware
    (senzory, displeje, relé, LED pásek…)
  • Způsob komunikace
    (I2C, SPI, UART, OneWire)
  • Použitá GPIO
    (pokud je znáte nebo je chcete pevně dané)
  • Cíl projektu
    (co má výsledný program dělat)
  • Prostředí
    (Arduino IDE, PlatformIO, Python, ESP-IDF…)
    Pozor: PlatformIO oficiálně nepodporuje Arduino Core 3.x. Pokud ho používáte, potřebujete komunitní fork pioarduino.
  • Role AI
    Pokud chcete zaměřit styl odpovědi, přidejte na začátek větu jako: „Jsi zkušený embedded vývojář pracující s ESP32 a Arduino IDE.“ AI pak nepíše obecné vysvětlivky pro začátečníky, ale rovnou technický kód.

👉 Čím víc těchto informací dodáte, tím méně bude AI hádat.


Příklad špatného vs. dobrého zadání

Špatný prompt:

Napiš kód pro ESP32 s displejem.

Výsledek? AI musí hádat:

  • jaký ESP32,
  • jaký displej,
  • jaké piny,
  • jakou knihovnu.

Dobrý prompt:

Používám ESP32-C3 v Arduino IDE.
Mám OLED displej 128×32 s řadičem SH1106 připojený přes I2C.
SDA je na GPIO19, SCL na GPIO18.
Chci zobrazovat teplotu a vlhkost ze senzoru SHT40.
Napiš základ programu a vysvětli strukturu kódu.

Rozdíl v kvalitě výstupu je obrovský.


Časté chyby při zadávání promptu

1. Neurčitost

„Nějak“, „asi“, „jak to bývá běžně“ – to jsou slova, která AI nutí domýšlet detaily.

2. Míchání více úloh najednou (přetížení promptu)

Jedním promptem chcete:

  • Wi-Fi,
  • webový server,
  • OLED,
  • MQTT,
  • deep sleep.

Výsledek je často nepřehledný a špatně laditelný.
Lepší je postupovat krok za krokem.

3. Neupřesněná verze platformy

Rozdíly mezi:

  • Arduino Uno vs. ESP32,
  • ESP32 vs. ESP32-C3,
  • starší a novější verzí Arduino Core,

jsou zásadní. Bez upřesnění může AI navrhnout kód, který nikdy nepůjde přeložit.

4. Zákazová formulace místo pozitivního zadání

Místo „nepoužívej zbytečné vysvětlivky“ napište „vysvětli pouze logiku inicializace a hlavní smyčky“. AI lépe reaguje na to, co má dělat, než na to, čemu se má vyhnout. Zákazové instrukce bývají ignorovány nebo interpretovány různě.


Pokročilé způsoby práce s AI (prakticky)

Rozdělení práce do více kroků

Místo jednoho dlouhého zadání se osvědčuje rozdělit práci do více kroků. AI pak pracuje přesněji a dělá méně chyb.

Příklad postupu:

  1. Nechte si vysvětlit princip nebo knihovnu
    Například:
    Vysvětli, jak funguje WiFiManager a jaká je jeho typická struktura.
  2. Teprve potom chtějte konkrétní kód
    Napiš základní kód pro ESP32-C3 v Arduino IDE s uložením Wi-Fi údajů do paměti.
  3. Nakonec požádejte o kontrolu kompatibility
    Zkontroluj, zda je kód kompatibilní s Arduino core 3.x.

👉 Tento postup výrazně snižuje počet chyb a halucinací v kódu.

Práce s funkčním příkladem kódu

Velmi účinné je dát AI krátký, funkční kus kódu, na který má navázat.

Příklad:

#include <WiFiManager.h>

void setup() {
  WiFiManager wm;
  wm.autoConnect("AP_fallback");
}

Dotaz:

Rozšiř tento kód o webové rozhraní, které zobrazí teplotu ze senzoru SHT40.

AI pak:

  • dělá méně chyb v knihovnách a inicializaci.
  • nepřemýšlí nad základní strukturou,
  • drží se ověřeného řešení

Příklady jako vzor pro výstup (few-shot prompting)

Velmi spolehlivý způsob, jak řídit formát výstupu, je ukázat AI příklad toho, co chcete dostat. Místo popisu struktury kódu prostě jeden vzorový kód přiložíte.

Například pokud chcete kód vždy s komentáři v češtině a s funkcí setup() a loop() jasně oddenělenými komentářovými bloky, přiložte krátký vzor:

// === INICIALIZACE ===
void setup() {
  // ... váš kód
}

// === HLAVNÍ SMYČKA ===
void loop() {
  // ... váš kód
}

Dotaz pak zní: „Napiš kód ve stejné struktůře jako výše.“ AI převezme styl, komentáře i členění – bez dlouhého vysvětlování.

Strukturování promptu pomocí XML tagů

Pro delší nebo vícedílná zadání se osvědčuje oddělit jednotlivé části pomocí XML tagů. AI pak přesněji pozná, co je hardware kontext, co je cíl a co jsou omezení – a neplete si je dohromady.

<hardware>ESP32-C3, Arduino core 3.x, Arduino IDE</hardware>
<senzor>SHT40 na I2C, SDA GPIO19, SCL GPIO18</senzor>
<cil>Zobrazit teplotu a vlhkost na OLED 128x32, řadič SH1106</cil>
<omezeni>Bez WiFi, bez serióvé linky, pouze lokální zobrazení</omezeni>

Tagy si pojmenujte libovolně – důležité je, aby byly konzistentní a popisné.

Šablona promptu jako základ pro projekt

AI si mezi sezeními nic nepamatuje – každý nový chat začíná od nuly. Pro vícedílní projekty to znamená, že hardware kontext musíte zadat znovu. Praktické řešení: uložte si „hlavičku projektu“ jako textový soubor a zkopírujte ji na začátek každého nového chatu.

# Projekt: Meteostanice na balkonu
Hardware: ESP32-C3, LaskaKit Meteo Mini, Arduino IDE, Core 3.x
Senzory: SHT40 (I2C, SDA 19, SCL 18), BMP280 (I2C)
Cíl: Odesílání dat na TMEP.cz každých 15 minut, deep sleep mezi měřeními

Těchto pár řádků stačí vložit na začátek a AI ihned ví, s čím pracuje – bez opakování celého popisu od začátku.


Jak si nechat zkontrolovat vlastní prompt

Velmi silná, ale málo používaná technika je nechat AI zhodnotit váš vlastní dotaz.

Funguje to překvapivě dobře:

Zkontroluj můj prompt a napiš, zda je dostatečně jednoznačný.
Pokud ne, navrhni jeho vylepšení.

AI vám často:

  • vypíše chybějící informace,
  • upozorní na možné nejasnosti,
  • navrhne strukturovanější zadání.

Tohle je extrémně užitečné hlavně pro začátečníky.


Ověření: chápe AI opravdu to, co chci?

Nikdy neberte první odpověď jako finální.

Dobrá praxe:

  • požádejte AI, aby vlastními slovy shrnula, co má udělat,
  • zeptejte se:
    „Rozumíš správně tomu, že cílem je…?“
  • nechte si vysvětlit logiku kódu krok za krokem.

Pokud shrnutí nesedí, zastavte se a upravte zadání.
Tohle ušetří víc času než ladění špatného řešení.

Další efektivní technika je požádat AI, aby si sama zkontrolovala výsledek ještě před odeslaním odpovědi. Stačí na konec promptu přidat:

Před dokončením ověř, že kód je kompatibilní s Arduino core 3.x a že použité knihovny existují pod uvedenými názvy.

AI pak projíe svůj vlastní výstup kriticky – a chyby jako přejmenované metody nebo neexistující třídy odhalí dříve, než je zkopírujete do IDE.


AI a neaktuální informace: realita roku 2026

Jedním z nejčastějších problémů jsou:

  • přejmenované knihovny,
  • změny API,
  • rozdíly mezi návody staré 2–3 roky a současným stavem.

AI může nabídnout řešení, které dávalo smysl v minulosti, ale dnes už nefunguje.

Jak se bránit:

  • ověřujte názvy knihoven v Arduino Library Manageru,
  • kontrolujte GitHub a datum posledního commitu,
  • sledujte chybová hlášení kompilátoru – často řeknou víc než samotný kód.

AI není náhrada porozumění

Tohle je klíčová myšlenka celého článku.

AI:

  • vám pomůže rychle začít,
  • navrhne strukturu,
  • urychlí ladění.

Ale:

  • nevidí vaše zapojení,
  • nepozná špatný spoj,
  • neví, že jste omylem použili boot pin.

Pokud nerozumíte tomu, co kód dělá, dříve nebo později narazíte.


Jaké AI nástroje se dnes používají

Arduino AI Assistant je přímo zabudovaný do Arduino Cloud Editoru a má kontext celého projektu – to je pro bastlíře nejsnadnější cesta. Běží na Claudovi od Anthropic.

Pokud pracujete mimo Cloud Editor, funguje komunitní plugin AI.duino pro Arduino IDE, který integruje Claude, ChatGPT, Gemini nebo lokální LM Studio – a umí třeba automaticky zkontrolovat chyby po kompilaci.

Pro pokročilejší použití (větší projekty, VS Code, PlatformIO) se osvědčuje Cursor (IDE s AI) nebo Claude Code (terminálový agent). Oba zvládnou práci s více soubory najednou, ale jejich silné stránky jsou spíš na větších projektech než na jednoduchých sketchich.

Žádný z nástrojů však nesleduje živě Arduino Library Manager ani GitHub commits. Ověření aktuálnosti knihovny je vždy na vás.

Co platí nejspíš teď, zítra už nemusí

Shrnutí: recept na dobrý prompt

Dobrý prompt pro Arduino, ESP32 nebo Raspberry Pi zvládnete sestavit za minutu, pokud máte po ruce šest věcí: typ desky, použitý hardware, rozhraní, GPIO, prostředí a cíl. Přidejte roli AI a zákazové formulace přepište na pozitivní instrukce – výsledek bude výrazně kvalitnější.

Pokud si nejste jistí promptem, nechte ho AI zkontrolovat ještě před odeslaním. A výsledný kód vždy ověřte v Arduino Library Manageru a na GitHubu – AI nezná váš aktuální stav repozitářů.

Další zajímavý studijní materiál je tento článek od vývojářů Claude.

Pokud chcete pochopit promptování obecněji – nejen pro kód, ale i pro psaní textů, generování obrázků nebo ověřování faktů – mrkněte na náš kurz Základy AI. Je zdarma a staví na stejném principu R-Ú-K-F-O, který používáte tady.


Aktualizace 3. 5. 2026: Aktuální stabilní verze Arduino Core pro ESP32 je 3.3.8 (duben 2026). Pokud pracujete v PlatformIO, Core 3.x není oficiálně podporovaný – komunita vytvořila fork pioarduino, který funguje. Nové čipy jako ESP32-C5 a ESP32-C6 mají v AI modelech zatím omezené znalosti – při jejich použití je dobré přiložit přímo část dokumentace do promptu.

Ptáte se

Jak napsat dobrý prompt pro generování Arduino kódu?

Nejdůležitější je uvedení konkrétního modelu desky, verze knihovny a IDE. Například „ESP32-C3, Arduino core 3.x, knihovna SHT40 od Sensirion“ dá lepší výsledky než jen „ESP32“. Vyšší konkrétnost = méně domysšlení a méně chyb v kódu.

Proč AI generuje kód, který se nekompiluje?

AI může mít zastaralé informace o API konkrétních knihoven. Vždy zkontrolujte generovaný kód oproti aktuální dokumentaci knihovny. Pro ESP32 knihovny je klíčová verze Arduino core — API 2.x a 3.x se liší.

Jak na AI se složitějším projektem pro ESP32?

Rozdělte úkol na menší bloky. Nejdřív nechte AI napísat inicializaci hardware, pak obsluhu senzoru, pak logiku odesílání. Každý blok ověřte samostatně — chybu identifikujete dřív a oprava je jednoduchší.

Můžu AI říct, jak má kód vypadat?

Ano — a je to jeden z nejefektivnějších triků. Přiložte krátký vzorový kód a napište „Napiš ve stejné struktůře.“ AI převezme styl, komentáře i členění bez dalšího vysvětlování. Tato technika se nazývá few-shot prompting.

Jak v promptu oddělit hardware, cíl a omezení?

Použijte XML tagy — např. , , . AI pak přesněji pozná, co k čemu patří, a neplete si kontext s požadavkem. Tagy si pojmenujte libovolně, důležité je konzistentní použití.

Musím v každém novém chatu znovu popisovat hardware?

Ano, AI si mezi sezeními nic nepamatuje. Praktické řešení je uložit si „hlavičku projektu“ jako textový soubor a zkopírovat ji na začátek každého nového chatu. Stačí pár řádků s typem desky, senzory, GPIO a cílem.
Sdílejte článek:
Ukaž světu,
že jsi Maker!
Koupit tričko
Kafe pro Chiptrona
Dodej energii dalšímu článku

Související články

Každý elektro nadšenec přinejmenším slyšel o Arduino, které získalo obrovskou popularitu díky svým jedinečným vlastnostem.

Daniel Skopalík sdílel návod, jak použít populární jednodeskový počítač RaspberryPi jako JTAG programátor například ESP32.

Arduino Pro posouvá platformu Arduino do profesionálních aplikací IoT a Průmyslu 4.0 pomocí hardwaru jako Arduino Portenta H7, Arduino MKR a Arduino Nano 33, které jsou vybaveny výkonnými procesory a širokou škálou komunikačních rozhraní. Součástí ekosystému jsou rozšiřující moduly, software…

Slyšíme to dnes a denně, zejména před volbami, „chceme učenou společnost“, „chceme tu vytvářet světové know-how“. Naučit se ale logicky či kriticky myslet a naučit se pracovat s chybou není samozřejmost nám od narození daná. Musíme se je učit a…

Jistě jste se setkali se situací, kdy jste psali kód pro mikrokontrolér a nějaký výpočet, logická funkce, parsování dat z pole, převod z jednoho formátu do druhého nefungoval tak, jak by měl.

Konečně jsem se dostal k sepsání krátkého návodu, jak rozchodit ESP32 (mnohem, mnohem výkonnější ESP8266).

Trendy