zeroterm screenshot

ZeroTerm

Rilasciata la nuova versione 1.1

BUG noto: i bytes con valore 0 non vengono visualizzati.

ZeroTerm è un programma tester per la comunicazione con porte seriali (non emula un terminale). Nasce dalla mia esigenza di avere a disposizione un programmino semplice come il vecchio HyperTerminal (ormai non più a disposizione su windows) ma che includesse anche altre caratteristiche utili, tra cui:

  • Possibilità di inviare dati a pacchetto scrivendoli sia in formato ASCII che in formato numerico esadecimale o decimale. Inviando il pacchetto scritto in formato esadecimale o decimale è possibile separare i bytes con un separatore a scelta (spazio, virgola, trattino/segno meno,punto,simbolo di percentuale) purchè i bytes siano separati tutti dallo stesso separatore, nonchè aggiungere automaticamente il Line Feed, il Carriage Return, entrambi o nessuno
  • Possibilità di visualizzare l’output da seriale sia in classico formato ASCII che come esadecimale o decimale
  • Nella visualizzazione ASCII è possibile mostrare i caratteri non stampabili (ovvero aventi codice ASCII compreso tra 0 e 31) come {{codice ascii in decimale}}
  • Vengono elencate solo le porte seriali disponibili e è possibile eseguire un refresh delle porte seriali nel caso in cui una porta seriale/USB venga collegata dopo l’avvio del programma
  • Possibilità di salvare tutti i parametri di configurazione seriale/terminale in un file a parte in modo da poter lavorare con diversi dispositivi e caricare di volta in volta soltanto il file di configurazione con tutti i parametri preferiti specifici per il dispositivo che stiamo analizzando
  • L’echo viene evidenziato con un colore diverso per distinguere i dati da noi immessi da quelli ricevuti
  • Possibilità di ripulire la finestra del terminale
  • Possibilità di andare a capo in automatico dopo un tot di caratteri in modo da visualizzare l’output formattato (utile nel caso in cui i dati ricevuti abbiano tutti la stessa lunghezza)
  • Possibilità di cliccare sugli URL eventualmente mostrati

Gestione del ritorno a capo

Evidenzio questo comportamento di ZeroTerm perchè diverso rispetto ad HyperTerminal: i caratteri di Line Feed (ascii 10) e Carriage Return (ascii 13) o entrambi ricevuti in sequenza senza essere separati da nessun carattere, nella visualizzazione in formato ASCII in ZeroTerm vengono sempre mostrati come ritorno a capo+nuova linea : ovvero il testo ricevuto va sempre a capo partendo dall’ inizio della nuova riga. Se i due caratteri LF e CR sono separati anche da un solo carattere, i ritorni a capo saranno quindi due.

In HyperTerminal il carattere ascii 10 da solo veniva reso come nuova linea (il testo ricevuto continuava sulla riga successiva ma non c’era il ritorno carrello, per cui il nuovo testo compariva appena sotto l’ultimo carattere della riga precedente: Line Feed vuol dire proprio questo), mentre il carattere ascii 13 da solo veniva mostrato come ritorno carrello (il nuovo testo ricevuto sovrascriveva la riga precedente: è questo il vero senso del Carriage Return). Sotto i sistemi Windows il ritorno a capo “completo” si ottiene difatti con i caratteri 10+13, su Linux/MacOs (dopo la versione 9) il ritorno a capo “completo” si ottiene unicamente con il Line Feed, mentre su MacOs fino alla 9 incluse si ottiene unicamente con il Carriage Return. ZeroTerm quindi non fa distinzione: sia con LF, che con CR presi singolarmente, che con CR+LF, il cursore torna sempre all’inizio della linea successiva. E’ possibile distinguere tra LF e CR utilizzando la visualizzazione ASCII con abilitazione dei caratteri non stampabili, oppure Esadecimale o Decimale.

La pressione del pulsante invio sulla finestra terminale invia sulla seriale (da computer verso dispositivo collegato) il solo carattere 13 (CR).

Requisiti

ZeroTerm è scritto in Visual Basic.NET e richiede di avere installato il .NET Framework 4.5. Personalmente l’ho testato su svariati PC con Windows XP, Windows 7 32 Bit, Windows 7 64 bit e Windows 8.1 e ha funzionato benone sia con porte seriali native che con porte seriali emulate su USB con vari Chip.

Download

Nuova versione

Nella nuova versione sono passato dal .NET Framework 3.5 al 4.5 dal momento che molti utenti avevano difficoltà ad installare il vecchio framework sulle nuove macchine con Windows 10. In più, grazie alle segnalazioni di molti utenti, ho corretto alcuni bug:

  • bytes da 128 a 255 (0x80 – 0xFF) visualizzati sempre com 63 (0x3F).
  • echo non funzionante in alcuni casi

Se incontrate altri problemi segnalatemelo. Cercherò di indagare su questo problema e di risolverlo. 

Software alternativi

In caso abbiate problemi con ZeroTerm, potete provare ad utilizzare un software alternativo tra questi:

Se questa pagina ti è piaciuta o ti è stata utile, potresti dedicare un minuto a leggere quest'altra pagina, dove ho elencato alcune cose che potrebbero farmi contento? Grazie :)