FRA ARDUINO BASERET PROTOTYPE TIL FÆRDIGT PRODUKT

Værd at vide om Arduino i mindre udviklingsprojekter

Udgangspunktet var at kunden ønskede deres Arduino baserede prototype gjort til et færdigt embedded produkt. De havde selv udviklet et printkort, baseret på et standard Arduino kort, og ændret, så der var de ind- og udgange, der var brug for. Det gjorde at Arduino miljøet virkede lige ud af boksen.

Fordelene ved at fortsætte på Arduino platformen var, at det var muligt at genbruge store dele af den protokol, der var implementeret i Arduinos eget C lignende sprog i prototypen. Det var ligeledes nemt at finde Arduino libraries til f.eks. den eksterne RTC chip og til interrupt håndtering.

Alt i den nye kode blev skrevet i C++, hvilket integrerer rigtig godt med Arduino. Vi valgte C++ frem for Arduinos eget sprog, primært for at lette implementering samt debug og test, da det meste så kunne udvikles i Visual Studio, og unittestes med GoogleTest.

De største begrænsninger ved at bruge Arduino ligger dels i de begrænsede debug muligheder i Arduino miljøet samt de begrænsede muligheder for at dele kode på tværs af egne projekter, uden at oprette Arduino libraries, hvilket igen giver nogle udfordringer mht. placering af filer og versionsstyring.

Vores erfaring er, at Arduino er velegnet til prototypeudvikling samt til softwareudvikling til små og mindre projekter. Ved større projekter rammer man dog hurtigt ind i begrænsninger. Sørger man derimod for at skrive koden i C++ så den virker i f.eks. Visual Studio, så er det forholdsvis let at portere til et professionelt udviklingsmiljø, hvis man senere får brug for det.

Vi valgte C++ frem for Arduinos eget sprog, primært for at lette implementering samt debug og test, da det meste så kunne udvikles i Visual Studio, og unittestes med GoogleTest.