|  | 

Segger emVNC


emVNC-Server (Virtual Network Computing) consente di visualizzare il display e gestire un sistema embedded tramite USB (utilizzando emUSB-Device di SEGGER), TCP/IP o qualsiasi altro livello di trasporto di tipo socket.

emVNC è stato progettato specificamente per i sistemi embedded. Fornisce sia il modulo server per il sistema target, sia l’applicazione client per i computer. L’applicazione lato PC è multi-piattaforma (disponibile per Linux, macOS e Windows) ed è scaricabile gratuitamente.

Caratteristiche principali

  • Consente display remoti e virtuali anche per sistemi “headless” (senza monitor).
  • Supporta qualsiasi canale di comunicazione (USB, TCP/IP e altre interfacce socket).
  • Implementazione server VNC/RFB progettata appositamente per sistemi embedded.
  • Requisiti di memoria estremamente ridotti.
  • Integrazione flessibile con qualsiasi libreria grafica (come emWin) o di comunicazione.
  • Funziona con qualsiasi display fisico o virtuale.
  • Funzionalità di protocollo standard per l’autenticazione utente e riduzione del traffico di rete.
  • Client VNC gratuito disponibile con supporto per VNC over USB.
  • Nessun hardware aggiuntivo richiesto.

Display virtuale

Per un sistema embedded dotato di schermo, il display può essere replicato (mirroring) sul computer remoto. Per i sistemi senza schermo, è possibile visualizzare il contenuto di un display virtuale. Se necessario, può anche essere utilizzato come console/terminale solo testo.


Connessione

VNC su qualsiasi supporto

Grazie alla sua interfaccia di programmazione astratta, il protocollo VNC di emVNC-Server può essere trasferito tramite qualsiasi livello di trasporto simile a un socket. Supporta TCP/IP tramite emNet e VNC su USB tramite emUSB-Device; altri protocolli possono essere aggiunti facilmente.

Connessione via USB

La connessione via USB è estremamente economica e apre una vasta gamma di opzioni. Poiché l’USB è già ampiamente diffuso, emVNC può essere implementato semplicemente collegandosi a un’interfaccia esistente. Non ci sono costi hardware extra e la memoria richiesta (Flash e RAM) è talmente esigua da permetterne l’uso anche in piccoli sistemi embedded.

RFB e Indipendenza dalla GUI

La connessione avviene tramite il protocollo standard Remote Framebuffer (RFB), che permette l’uso di altri client VNC su PC, tablet o smartphone. emVNC-Server è indipendente dalla GUI e funziona perfettamente con librerie grafiche come emWin. L’uso con emWin è caldamente raccomandato per massimizzare prestazioni ed efficienza delle risorse.

Client supportati

Il server supporta tutti i client VNC standard, tra cui:

  • SEGGER VNC Client
  • gvncviewer, SSVNC, Remmina
  • RealVNC, TightVNC

Casi d’uso

  • Supporto remoto per manutenzione: Consente di regolare e manutenere sistemi (es. impianti di riscaldamento) da remoto, leggendo log e risolvendo errori senza inviare tecnici sul posto.
  • Configurazione di dispositivi headless: Un dispositivo come una stampante potrebbe eliminare il display fisico per ridurre i costi. La configurazione iniziale e le interazioni successive avvengono via USB o Wi-Fi tramite l’interfaccia VNC su un altro dispositivo (PC o smartphone).

Requisiti di sistema

  • Multi-tasking: Il server VNC deve girare come thread separato. È quindi necessario un RTOS (si consiglia embOS).
  • Trasporto: Richiede uno stack IP (come emNet) per TCP/IP o un software per dispositivi USB (come emUSB-Device) per la connessione USB.

Occupazione di memoria (Footprint)

L’utilizzo di RAM del solo emVNC-Server parte da meno di 400 byte. L’occupazione totale dipende principalmente dal frame buffer (dimensioni e profondità colore). Se si usa una libreria come emWin, emVNC può accedere direttamente al suo frame buffer senza duplicarlo.

ComponenteROMRAMNote
emVNC-Server6.3 KB0.3 KB+ buffer di trasferimento (configurabile da 64 byte) + stack USB o TCP/IP

Esempio di calcolo Frame Buffer:

  • Display 320×240 a 32 bit: circa 300 KB.
  • Display monocromatico 100×32: solo 400 byte.

Licenze

emVNC è disponibile sotto vari modelli di licenza per software embedded e viene fornito in pacchetti di codice sorgente.

  • Pagamento unico: Nessuna royalty, nessun abbonamento.
  • Supporto incluso: 6 mesi di aggiornamenti e assistenza da parte degli esperti SEGGER.
  • Modelli: Licenza per singolo prodotto o per singolo sviluppatore.

Articoli simili