Problema comunicazione con Arduino: avrdude: stk500v2_ReceiveMessage(): timeout

Recentemente mi è capitato di non riuscire più a caricare sketch su un Arduino UNO da USB, ricevendo questa serie di errori:

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

A nulla sono valsi tentativi di reset e varie guide trovate in rete, fino a quando sono riuscito a ripristinarlo seguendo la procedura basato sull’utilizzo di Arduino come ISP, ecco come:

innanzitutto bisogna disporre di 2 schede ARDUINO UNO, collegate come in figura:

Immagine originale: Arduino.cc

Dopodichè carichiamo l’IDE di Arduino (nel mio caso la versione per MacOS), selezioniamo dagli “ESEMPI” lo schema “ARDUINO ISP“:

Compiliamo e lo carichiamo sulla board.

Ora selezioniamo dal menu “STRUMENTI” -> “PROGRAMMATORE” -> “ARDUINO as ISP“:

Poi procediamo con “STRUMENTI” -> “SCRIVI IL BOOTLOADER

Se tutto è andato per il verso giusto, scollegate il tutto e provate a caricare uno sketch sulla vostra Arduino UNO (è sufficiente il semplice e classico “Blink”).

Per ulteriori approfondimenti fate riferimento a questo tutorial: https://www.arduino.cc/en/Tutorial/ArduinoISP

Problema Arduino YUN: l’interfaccia web non si carica

Può capitare che con la scheda Arduino YUN si ottenga un errore tentando di accedere al web panel all’indirizzo arduino.local o 192.168.140.1:

/usr/lib/lua/luci/template.lua:81: Failed to load template 'linino/set_password'.
Error while parsing template '/usr/lib/lua/luci/view/linino/set_password.htm':
No such file or directory
stack traceback:
 [C]: in function 'error'
 /usr/lib/lua/luci/template.lua:81: in function '__init__'
 /usr/lib/lua/luci/util.lua:68: in function 'Template'
 /usr/lib/lua/luci/template.lua:50: in function 'render'
 /usr/lib/lua/luci/controller/linino/index.lua:182: in function 'authen'
 /usr/lib/lua/luci/dispatcher.lua:370: in function 'dispatch'
 /usr/lib/lua/luci/dispatcher.lua:195: in function

Non disperate, dopo aver fatto gli opportuni reset si risolve cancellando completamente la cache del browser, provate ad accedere e dovrebbe ricomparire il web panel:

Collegare Arduino a un canale Telegram con IFTTT

Spesso Telegram viene usato per far comunicare Arduino con dei canali creati appositamente per raccogliere o divulgare dati. La libreria Telegram Bot tuttavia al momento funziona solo sull’Arduino MKR1000. Per poter sfruttare le potenzialità di Telegram usando altre versioni di Arduino può essere utile il sito IFTTT, che mette a disposizione una semplice interfaccia per interagire con un canale (o gruppo) Telegram.

Se non conoscete IFTTT partite dalla mia guida veloce per collegare Arduino al Maker Channel prima di proseguire.

Prepariamo innanzitutto Telegram, collegandoci al bot IFTTT (@IFTTT). Nella mia guida è stato utilizzato un canale Telegram pubblico chiamato @waterwatch.

Nel canale dove volete pubblicare, aggiungete agli AMMINISTRATORI il Bot IFTTT:

Ora tornate sul bot e digitate /connect_channel:

Digitate a questo punto il nome del canale o il link al canale:

Ora il canale è connesso!

Andiamo su IFTTT e completiamo il nostro Applet/Recipe con Telegram:

Come azione scegliamo SEND MESSAGE:

Dopodichè, nella lista dei canali collegabili comparirà il vostro:

Personalizzate il messaggio, e vedrete comparire sul canale i messaggi sul Canale Telegram scelto ogni volta che Arduino invia una Web Request al Maker Channel:

Buon divertimento!