|  |  | 

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

  •  |  | 

    Segger emFloat

    Sviluppato e perfezionato per oltre due decenni, emFloat è un componente altamente ottimizzato di emRun (la libreria runtime C di SEGGER) ed è parte integrante di SEGGER Embedded Studio. Progettato per essere “plug-and-play”, emFloat può sostituire la libreria a virgola mobile predefinita, offrendo prestazioni superiori con meno codice. Estremamente veloce e compatto, garantisce prestazioni simili…

  •  | 

    Segger J-Link OB

    Il J-Link OB (dove OB sta per: on-board) è essenzialmente un J-Link in un chip singolo basato su microcontrollore che viene integrato direttamente sulla scheda di valutazione. Arricchisce il design di qualsiasi scheda target con funzionalità standard, come il supporto al debug, il caricamento nella memoria Flash e il VCOM, senza aggiungere costi extra. Il…

  •  |  |  | 

    Segger emUSB Device

    Panoramica emUSB-Device è un software per dispositivi USB ad alte prestazioni, progettato specificamente per i sistemi embedded. Scritto in codice ANSI C, consente una facile integrazione della funzionalità USB in qualsiasi sistema embedded. Vengono fornite molteplici classi di dispositivi standard, che permettono al sistema di comportarsi come un dispositivo USB standard e garantiscono la comunicazione…

  •  |  | 

    Segger embOS

    Panoramica embOS è una famiglia di sistemi operativi in tempo reale (RTOS) progettata come base per lo sviluppo di applicazioni embedded. Giunto al suo quarto decennio di utilizzo e perfezionamento continuo, embOS offre l’affidabilità e le prestazioni che sostengono il firmware di ogni SEGGER Flasher, J-Link e J-Trace. Distribuito in miliardi di dispositivi in un’ampia…

  •  |  | 

    Segger SystemView

    Panoramica SystemView è uno strumento di testing embedded progettato per analizzare e profilare il comportamento dei sistemi real-time. Offre approfondimenti dettagliati sul comportamento a runtime, superando le capacità dei debugger tradizionali. Ideale per sistemi complessi con thread multipli e interrupt, SystemView aiuta gli sviluppatori di software embedded a garantire che i propri sistemi funzionino come…