- A Velxio egy nyílt forráskódú és önállóan tárhelyre telepíthető szimulátor, amely közvetlenül a böngészőben emulálja az Arduinót, az ESP32-t és a Raspberry Pi-t.
- 19 alaplapot, 5 CPU architektúrát és több mint 48 interaktív komponenst támogat valódi CPU emulációval.
- Lehetővé teszi több kártya használatát ugyanazon az áramkörön, soros monitorozást, könyvtárkezelést és együttműködésen alapuló munkát.
- Az AGPLv3 licenc oktatási célú és kereskedelmi opcióként is hasznossá teszi a gyártók, az oktatás és a startupok számára.

Az Arduino, ESP32 vagy Raspberry Pi segítségével történő ötletelés gyakran nagy lelkesedéssel kezdődik, de gyakran végtelen várakozással, sikertelen összeszerelésekkel és jó adag frusztrációval végződik. A fizikai hardverekre való folyamatos támaszkodás lelassítja a kísérletezés ütemét, és bonyolítja mind az oktatást, mind a beágyazott projektek szakmai fejlesztését.
Itt jön képbe a Velxio , egy webalapú beágyazott hardver szimulátor , amelynek célja, hogy megváltoztassa a prototípus-készítés módját. Lehetővé teszi teljes panelek emulálását, grafikus komponensek csatlakoztatását, kód írását, és közvetlenül a böngészőben való futtatását anélkül, hogy az eszközt a munkaasztalon kellene tartani, vagy bármit is fel kellene tölteni a felhőbe, ha nem akarjuk. Mindez pedig egy nyílt forráskódú, saját tárhelyen működő alapra épül.
Mi a Velxio szimulátor és mi a filozófiája?
A Velxio egy webalapú szimulátor olyan kártyákhoz, mint az Arduino, az ESP32 és a Raspberry Pi, amely közvetlenül a böngésződben fut . A felhőalapú eszközök (mint például a Wokwi) alternatívájaként hozták létre, egyértelmű céllal: ugyanazt a magas szintű szimulációs élményt nyújtani, de azzal a képességgel, hogy mindent helyben és saját tárhelyen futtathassunk, külső szerverekre való támaszkodás nélkül.
A fejlesztő egy nyílt forráskódú szimulátor fejlesztésével kezdte kifejezetten az Arduino számára , azzal a szándékkal, hogy lehetővé tegye az offline munkát, a környezet feletti nagyobb kontrollt, és ne kelljen kódot küldeni harmadik féltől származó szolgáltatásoknak. Ebből az alapból a projekt egy többkártyás szimulációs platformmá nőtte ki magát , amely képes messze túllépni az alapvető Arduino vázlatokon.
A projekt filozófiája három pilléren nyugszik: szabad szoftver, saját tárhely és realisztikus emuláció . A cél az, hogy bárki futtatni tudja a Velxio-t a saját számítógépén vagy szerverén, integrálhassa azt oktatási vagy professzionális munkafolyamatokba, és a valódi hardverekéhez nagyon közel álló viselkedést tartson fenn.
Továbbá a Velxio egy olyan eszközként jelenik meg, amelyet mind a gyártók közössége, mind az iskolák, egyetemek és startupok számára terveztek, amelyeknek hardverötleteket kell kísérletezniük, tanítaniuk vagy validálniuk anélkül, hogy a korai szakaszban a fizikai összeszerelés költségei vagy logisztikája felmerülne.
A projekt a GitHubon jelent meg, és modern technológiai megoldásokra épül: egy React frontend TypeScripttel, egy Python backend FastAPI-val , valamint emulációs motorok újrafelhasználása olyan már meglévő projektekből, mint a Wokwi, mindezt nyílt licencek alatt.
Hogyan működik a Velxio belsőleg: realisztikus emuláció és munkafolyamat
A Velxio egyik erőssége, hogy nem csak egy „játék” szimuláció marad; a támogatott kártyák valódi CPU-it emulálja . Például az AVR8 mikrovezérlőkkel ellátott Arduino esetében (mint például az Arduino Uno ATmega328p-je) ugyanazt a ciklusemulációs motort használja, mint a Wokwi, amely az MIT licenc alatt jelent meg. Ez lehetővé teszi a kód viselkedésének szinkronizálását az utasítás- és órajelszinten.
A gyakorlatban ez azt jelenti, hogy amikor egy tipikus villogó vázlatot írsz, a virtuális LED be- és kikapcsol az emulált mikrovezérlő lábainak tényleges változásaira reagálva . Ez nem egy mesterséges animáció: a CPU modell kiszámítja a GPIO állapotát, és ezeket a változásokat valós időben továbbítja az áramköri komponenseknek.
A Velxio alapvető munkafolyamata ugyanazt a logikát követi, mint a valódi hardverek programozása: megírod a kódot, lefordítod, majd futtatod a szimulált panelen . A webszerkesztőből (amely a Monaco-n alapul, ugyanazon a motoron, mint a VS Code) a felhasználó megírja a programját, és rákattint a fordításra. A böngésző elküldi a kódot egy FastAPI-val megvalósított háttérszervernek, amely alfolyamatként elindítja az arduino-cli-t a megfelelő bináris vagy HEX fájl generálásához.
A lefordítás után a kapott fájl visszakerül a böngészőbe , ahol a CPU emulátor értelmezi és betölti azt a virtuális panelre. Amikor a felhasználó a „Futtatás” gombra kattint, az emulált CPU megkezdi az utasítások feldolgozását, a regiszterek és a csatlakozókivezetések frissülnek, és a felület ugyanúgy megjeleníti az áramkör viselkedését, mint egy fizikai panelen.
A rendszer nem korlátozódik egyetlen LED-re: a Velxio interaktív komponensek (képernyők, érzékelők, bemenetek, kimenetek stb.) könyvtárát tartalmazza, amelyek a Wokwi saját interfészelemein alapulnak. Ez egy olyan vizuális környezetet hoz létre, ahol a komponensek grafikus kábelezési rendszer segítségével húzhatók és csatlakoztathatók.
Alaplapok, CPU architektúrák és támogatott komponensek
A Velxio 2.0-ra való frissítéssel a platform jelentős ugrást tett a hatókörében: mostantól 19 különböző kártyát és 5 CPU architektúrát támogat . Ez kiterjeszti képességeit a klasszikus Arduinón túlra, és lehetővé teszi a sokkal változatosabb, sőt összetettebb környezetekkel való munkát.
A rendelkezésre álló információk szerint a támogatott architektúrák közé tartozik az AVR8, az ARM Cortex-M0+, a RISC-V, az Xtensa és az ARM Cortex-A53 . A gyakorlatban ez azt jelenti, hogy olyan kártyákat lehet szimulálni, mint a különféle Arduino modellek, az ARM-alapú mikrovezérlők, számos ESP32, valamint egy teljes operációs rendszert elindítani képes Raspberry Pi 3.
Egy másik kulcsfontosságú jellemző a perifériakönyvtár: több mint 48 interaktív elektronikus alkatrész, a LED-ektől és ellenállásoktól kezdve az érzékelőkön, TFT kijelzőkön, szöveges képernyőkön és más, az elektronikai és IoT projektekben általánosan használt modulokon át. Ez a változatosság lehetővé teszi a logika, az interakció és az időzítések szigorú tesztelését, mielőtt a tényleges hardverrel dolgoznánk.
A böngészőalapú integrált fejlesztői környezet a Monaco Editort használja , ami a Visual Studio Code-hoz nagyon hasonló szerkesztési élményt nyújt: szintaxiskiemelést, automatikus kiegészítést, kényelmes fül- és fájlkezelést stb. Ezenkívül a Velxio soros monitort, könyvtárkezelést és több panel párhuzamos kezelésének lehetőségét is integrálja.
Az egyik különösen feltűnő tulajdonsága, hogy képes több heterogén panelt szimulálni ugyanazon az áramkörön . Például két Arduino kommunikálhat SPI-n keresztül, egy ESP32 sorosan kommunikálhat egy Arduino-alapú panellel, vagy akár egy Raspberry Pi 3 kommunikálhat egy Raspberry Pi Pico-val, mindezt ugyanazon a szimulációs környezetben.
Arduino, ESP32 és Raspberry Pi szimuláció böngészőben
A Velxio az Arduino és az AVR ökoszisztéma iránti erős összpontosítással született , de jelenlegi hatóköre messze túlmutat ezen. Az Arduino esetében a szimulátor az arduino-cli segítségével fordítja le a kódot, és a Wokwi infrastruktúrából örökölt cikluspontos AVR8 emulátorral futtatja , amely nagy pontosságot kínál az időzítésben, a megszakításokban és a lábak viselkedésében.
Az ESP32-k esetében a projekt számos emulációs stratégiát kombinál: mind az Xtensa variánsokat, mind a RISC-V alapú ESP32-C3-at támogatja . Konkrétan megemlíti, hogy az ESP32-C3 egy teljes egészében TypeScriptben írt RISC-V emulátoron fut , közvetlenül a böngészőben futva további háttérprogram nélkül. Más ESP32 variánsok esetében a Velxio integrálja a QEMU egy elágazását, szintén a Wokwi ökoszisztémából, az Xtensa mag emulációjának biztosításához.
A Raspberry Pi világában a Velxio képes szimulálni egy Raspberry Pi 3-at a teljes Raspberry Pi operációs rendszer QEMU használatával történő elindításával egy webböngészőn belül . Ez elméletileg lehetővé teszi a felhasználók számára, hogy valódi Linux környezetben dolgozzanak, Python vagy Bash szkripteket futtassanak, és a virtuális Pi-t más áramköri komponensekhez csatlakoztassák. Bár ez a funkció még béta fázisban van, és korlátozásokról is beszámoltak (például egyes esetekben nehézségekbe ütközik a soros konzol elérése), meglehetősen fejlett szimulációs forgatókönyvek előtt nyitja meg az utat.
A Raspberry Pi Pico-hoz hasonló kisebb kártyák esetében a Velxio dedikált RP2040 emulátorokra támaszkodik , újra felhasználva a Wokwi közösség munkáját. Az eredmény egy olyan környezet, ahol a több különböző, egyidejűleg interakcióba lépő mikrokontrollerrel rendelkező projektek tesztelhetők anélkül, hogy az összes ilyen kártyát az asztalon kellene tartani.
Mindehhez a programozási nyelvekhez való rugalmas hozzáállás társul: lehetséges az Arduino (C/C++) és a Python nyelvekkel való munka , a projekt pedig a paneltől függően más fejlesztői környezetekkel való kompatibilitást is említ, ami vonzóvá teszi mind az elektronikusabb profilú, mind a magas szintű programozók számára.
A Velxio 2.0 főbb jellemzői alkotók, oktatás és startupok számára
A kártyák és komponensek listáján túl a Velxio 2.0 kiemelkedik a valós munkához igazodó funkcióival is: tesztelés, hibakeresés és együttműködés . Az eszköz tartalmaz egy integrált soros monitort, amely lehetővé teszi a felhasználók számára, hogy a program kimenetét ugyanúgy megtekintsék, mint egy fizikai kártyán, és kezeljék az egyes projektek könyvtárait anélkül, hogy összetett helyi telepítésekkel kellene foglalkozniuk.
A projekt egyik legnagyobb erőssége a több áramkörön történő szimuláció . Ez különösen hasznos a tipikus elosztott IoT architektúrák teszteléséhez: ESP32-alapú érzékelőcsomópontok, Raspberry Pi-alapú központi egység, Arduino-vezérelt bővítőmodulok stb. Mindezek modellezése a böngészőben a hardverbe való befektetés előtt időt és pénzt takarít meg.
Az oktatás területén a Velxio lehetővé teszi a diákok és a tanárok számára, hogy összetett projekteken dolgozzanak anélkül, hogy teljes hardverlaborra lenne szükségük . Azokban az osztálytermekben, ahol korlátozott a költségvetés vagy a logisztika, vagy ahol az internetkapcsolat megbízhatatlan, egy olyan szimulátor megléte, amely a helyi hálózaton vagy az egyes számítógépeken telepíthető, nagyban megkönnyíti a beágyazott elektronika és programozás alkalmazását.
A startupok és a termékfejlesztő csapatok számára az érték a gyorsaságban rejlik: az ötletek gyors validálása, olcsó kudarc, és működő prototípusok bemutatása az ügyfeleknek vagy a befektetőknek anélkül, hogy a korai fordulókban fizikai prototípus-készítésre kellene támaszkodni. Maga a projekt is kiemeli, hogy a Velxio kulcsfontosságú lehet a koncepcióbizonyítási szakaszok felgyorsításában és az új fejlesztők képzésében.
A projektek felhőbe mentésének és az együttműködésnek a lehetősége szintén előny. Az elosztott csapatok megoszthatják az áramköröket, a kódot és a konfigurációkat, csökkentve a súrlódást a távoli munkavégzés során. Ennek ellenére továbbra is elérhető a lehetőség, hogy az eszközt saját infrastruktúrájukon üzemeltessék azok számára, akiknek teljes kontrollra van szükségük.
Nyílt forráskód, licencek és saját tárhely
A Velxio egyértelműen nyílt alapokra épül: a projekt kódja kettős licencmodell keretében érhető el a GitHubon. Egyrészt az AGPLv3 személyes, oktatási és nyílt forráskódú projektekhez is elérhető , lehetővé téve a diákok, tanárok és alkotók számára, hogy ingyenesen használják az eszközt, amennyiben betartják a licencfeltételeket. Másrészt létezik egy kereskedelmi licenc, amely saját termékekhez, zárt SaaS-hez vagy integrációkhoz készült, ahol a forráskód kiadása nem kívánatos.
Ez a hibrid megközelítés a szabad szoftverek filozófiája és a kereskedelmi fenntarthatóság közötti egyensúly megteremtésére törekszik , lehetővé téve a vállalatok számára, hogy integrálják a Velxio-t termékeikbe vagy platformjaikba anélkül, hogy egy adott licencért cserébe kötelesek lennének megnyitni az összes kódjukat.
Egy másik kulcsfontosságú funkció a Velxio önálló hosztolási lehetősége egyetlen Docker-paranccsal . Ha a Docker már telepítve és konfigurálva van egy Linux gépen (például Ubuntu 24.04), akkor a teljes szimulációs környezetet egyetlen paranccsal telepítheti, és böngészőjéből elérheti a http://localhost:3080 címen vagy a gép helyi IP-címén keresztül. Ez nagyban leegyszerűsíti a telepítést fejlesztői környezetekben, tantermekben és laboratóriumokban.
Van egy online demó is, amely elérhető a hivatalos weboldalon (velxio.dev) , így aki gyors betekintést szeretne, annak nem kell semmit telepítenie. A „Try Simulator Free” gombra kattintva a szimulátor közvetlenül megnyílik egy villogó példával egy Arduino UNO-n, amely készen áll a fordításra és futtatásra.
Végül, az a tény, hogy a projekt újra felhasználja a Wokwi MIT és hasonló licencek alatt kiadott komponenseit és emulátorait, a többi nyílt forráskódú projekttel való együttműködés átlátható megközelítését mutatja ahelyett, hogy újra feltalálná a kereket, és az önkiszolgáló tárhely, a több fedélzeti rendszer és az integrált élmény területén teremtene hozzáadott értéket.
A Velxio előnyei más szimulátorokhoz, például a Wokwihoz vagy a PicsimLabhoz képest
A jelenlegi ökoszisztémában már számos eszköz létezik az elektronika és a mikrovezérlők szimulálására. A Wokwi például egy jól bevált platform , amely lehetővé teszi az Arduino, az ESP32 és más komponensek szimulálását közvetlenül a weben, egy letisztult felülettel és egyértelmű oktatási és készítői fókuszúsággal.
A Wokwi közös munkaterületet, számos komponens támogatását , valamint a böngészőben történő kódírás és -tesztelés lehetőségét kínálja. Ideális a gyors tanuláshoz, kísérletezéshez és projektek megosztásához, sőt asztali integrációkat is kínál olyan alkalmazásokon keresztül, mint a WebCatalog, így dedikált ablakokban futtatható macOS és Windows rendszeren.
A Wokwi megközelítése azonban elsősorban a felhőalapú megoldásokra épül : minden a saját szerverein fut, és a felhasználónak nincs ugyanolyan szintű ellenőrzése az infrastruktúra felett, illetve nincs mély integrációja az önállóan menedzselt vállalati vagy oktatási környezetekbe. Ebben különbözik a Velxio, amely egy olyan szimulátort kínál, amely alapvető képességeiben nagyon hasonló, de önállóan üzemeltetett és bővíthető.
Ami a PicsimLab-et illeti, ez egy újabb szimulációs lehetőség, webes és helyi verziókkal is , amely több mikrovezérlőt is támogat, beleértve az ESP32-t is. A webes verzióját azonban lényegesen lassabbnak és erőforrás-igényesebbnek írják le, jelentős teljesítménynövelési lehetőséggel. A Velxio megközelítése, amelyet modern böngészőoldali technológiák és optimalizált emulátorok támogatnak, pontosan ezt a súrlódást kívánja minimalizálni a használat során.
Összefoglalva, a Velxio kiemelkedik a többi közül: egyszerű saját tárhelyszolgáltatás Dockeren keresztül, több kártya és architektúra támogatása ugyanazon az áramkörön, QEMU integráció olyan eszközökhöz, mint az ESP32 és a Raspberry Pi 3, valamint egy olyan licencmodell, amely lehetővé teszi mind az ingyenes oktatási felhasználást, mind a kereskedelmi integrációkat. Mindez anélkül, hogy feláldozná a Wokwi-hoz hasonló vizuális élményt, interaktív komponensekkel és VS Code stílusú szerkesztővel.
A projekt jelenlegi korlátai és érettségi szintje
Bár a Velxio már teljes mértékben használható, még aktív fejlesztés alatt áll , és a fiatal projektekre jellemző korlátai vannak. Például problémák merültek fel a szimulált Raspberry Pi 3 soros konzoljának elérésekor még több percnyi indítás után is, ami arra utal, hogy a teljes operációs rendszer böngészőn belüli emulációja még fejlesztésre szorul.
Az ESP32 esetében fordítási hibákat figyeltek meg bizonyos összetettebb példákban , amikor bizonyos könyvtárakat vagy projekteket töltöttek be, mind a helyi telepítésekben, mind az online demóban. Azonban az olyan egyszerű példák, mint a klasszikus Blink LED, helyesen működnek, így ez inkább az adott környezetekkel és függőségekkel való kompatibilitás javításának kérdése, mintsem a támogatás általános hiánya.
Egy másik fejlesztés alatt álló aspektus a vizuális kábelezési rendszer . Jelenleg már lehetővé teszi a csatlakozók és az alkatrészek közötti kapcsolatok rajzolását, de a korai verziókban egyes csatlakozások inkább esztétikai jellegűek voltak, mint funkcionálisak. A cél az, hogy ezek a kapcsolatok a tényleges jelútvonalakat képviseljék, tükrözzék az állapotváltozásokat, és lehetővé tegyék a mélyebb hibakeresést.
Ezen pontok ellenére a projekt szilárd alapokon áll, és az ütemterv további érzékelők, kijelzők és segédprogramok hozzáadását is magában foglalja, mint például egy átfogóbb soros monitor , valamint a teljesítményadatok finomítását a tisztán web alapú verzióban. Mindenesetre oktatási célokra, az Arduino és az ESP32 kísérletezéséhez, valamint az ötletek gyors validálásához az eszköz már most is nagyon hasznos.
Maga a szerző is kifejezte érdeklődését a közösség őszinte visszajelzései iránt , hogy rangsorolhassa a fejlesztéseket: kulcsfontosságú tudni, hogy a felhasználók milyen funkciókat értékelnek a legjobban (gyenge internetkapcsolattal rendelkező iskolák, a szimulációt saját eszközeikbe integrálni kívánó fejlesztők, a projektjeiket lokálisan megtartani kívánó készítők stb.) annak eldöntéséhez, hogy hová érdemes továbbra is időt fektetni.
Használati esetek és profilok, amelyek a leginkább profitálhatnak a Velxio-ból
Egy gyártó vagy hobbifelhasználó számára a Velxio nagyszerű eszköz a gyors teszteléshez . Ahelyett, hogy meg kellene várnia a panelek és alkatrészek megérkezését, vagy a tesztbeállításokkal kellene bajlódnia, modellezheti az áramkört a böngészőjében, megírhatja a kódot, és addig iterálhat, amíg a logika világos nem lesz. Ezután a valódi hardverre való áttérés sokkal simább és kevésbé kiszámítható.
Oktatási környezetben a korlátozott erőforrásokkal vagy megbízhatatlan internetkapcsolattal rendelkező iskolák telepíthetik a Velxio-t egy helyi szerveren vagy tantermi számítógépeken, így minden diáknak lehetősége nyílik virtuális alaplapok kipróbálására anélkül, hogy attól kellene tartania, bármi is megsérül. Ez csökkenti a karbantartási és hardvercsere-költségeket is.
Az induló vállalkozások és az IoT-termékek prototípusait gyártó vállalatok számára a Velxio validációs és demonstrációs környezetté válik : interaktív példák készíthetők elő, amelyek bemutatják az ügyfeleknek vagy a befektetőknek, hogyan fog viselkedni a rendszer, anélkül, hogy minden megbeszélésre tele aktatáskát kellene cipelniük panelekkel és kábelekkel. Továbbá, a platform önálló hosztolásának lehetősége előnyt jelent azok számára, akik érzékeny szellemi tulajdont kezelnek.
A firmware- és beágyazott szoftverfejlesztő csapatok a szimulátor segítségével automatizálhatják a tesztelést és a kezdeti hibakeresést , igény szerint integrálva azt saját eszközeikkel. A projekt nyílt forráskódú jellege megkönnyíti a belső folyamatokba, képzési környezetekbe vagy virtuális laboratóriumokba való beépítést.
A nyílt forráskódú közösség számára a Velxio megnyitja az utat az új alaplapok, alkatrészek és szimulációs forgatókönyvek fejlesztésében való együttműködés előtt , példákkal, dokumentációval és az ökoszisztéma fejlesztéseivel járulva hozzá anélkül, hogy egy, a fejlesztés ütemét meghatározó, saját fejlesztésű cégtől kellene függeni.
A Velxio javaslata végső soron egy hatékony kombináción alapul: realisztikus emuláció, több panel támogatása, felhasználóbarát felület, valamint a helyi vagy felhőalapú használat lehetősége . Bár még mindig vannak hiányosságai, már elég kiforrott ahhoz, hogy nagyon hasznos eszközzé váljon bárki számára, aki Arduinoval, ESP32-vel vagy Raspberry Pi-vel dolgozik, és zökkenőmentesen szeretne kísérletezni a webböngészőjéből.
Szenvedélyes író a bájtok és általában a technológia világáról. Szeretem megosztani tudásomat írásban, és ezt fogom tenni ebben a blogban, megmutatom a legérdekesebb dolgokat a kütyükről, szoftverekről, hardverekről, technológiai trendekről stb. Célom, hogy egyszerű és szórakoztató módon segítsek eligazodni a digitális világban.



