Skip to content

Releases: tinygo-org/drivers

0.34.0

15 Dec 15:48

Choose a tag to compare

  • core

    • add regmap package to facilitate heapless driver development
    • PinInput+PinOutput HAL (#753, reloaded) (#795)
    • Add Device8I2C/SPI types and their logic (#801)
  • new devices

    • bno8x
      • Add support for CEVA BNO08x 9DoF sensor (#809)
    • hineyhsc
      • Add Honeywell HSC TruStability SPI+I2C pressure sensor driver (#799)
    • p25q16h
      • added support for P25Q16H flash chip for xiao-ble target
    • si5351
      • add support for si5351 (#810)
    • w25q80dv
      • added support for W25Q80DV flash chip for xiao-ble target
    • w5500
      • initial version the driver (#788)
  • enhancements

    • ds3231
      • DS3231 Alarm features (#805)
    • general
      • add simplest driver ports
    • lis3dh
      • add Update and Acceleration calls
      • use correct error handling and make configurable
    • lsm9ds1
      • avoid unnecessary heap allocations
    • pixel
      • add Grayscale2bit color (#817)
    • scd4x
      • add support for SCD41 single-shot measurements
      • remove dead code
      • update package to use standard methods
    • si5351
      • add many missing functions needed for convenient use.
    • ssd1xxx
      • break dependency from machine package (#812)
    • test
      • Add TestImageRGB888 and TestImageRGB555
  • bugfixes

    • quadrature
      • add RP2350 to quadrature_interrupt.go
    • pixel
      • correct logic error in image size checks in pixel's tests
      • correct logic error in image size checks in pixel's tests (Monochrome)
      • correct RGB555 to RGBA conversion logic

0.33.0

19 Aug 20:16

Choose a tag to compare

  • new devices

    • ens160
      • Add ens160 i2c driver
    • lsm303dlhc
      • added support for LSM303DLHC e-Compass; (#783)
    • seesaw
      • add support for Adafruit Seesaw encoders
  • enhancements

    • ws2812
      • add RP2350 support
    • ssd1306
      • avoid unnecessary heap allocations (#767)
    • gps
      • allow gps init with address
    • lsm6ds3tr
      • avoid unnecessary heap allocations (#766)
  • bugfixes

    • gps
      • Fix gps time calculation (#785)

0.32.0

16 Jun 08:54

Choose a tag to compare

  • enhancements

    • bmp280
      • remove alloc on read sensor data
    • ws2812
      • add 200MHz support for the Cortex-M0/rp2040
  • bugfixes

    • ssd1306
      • remove time.Sleep from SSD1306 SPI transfer code
    • tmc2209
      • tmc2209 bug fixes (#755)
  • docs

    • contributing
      • add driver design pointer to CONTRIBUTING.md

0.31.0

19 Mar 16:33

Choose a tag to compare

What's Changed

  • chore: update all SPI usage to use either *machine.SPI or drivers.SPI by @deadprogram in #746

Full Changelog: v0.30.0...v0.31.0

0.30.0

04 Mar 18:29

Choose a tag to compare

  • new devices

    • comboat
      • Add wifi driver comboat for Elecrow W5 rp2040 and rp2350 devices (#741)
    • max6675
      • Add MAX6675 device
    • TMC2209
      • Added TMC2209 support (#727)
    • TMC5160
      • Added TMC5160 support (#725)
    • sharpmem
      • Add sharpmem (#724)
  • enhancements

    • net
      • move to latest golang.org/x/net v0.33.0 (#732)
    • microphone
      • update microphone driver to use latest i2s interface
  • bugfixes

    • net
      • fix typo in DHCP error message
    • aht20
      • Fixed bug in aht20 driver
    • hub75
      • fix data buffering

0.29.0

30 Oct 17:23

Choose a tag to compare

  • new devices

    • epd1in54
      • Waveshare 1.54inch B/W e-Paper display (#704)
    • touch
      • add capacitive touch sensing on normal GPIO pins
    • INA219
      • I2C INA219 driver (#705)
    • pcf8591
      • add ADC only implementation for I2C ADC/DAC (#690)
  • enhancements

    • pixel
      • add NewImageFromBytes() function to allow creating image from existing slice
    • servo
      • Add function SetAngleWithMicroseconds (#695)
    • onewire
      • onewire improvements
    • ssd1306
      • Add function SetFlip and GetFlip (#702)
    • uc8151
      • add FillRectangle() and SetScroll() functions to satisfy tinyterm.Displayer interface
    • ssd1306
      • add FillRectangle() and SetScroll() functions to satisfy tinyterm.Displayer interface
  • bugfixes

    • pixel
      • fix Monochrome setPixel
  • docs

    • readme
      • discuss need to change variables in examples
    • sponsor
      • Add sponsor button to key repositories

0.28.0

18 Jun 11:10

Choose a tag to compare

  • new devices

    • epd2in66b
      • Waveshare 2.66inch E-Paper Display Module (B) for Raspberry Pi Pico (#673)
    • mcp9808
      • Add driver for MCP9808 i2c temperature sensor (#676)
  • enhancements

    • encoders
      • add atsamd21, atsamd51, atsame5x
    • pixel
      • add support for Monochrome types such as the SSD1306 display
    • rtl8720dn
      • implement ConnectModeAP
    • servo
      • add function SetAngle() to simplify API for most common use case
    • ssd1306
      • add DrawBitmap() function to complete Displayer interface
      • add rotation functions for Displayer interface
      • add Sleep() function for Displayer interface
    • uc8151
      • improvements to speed and also add flicker-free mode based on @antirez code example
      • update to support all functions needed by tinygl and board package Displayer interface
    • wifinina
      • implement ConnectModeAP
  • bugfixes

    • ft6336
      • ignore bogus touch events
    • pixel
      • fix Image[Monochrome].Set for larger images
    • uc8151
      • correct DrawBitmap() also refactor SendCommand() and SendData() for clarity
    • ws2812
      • Fix typo and move initialization of neo to init()
  • examples

    • ws2812
      • Simplify examples/ws2812

0.27.0

26 Feb 19:12

Choose a tag to compare

  • core

    • prepare for CGo changes in TinyGo
  • new devices

    • adafruit4650
      • support for Adafruit 4650 feather OLED
    • net
      • new networking support based on tinygo net package
    • pixel
      • add package for efficiently working with raw pixel buffers
    • rotary
      • Adding driver for rotary encoder support
    • seesaw
      • Adding support for Adafruit Seesaw platform
    • sgp30
      • add SGP30 air quality sensor
    • sk6812
      • added support for SK6812 to WS2812 device (#610)
  • enhancements

    • epd2in13
      • add Sleep method like other displays
      • unify rotation configuration with other displays
      • use better black/white approximation
    • ili9341
      • add DrawBitmap method
    • lora/lorawan
      • LoRa WAN US915 Support
      • LoRa WAN add setter functions
      • refactor shared functionality for channels/regions
    • mcp2515
      • Add more line speeds to mcp2515.go (#626)
    • rtl8720dn
      • use drivers package version as the driver version
    • ssd1306
      • improvements needed for Thumby SPI display
    • st7735
      • make the display generic over RGB565 and RGB444
    • st7789
      • add DrawBitmap method
      • make the display generic over RGB565 and RGB444
    • wifinina
      • add ResetIsHigh cfg switch for MKR 1010 (copied from #561)
      • maintenence. Also see PR #4085 in the main TinyGo repo
      • use drivers package version as the driver version
  • bugfixes

    • adxl345
      • Use int16 for ADXL345 readings (#656)
    • at24cx
      • fixed the description of the device struct
    • rtl8720dn
      • allow connecting to open wifi access points
      • fix check for bad Wifi connect
    • sh1106
      • fix I2C interface and add smoketest
      • fixed the description of the device struct
    • wifinina
      • add 'unknown failure' reason code for AP connect
      • fix concurrency issues with multiple sockets
      • fix wifinina UDP send
  • examples

    • ds3231
      • fix the description in the example
    • lorawan
      • add missing functions for simulated interface
      • modify atcmd and basic demo to support choosing any one of the supported regions at compile time by using ldflags
    • net
      • all networking examples now using netdev and netlink.
  • build

    • all
      • fix broken testrunner
      • migrated legacy I2C
      • add natiu package for tests
    • smoketest
      • add stack-size param for net tests.
      • allow stack-size flag as it is needed for net examples

0.26.0

21 Sep 10:53

Choose a tag to compare

  • core

    • i2c iface refactor: Resolve #559
    • fix uses of legacy i2c WriteRegister calls
    • add correct Tx implementation for mock I2C interfaces
    • bump golang.org/x/net version
  • new devices

    • bma42x
      • add new BMA421/BMA425 driver
    • ndir
      • add Sandbox Electronics NDIR CO2 sensor driver (#580)
    • mpu9150
      • implement driver for Mpu9150 (#596)
    • sht4x
      • implement driver for sht4x (#597)
    • pcf8523
      • implement driver for pcf8523 (#599)
  • enhancements

    • ssd1306
      • improve bus error handling
  • bugfixes

    • st7789
      • fix scrolling when rotated by 180°
    • st7789
      • fix incorrect Rotation configuration
      • fix SetScrollArea
    • ili9341
      • fix SetScrollArea
  • build

    • use latest tag of tinygo-dev container for running tests

0.25.0

11 Jun 10:32

Choose a tag to compare

  • core

    • add Sensor interface and Measurement type
    • delay
      • add new package for cycle-accurate delays
  • new devices

    • AS560x
      • Add support for ams AS560x on-axis magnetic rotary position sensors
    • onewire
      • first implementation of 1-wire protocol (#505)
    • mpu6886
      • initial implementation
    • ttp229
      • initial support for ttp229 (BSF)
  • enhancements

    • gps
      • make the date available in addition to the time (#532)
    • i2csoft
      • use cycle counting for delays
    • ili9341
      • add EnableTEOutput to be able to sync drawing with VSYNC
      • add sleep mode
      • unify rotation support
    • st7735
      • add DrawRGBBitmap8 method to draw raw RGB565 buffers
      • add sleep mode
      • unify rotation support
    • st7789
      • added DrawRGBBitmap8 (same as ili9341 & st7735)
      • allow changing the color format using COLMOD
      • make it possible to configure gamma
      • support the chip select pin
      • update saved rotation in SetRotation
      • add sleep mode
      • unify rotation support
    • sx126x/sx127x
      • Reduce spi buffer size, add missing select when using channels
      • Remove heap alloc in interrupt, add non blocking channel send/receive, and other cleanups
    • wifinina
      • add generated strings, improved debugging system and messages
      • add ResetIsHigh to control the behavior of the RESET pin for boards like the Arduino MKR 1010
      • only add generated strings when using wifidebug tag
  • bugfixes

    • ds3231
      • Document incorrect leap year 2100
      • Fix negative temperature conversion
    • ili9341
      • fix Size() for mirrored rotation
    • st7789
      • avoid heap allocations after the driver is created
    • net
      • Revert "(#501) make IP.String() method return something sensible"
    • wifinina
      • small timing adjustments in Configure() to better ensure device reset
  • examples

    • sdcard
      • remove tinyfs example and replace with link to tinyfs repo in docs
    • wifinina
      • improve connectToAP() and other needed minor corrections
  • build

    • switch to ghcr.io for docker container
    • run smoke tests in parallel
    • Makefile
      • add XTENSA=0 flag to skip Xtensa tests
      • remove AVR=0 flag
  • docs

    • remove full list of devices from README, better to keep it on the tinygo.org site
    • update LICENSE year