Go Further Without Wires
FOSDEM 2022
Ron Evans - @deadprogram
Go Without Wires (FOSDEM 2021)
Go Bluetooth
tinygo.org/bluetooth
Wireless Local Area Network
(WLAN)
How The Internet Really Works
Transmission Control Protocol /
Internet Protocol
aka
TCP/IP
Normally you don't worry about this
import (
"net"
"net/http"
)
But What About The Metal?
TinyGo Drivers
github.com/tinygo-org/drivers
import (
"tinygo.org/x/drivers/net"
"tinygo.org/x/drivers/net/http"
"tinygo.org/x/drivers/wifinina"
)
Connect to an Wireless Access Point (AP)
Arduino Nano 33 IoT
Microchip SAMD21
32-bit processor
120 Mhz Cortex-M4
512K Flash
ublox Nina-W102
Dual-core Xtensa LX6
32-bit processor
240 Mhz
16MB Flash
HyperText Transfer Protocol (HTTP)
Seeedstudio Wioterminal
Microchip SAMD51
32-bit processor
120 Mhz Cortex-M4
512K Flash
Realtek RTL8720DN
Dual-core
KM4 Arm Cortex-M4 - 200 Mhz
KM0 Arm Cortex-M0 - 20 Mhz
4MB Flash
Embedded RPC (erpc)
↓
UART
Message Queuing Telemetry Transport (MQTT)
Adafruit PyPortal
Microchip ATSAMD51J20
ARM Cortex M4
32-bit processor
120 Mhz
256K RAM
ublox Nina-W102
Dual-core Xtensa LX6
240 Mhz
16MB Flash
User Datagram Protocol (UDP)
Network Time Protocol (NTP)
Flying Drone Protocol (FDP)
*I just made that up
Adafruit Pybadge
Microchip ATSAMD51J18
ARM Cortex M4
32-bit processor
120 Mhz
256K Flash
Adafruit Airlift Featherwing
Espressif ESP32-WROOM-32
Dual-core Xtensa LX6
240 Mhz
16MB Flash
Connect all the things using Go
Thank you!
@deadprogram
Technologist For Hire