0% found this document useful (0 votes)
315 views12 pages

Let's Go Tiny With TinyGo

The document discusses using the Go programming language for embedded software applications. It introduces TinyGo, an open source project that compiles Go code to run on microcontrollers by using LLVM. TinyGo allows developing embedded software in Go and running it on microcontroller boards like the BBC micro:bit and Arduino Uno. A sample greeting program is shown and the TinyGo online playground is mentioned, though the speaker notes they were facing problems running programs on the simulator.

Uploaded by

Dimas Prawira
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
315 views12 pages

Let's Go Tiny With TinyGo

The document discusses using the Go programming language for embedded software applications. It introduces TinyGo, an open source project that compiles Go code to run on microcontrollers by using LLVM. TinyGo allows developing embedded software in Go and running it on microcontroller boards like the BBC micro:bit and Arduino Uno. A sample greeting program is shown and the TinyGo online playground is mentioned, though the speaker notes they were facing problems running programs on the simulator.

Uploaded by

Dimas Prawira
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Let’s tiny with TinyGo

GoSheffield October meetup


Whoami
Dimas Yudha Prawira

Software Engineer at OVO.

Volunteering as Organizer GoJakarta meetup from 2016


(https://www.meetup.com/GoJakarta/)
Go technology
Go for Embedded Software?
Embedded Software
Embedded software is computer software, written to control machines or devices that are not typically
thought of as computers, commonly known as embedded systems. It is typically specialized for the
particular hardware that it runs on and has time and memory constraints.[1] This term is sometimes used
interchangeably with firmware.
A precise and stable characteristic feature is that no or not all functions of embeded software are
initiated/controlled via a human interface, but through machine-interfaces instead.[2]

https://en.wikipedia.org/wiki/Embedded_software
Why Go?
● Speed of compiled language
● Easy to learn
● Easy to develop at system level
● Have a large library support
● Not depends on any VM or interpreters
Go Embedded Software Framework (TinyGo https://tinygo.org/)

TinyGo is a project to bring the Go programming language to


microcontrollers and modern web browsers by creating a new compiler
based on LLVM.

You can compile and run TinyGo programs on several different


microcontroller boards such as the BBC micro:bit and the Arduino Uno.
Greeting sample
TinyGo Playground, cool stuff yet… (https://play.tinygo.org/)
Running on simulator (still facing problems….)
@DimasYudha_P
https://www.linkedin.com/in/dprawira/

You might also like