MKS WIFI per Makerbase Robin: PCB e come compilare e caricare il firmware – 2

Spread the love

Ho acquistato un FlyingBear Ghost 5 con modulo WiFi integrato, ma scopro che non c’è l’interfaccia web. Non so perché non possano aggiungere un’interfaccia utente di base. Poi sono andato a vedere l’interfaccia web delle schede di fascia alta della Makerbase e ho capito che era meglio che non l’avessero sviluppata.

La mia soluzione è stata modificare il firmware per supportare il Web Socket e sviluppare l’interfaccia Web. Questa funzione è compatibile con tutte le schede Makerbase che dispongono di un modulo WiFi MKS.

Makerbase modulo MKS wifi: compilazione upload flash e pcb
Makerbase modulo MKS wifi: compilazione upload flash e pcb

Il risultato dell’interfaccia Web di BeePrint è in questa schermata.

MKS WiFi BeePrint interface of my FlyingBear Ghost 5
MKS WiFi BeePrint interface of my FlyingBear Ghost 5

Ho anche deciso di spiegare tutte le fasi dello sviluppo del progetto ed in quest’articolo qui vorrei esporre l’infrastruttura hardware della scheda MKS WiFi che si interfaccia con la Makerbase Robin Nano.

Qui vorrei spiegare cos’è il modulo WiFi MKS come programmare e come collegare un dispositivo che può essere utilizzato come alternativa al modulo WiFi.

Come programmarlo da zero

Puoi trovare il codice sorgente originale sul repository github Makerbase , ma ricorda che non aggiornano il core esp8266, quindi devi usare la versione 2.4.2, puoi fare riferimento alla mia versione per lo stesso codice portato a 2.7.4 , su master puoi trovare l’ultima versione con cartella dati e interfaccia utente web.

esp12

esp12 E pinout low resolution
esp12 E pinout low resolution

Lo schema di connessione è lo stesso dell’articolo “esp12 esp07 (esp8266): flash, piedinatura, spec e config dell’IDE Arduino“, lo inserisco qui, ma per capire meglio il cablaggio fare riferimento all’articolo.

esp12 flashing module connection breadboard
esp12 flashing module connection breadboard

Per fare il primo test utilizzo l’adattatore stampato in 3D e la relativa scheda di programmazione postata nell’articolo precedente.

Test env for MKS WiFi with esp12 E programming on Robin Nano disassembled
Test env for MKS WiFi with esp12 E programming on Robin Nano disassembled

Ma puoi semplicemente stampare l’adattatore e utilizzare una breadboard

Socket for esp12 and esp07 

Socket for esp12 and esp07 with V base 

Qui l’adattatore su breadboard.

Programming circuit on breadboard with adapter for esp12
Programming circuit on breadboard with adapter for esp12

I parametri di programmazione sul tuo Arduino IDE per esp12 sono:

  • BoardNodeMCU 1.0 (ESP-12E Module)
  • Builtin Led2
  • Upload Speed921600 (115200 è più sicuro)
  • CPU Frequency: “160MHz” (80MHZ è più sicuro)
  • Flash Size4MB
  • SPIFFS: 3Mb
esp12-E Arduino IDE configuration
esp12-E Arduino IDE configuration

Ma puoi usare una normale scheda NodeMCU come MKS WiFi.

Programma modulo WiFi MKS senza OTA

Il modulo WiFi MKS è più semplice da collegare e programmare da zero, per spiegarmi meglio riproduco il PCB.

PCB modulo WiFi MKS

La scheda è abbastanza semplice da creare.

MKS WiFi original pcb
MKS WiFi original pcb

You can directly order 10 pcb for 5$ here on PCBWay
PCB from PCBWay

Here the esp12 and esp07 that you can use with Aliexpress esp-12 - Aliexpress esp-07

Quindi la posizione dei pin è lineare e lo schema di connessione diventa molto semplice.

MKS WiFi esp12 programming module connection on BreadBoard
MKS WiFi esp12 programming module connection on BreadBoard

Questa è la modalità GPIO per gestire lo stato della scheda.

ModeGPIO15GPIO0GPIO2
UARTLowLowHigh
Flash BootLowHighHigh

E devi eseguire queste operazioni per entrare in modalità programma:

  • Tieni premuto il pulsante FLASH;
  • Premere e rilasciare il pulsante RST;
  • Rilasciare il pulsante FLASH.

Quando compilo il progetto per la prima volta la mia versione delle librerie è

  • ArduinoJson@6.18.4
  • ESP8266WiFi@1.0
  • ESP8266mDNS@1.2
  • EEPROM@1.0
  • ESP8266HTTPClient@1.2

Carica file system

Se selezioni l’ultima versione, devi caricare il filesystem anche con l’interfaccia BeePrint.

È possibile caricare i dati del filesystem con il metodo classico tramite plugin, fare riferimento al relativo tutorial “WeMos D1 mini (esp8266): SPIFFS FileSystem integrato“.

Controlla se la directory data esiste nella cartella degli sketch (con alcuni file) e usa il plugin per caricare.

ESP8266 Sketch Data Upload Menu

NodeMCU

NodeMcu v2 pinout low resolution
NodeMcu v2 pinout low resolution

Con NodeMCU È tutto più semplice, se il processo di caricamento non si avvia disconnettere temporaneamente l’esp dalla scheda MKS Robin.

You can find v2 and v3 version of NodeMCU here on WeMos D1 mini - NodeMCU V2 V2.1 V3 - esp01 - esp01 programmer

Per i parametri controllare il paragrafo precedente, sono gli stessi dell’esp12.

Usa la pagina web OTA per caricare il firmware originale

Un metodo alternativo è generare il file bin, aprire prima il codice sorgente sul tuo IDE Arduino, compilarlo per controllare gli errori e quindi selezionare Sketch -> Export compiled Binary,

esp8266 esp32 Arduino Export compiled binary IDE menu
esp8266 esp32 Arduino Export compiled binary IDE menu

quindi facendo clic su Sketch -> Show Sketch Folder puoi trovare il file bin. Qui “esp8266: flash del firmware binario (.bin) compilato e firmato” puoi ottenere maggiori informazioni sul firmare compilato.

Ora possiamo usare la pagina web che puoi trovare alla radice dell’IP assegnato a MKS WiFi.

MKS WiFi firmware update page
MKS WiFi firmware update page

Ricorda che il nome dei file deve essere:

  • MksWifi.bin: per il firmware;
  • MksWifi_WebView.bin: per il filesystem.

Grazie

  1. MKS WIFI per Makerbase Robin: schede e come collegare un esp12 o NodeMCU
  2. MKS WIFI per Makerbase Robin: PCB e come compilare e caricare il firmware
  3. MKS WIFI per Makerbase Robin: protocollo di comunicazione e plugin Cura
  4. MKS WIFI per Makerbase Robin: aggiornamento del firmware e nuova funzionalità Web Socket
  5. MKS WIFI per Makerbase Robin: interfaccia web BeePrint con fotocamera su Flying Bear Ghost
Tutto il codice è rilasciato sotto licenza Creative Commons License

Cummunity italiana


Spread the love

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *