Disconnected |
V zásadě to lze udělat jako webovou aplikaci čistě v javascriptu. Musí se tomu pomoct WebSocket serverem, který zprostředkuje komunikaci se sériovým portem. Chrome sice asi má nějakou podporu sériového portu přímo v browseru, ale bůhví jak to funguje. Přes webové sokety lze data na obě strany honit jako JSON, je to celkem rychlé a snese to i dlouhé pakety. Přesto nestíhá zobrazovat v řádu ms, možná by stálo za to udělat to zobrazování ve smyčce událostí např. pomocí window.requestAnimationFrame(). Je ale možné, že problém je už v převodu těch dat z JSON do objektu.
Zobrazování probíhá tak, že pomocné objekty jako markery, text atd. se vykreslí do pomocného canvasu (obrázku), ten se pak vykreslí na obrazovku a přes něj se plácnou jen čáry kanálů. Snad je to tak rychlejší. Není doděláno zoomování časové základny, bylo by to složité a nepovažuji to za důležité. Stejně tak není korektní změna velikosti okna, ale stačí dát refresh.