Cosa sono in realtà Arduino, NodeMcu, WeMos, RFduino, e simili?

Sono semplicemente dei brand, ovvero dei marchi di linee di prodotto camuffati da “open hardware” e vestiti di “open software”!

Prendiamo come esempio il precursore di questa discutibile pratica commerciale:

Il sistema di sviluppo Arduino è nato (nel 2005) dalla raccolta di una serie di software libero e gratuito (per l’IDE usarono una versione modificata di Processing esistente dal lontano 2001 ..molto prima di Arduino). Fu così che il ‘geniale‘ gruppo di Ivrea si ‘inventò‘ un sistema di sviluppo che, sfruttando l’esistente (GCC, AVR Libc, Processing, Wiring, …), disegnò una semplice schedina da sviluppo con un piccolo e noto processore già in commercio (ATmega168) prodotto dalla Atmel (oggi assorbita dalla Microchip), che si differenziava dalle tante esistenti, SOLO per tre cose:

  1. Era programmabile in modo ‘semplificato’ (anche troppo..) tramite l’adattamento di software GRATUITO (di fatto fornito dall’ignara comunità free di tutto i pianeta!);
  2. il circuito stampato aveva una particolarità hardware nella disposizione dei piedini di I/O che usciva da qualsiasi standard;
  3. un prezzo di vendita ‘abbordabile’.

Immagino che in molti, leggendo queste mie parole, esclameranno:

– e cosa c’è di sbagliato in tutto questo?

Apparentemente nulla, se non che il nome e il punto 2 sopra citato, ponevano dei limiti chiari alla proprietà e diffusione ‘open’ del progetto!

Mi spiego meglio: sul nome c’è poco da dire, visto che per poter produrre qualcosa usando il nome ‘Arduino’ occorre la loro ‘licenza’ (e se vi leggete un po di articoli che parlano delle diatribe legali tra i vari fondatori vi chiarite meglio le idee..), mentre per l’hardware si deve considerare la presenza di un ‘astuto‘ particolare che mostra la premeditazione nel tentare sin da subito una ‘fidelizzazione‘ dei ‘clienti‘ che acquistavano la schedina (come nella migliore tradizione del moderno marketing per fare il maggior profitto possibile).

Come?

Semplice: nel disegnare il circuito stampato già dal primo Arduino è stato commesso un ‘errore’ (se così vogliamo chiamarlo) nella disposizione di 2 connettori, (vedi immagine) tra gli ‘Ingressi/Uscite Elettriche’ e gli ‘Ingressi analogici’.

Di fatto, la spaziatura tra i connettori non rispetta il passo standard (2,54mm), così che se si vuole usare un normale connettore in linea o una basetta ‘millefori’ per la prototipizzazione il passo non corrisponde, così è necessario disegnare un CS con quelle caratteristiche, oppure acquistare da loro uno ‘shield’ originale per Arduino, e così, al tempo, hanno spiazzato tutti i produttori di schede in commercio, proteggendo il loro il ‘brand’ per fidelizzare il cliente.

Ed è servito allo scopo, almeno sino a quando l’hardware Arduino non si è diffuso al punto da diventare un nuovo ‘standard’ (e ora si possono permettere di parlare di ‘originali’ e di ‘cloni’ come se esistessero differenze sostanziali, che invece non esistono…).

Ora che abbiamo ben chiaro cosa sia in realtà Arduino, possiamo facilmente comprendere come la ‘concorrenza’ per sopravvivere (i vari produttori di board hardware nel mondo) siano stati costretti a correre ai ripari, adottando lo stesso metodo tecnico commerciale (molto discutibile) di sfruttamento illecito del mondo ‘open’, ormai etichettato come ‘Arduino’, sfruttandone la notorietà e diffusione (e dove possibile anche il nome, storpiandolo in mille declinazioni: Freeduino, DFRduino, Seeduino, …)

Così, se per esempio vogliamo adottare il nuovo processore ESP8266, troviamo NodeMcu che produce schedine con propria piedinatura NON compatibili con altre, e WeMos fa altrettanto (sfruttando appieno il software distrinuito da Arduino), come si evince chiaramente dal pinout del suo prodotto più noto:

dove sono indicati i pin compatibili con Arduino, ma in un ordine diverso da tutti i moduli ESP disponibili sul mercato (pur montando lo stesso processore della Espressif)

Oppure esistono casi ‘estremi’ come RFduino (che usa processori BLE della Nordic), che ha addirittura una parte del firmware proprietario pur sfruttando la piattaforma ‘open’ assemblata da Arduino.

In conclusione: considerare gli ideatori di Arduino (Banzi in primis) come degli Steve Jobs è decisamente esagerato, fuorviante e riduttivo nei confronti dell’intera comunità che inventa, mantiene e aggiorna l’Open nel mondo. E confondere ed etichettare un microprocessore prodotto da una specifica marca (Atmel, Espressif, Nordic, ecc) con i brand che sfruttano questo mercato, non è solo fuorviante, ma anche un ‘aiuto’ a questo assurdo mercato che fa profitto sul lavoro di migliaia di volenterosi programmatori del mondo Open, che però di tutto questo non vedono MAI un centesimo!

 

Di tutto di piùGeneraleMPUCosa sono in realtà Arduino, NodeMcu, WeMos, RFduino, e simili? Sono semplicemente dei brand, ovvero dei marchi di linee di prodotto camuffati da 'open hardware' e vestiti di 'open software'! Prendiamo come esempio il precursore di questa discutibile pratica commerciale: Il sistema di sviluppo Arduino è nato (nel 2005) dalla raccolta di una serie...progettare in elettronica