Scomponiamo il progetto in due parti più semplici: l'accensione del display e la rotazione dell'asse del servomotore. In entrambi i casi l'evento che avvia l'attuatore è il superamento di una soglia di luminosità rilevata dal sensore di intensità di luce.
La prima parte del progetto prevede la visualizzazione su display di un'icona animata che possa rappresentare lo stato della luminosità ambientale e la richiesta idrica della pianta.
A livello di programmazione ci affidiamo ad una struttura condizionale (if-then-else) con la quale testare l'intensità di luce dell'ambiente, in particolare il superamento di una certa soglia che dovrà essere stabilita sperimentalmente nel contesto di riferimento.
Nel simulatore on-line saremo noi a variare l'intensità luminosa agendo sull'icona del sensore in alto a sinistra nella scheda (vedi figura a lato), mentre nella realtà le variazioni luminose saranno rilevate in corrispondenza dell'area del display dove sono collocati i LED che, oltre da attuatori, funzionano come sensori di luce inviando segnali di input alla scheda.
Il (micro) servomotore impiegato, riesce a ruotare il suo albero motore in un intervallo da 0° a 180°. All’interno ha un circuito integrato che acquisisce l’ampiezza dell’angolo di rotazione dalla scheda e fa muovere, attraverso una serie di ingranaggi, il piccolo asse su cui si fissano i perni in dotazione al dispositivo. Il collegamento alla scheda si effettua con tre cavi: segnale dati (al pin 0 di micro:bit), alimentazione positivo (al pin 3V), messa a terra (al pin GND). La maggior parte dei servomotori in commercio necessita di una tensione di lavoro di 4,8V , quindi si suggerisce di collegare i cavi di alimentazione ad una batteria accessoria.
Per la programmazione ritroviamo la stessa struttura logica vista nella prima parte: il superamento della stessa soglia di intensità di luce mantiene fermo l'asse del servomotore mentre per valori inferiori l'asse inizia ad oscillare tra due posizioni fisse (nell'esempio in figura 60° e 120°).