`tinydisplay` is a tiny display for TinyGo development.

tinydisplay

tinydisplay is a tiny display for TinyGo development.
tinydisplay works on windows, macOS and linux.

Usage

First, run ./cmd/tinydisplay.
Next, control the display created by NewClient().
Some examples can be found in ./examples.

package main

import (
	"image/color"
	"time"

	"github.com/sago35/tinydisplay"
)

var (
	black = color.RGBA{0, 0, 0, 255}
	white = color.RGBA{255, 255, 255, 255}
)

func main() {
	display, _ := tinydisplay.NewClient("127.0.0.1", 9812, 320, 240)
	display.FillScreen(black)

	for x := int16(0); x < 100; x++ {
		display.SetPixel(x, x, white)
		display.SetPixel(x, 100-x-1, white)
	}
	for {
		time.Sleep(time.Hour)
	}
}

Server

$ go build ./cmd/tinydisplay

$ ./tinydisplay.exe
tcp:127.0.0.1:9812
320x240

or

$ ./tinydisplay.exe --address localhost --port 3000 --size 640x480
tcp:localhost:3000
640x480

Client

$ go run ./examples/basic

$ go run ./examples/displays

$ go run ./examples/pyportal_boing

$ go run ./examples/tinydraw

$ go run ./examples/unicode_font

Author

sago35 - [email protected]

Similar Resources

tinygo-used-files is a CLI tool that lists only the files to be built as specified by buildtag.

tinygo-used-files is a CLI tool that lists only the files to be built as specified by buildtag.

Feb 6, 2022

Go/TinyGo driver for Lumissil IS31FL3731 matrix LED driver

Go/TinyGo driver for Lumissil IS31FL3731 matrix LED driver

IS31FL3731 Go/TinyGo driver for Lumissil IS31FL3731 matrix LED driver. PR to include this driver to the official TinyGo driver list What's implemented

Feb 6, 2022

A reimplementation of the TinyGo drivers package for communicating with multiples of the same (supported) devices on one individual I2C bus.

tinygo-multi-i2c A reimplementation of the TinyGo drivers package for communicating with multiples of the same (supported) devices on one individual I

Mar 10, 2022

Suppress commit to master and development, merge branch to master and development

git-extension masterと名前のつくブランチをマージするのは禁止 masterとdevelopmentブランチに直接commitやmergeするのは禁止 masterブランチを親に新規ブランチを作成するのは禁止 どうしてもmasterやdevelopmentブランチに操作をしたい時は

Nov 8, 2021

netstat-nat - Display NAT entries on Linux systems

netstat-nat This is a reimplementation of the netstat-nat tool, written entirely in Go. It uses the same command line flags and almost the same output

Oct 26, 2021

Golang beautify data display for Humans

Golang beautify data display for Humans English 简体中文 Install # Stable version go get -u -v gopkg.in/ffmt.v1 # Latest version go get -u -v github.com/

Dec 22, 2022

Ostent is a server tool to collect, display and report system metrics.

Ostent is a server tool to collect, display and report system metrics.

Ostent Ostent collects metrics to display and report to InfluxDB, Graphite, Librato. The interactive display UI (demo): System metrics collected and r

Sep 27, 2022

Display a message in morse code on your capslock LED, keyboard backlight or using your screen brightness!

Display a message in morse code on your capslock LED, keyboard backlight or using your screen brightness!

halp halp is a command line utility that lets you display messages in morse code on your capslock LED, keyboard backlight (if you have it) or using yo

Jan 26, 2022

Display last GitLab project git commit. Page is optimized for an e-paper device.

Display last GitLab project git commit. Page is optimized for an e-paper device.

git-on-epaper A gitlab webhook for push notifications on a project. The webhook serves a HTML that shows the last push on the project with the followi

Dec 12, 2022

Golang beautify data display for Humans

Golang beautify data display for Humans English 简体中文 Usage Examples package main import ( ffmt "gopkg.in/ffmt.v1" ) func main() { example() } typ

Dec 22, 2022

GopherSay allow you to display a message said by a cute random Gopher.

GopherSay About Welcome in GopherSay! GopherSay is inspired by Cowsay program. GopherSay allow you to display a message said by a cute random Gopher.

Nov 23, 2022

A golang CLI to display various stats about Hockey teams and their players

A golang CLI to display various stats about Hockey teams and their players

Oct 26, 2021

A simple Go utility to display track information from, and send commands to, spotifyd from Tiling Window Managers like Sway and i3

A simple Go utility to display track information from, and send commands to, spotifyd from Tiling Window Managers like Sway and i3

Untitled Spotifyd Controller A simple Go utility to display track information from, and send commands to, spotifyd from Tiling Window Managers like Sw

Mar 8, 2022

A CLI tool to display all dependencies or dependents of an object in a Kubernetes cluster.

kube-lineage A CLI tool to display all dependencies or dependents of an object in a Kubernetes cluster. Usage $ kube-lineage clusterrole system:metric

Jan 5, 2023

A go driver for the adafruit I2C 7 Segment display

A go driver for the adafruit I2C 7 Segment display

Nov 21, 2021

Frontend to display data from huskyCI analyses

Frontend to display data from huskyCI analyses

How does it work? The main goal of this project is to provide a front-end for every huskyCI user to check the stats of the analyses done. If you don't

Dec 21, 2022

gh cli extension to display a dashboard of PRs - configurable with a beautiful UI.

gh cli extension to display a dashboard of PRs - configurable with a beautiful UI.

gh-prs A gh cli extension to display a dashboard with pull requests by filters you care about. Installation Installation requires a minimum version (2

Jan 2, 2023

Epaper - Driver and example program for tri-color 7.5" 880x528 waveshare eink display

epaper Driver and example program for tri-color 7.5" 880x528 waveshare eink display It's a work in progress, which lacks a lot of safeguarding (meanin

Jan 5, 2022

A CLI to adjust display brightness using xrandr. Made because Ubuntu desktop was baking my eyeballs in low light.

bright This is a simple program to set monitor brightness using xrandr. I made this because Ubuntu does not come with a built-in way to change monitor

Jan 15, 2022
Comments
  • Fix gob.Register

    Fix gob.Register

    This PR corrects the following errors

    $ go run ./examples/basic/
    panic: gob: name not registered for interface: "*image.RGBA"
    
    goroutine 35 [running]:
    github.com/sago35/tinydisplay.(*Client).update(0x0?)
            /home/sago35/dev/src/github.com/sago35/tinydisplay/client.go:144 +0xd3
    github.com/sago35/tinydisplay.(*Client).Tick(0xc000200300)
            /home/sago35/dev/src/github.com/sago35/tinydisplay/client.go:48 +0x5b
    created by github.com/sago35/tinydisplay.NewClient
            /home/sago35/dev/src/github.com/sago35/tinydisplay/client.go:41 +0x1a5
    exit status 2
    
The note-tinygo Go library for communicating with Blues Wireless Notecard via serial or I²C

Blues Wireless The note-tinygo Go library for communicating with Blues Wireless Notecard via serial or I²C. This library allows you to control a Notec

Nov 29, 2021
Tiny, blazing fast WebAssembly compute

Sat, the tiny WebAssembly compute module Sat (as in satellite) is an experiment, and isn't ready for production use. Please try it out and give feedba

Jan 5, 2023
TinyGo drivers for sensors and other devices that use I2C, SPI, GPIO, ADC, and UART interfaces.

TinyGo Drivers This package provides a collection of hardware drivers for devices such as sensors and displays that can be used together with TinyGo.

Jan 8, 2023
Cross-platform Bluetooth API for Go and TinyGo.
Cross-platform Bluetooth API for Go and TinyGo.

Go Bluetooth is a cross-platform package for using Bluetooth Low Energy hardware from the Go programming language.

Jan 6, 2023
Toy Shader in TinyGo for Game Boy Advance.
Toy Shader in TinyGo for Game Boy Advance.

toyshader.gba Toy Shader in TinyGo for Game Boy Advance. Releases v0.2: 80x80 screen with 3x2 pixel block version for drawing speed. v0.1: 240x160 pix

Oct 29, 2022
2048 using the fantasy console WASM-4 and TinyGo
2048 using the fantasy console WASM-4 and TinyGo

w4-2048 ?? Play ?? With music ?? ?? With sound and music Game logic initially based on https://github.com/chhabraamit/2048 Controls Arrow keys X Z Res

Jul 9, 2022
TinyGo attitude estimation simulation applet.

tiny-ahrsim TinyGo attitude estimation simulation applet. Instructions Requirements Go installed (golang.org) git installed (git-scm.com) TinyGo insta

Oct 26, 2022
software keyboard for TinyGo
software keyboard for TinyGo

tinykb tinykb is a software keyboard for TinyGo. To use tinykb, it is necessary to implement the driver.Displayer interface. It is still an alpha vers

Jan 14, 2022
TinyGo Hands-on-From L Chika to Application with Go
TinyGo Hands-on-From L Chika to Application with Go

TinyGo Hands-on-From L Chika to Application with Go

Nov 10, 2022
The note-tinygo Go library for communicating with Blues Wireless Notecard via serial or I²C

Blues Wireless The note-tinygo Go library for communicating with Blues Wireless Notecard via serial or I²C. This library allows you to control a Notec

Nov 29, 2021