Skip to content

Releases: tinygo-org/drivers

0.21.0

05 Jul 09:18
Compare
Choose a tag to compare
  • new devices

    • lsm6ds3tr: initial implementation
    • UC8151: used in Pimoroni's badger2040 e-paper (#416)
    • scd4x: implement driver for CO2 sensor
  • enhancements

    • easystepper: Add support for '8-step mode'
    • vl53l1x: Add functions for setting the device address
    • sdcard: support thingplus-rp2040
    • wifinina: add mutex to prevent communication race problems
    • ws2812
      • support thingplus-rp2040 board
      • Added 125 MHz rp2040 timing
      • Added unsafe.Pointer for pointer conversion
  • bugfixes

    • ssd1351: Fix mirrored text on OLED display

0.20.0

29 Apr 09:32
Compare
Choose a tag to compare
  • new devices

    • irremote: Add basic infra-red driver
    • IS31FL3731: add driver for IS31FL3731 matrix LED driver (#370)
    • l3gd20: add gyro driver
    • SSD1289: Driver for SSD1289 LCD
  • enhancements

    • ili9341
      • add support for atsame5x
      • added Feather board support to InitDisplay()
      • avoid heap allocations
    • lps22hb
      • pin rename, sync with main repo
    • lsmXXX
      • unified, error handling, memory management
    • max7xx
      • Add a SetIntensity() function to max7xx driver and example
    • vl53l1x
      • Add functions for setting 'region of interest'
      • Fix switch-case semantics
    • ws2812
      • add support for m5stamp-c3
      • convert AVR assembly to C inline assembly
      • support high-MHz ARMv6M chips like the RP2040
      • write inline assembly using C instead of Go
  • bugfixes

    • dht
      • fix error check in example
      • fix humidity and temperature extraction for DHT22 (#358)
    • esp8266
      • fix ConnectToAccessPoint timeout args
    • image
      • fix interface
    • pca9685
      • add buffered one shot write
      • fix on=0 bug
    • wifinina
      • correct sendParamStr to handle empty strings, such as when connecting to an unsecured access point

v0.19.0

26 Jan 17:28
Compare
Choose a tag to compare
  • new devices
    • ft6336: add support for ft6336
    • pca9685: PCA9685 driver
    • shtc3: Sensirion SHTC3 Relative Humidity / Temperature i2c sensor
    • sx126x: Driver for Semtech sx126x radio modules
    • xpt2046: XPT2046 Touch driver (#350)
  • enhancements
    • hd44780i2c
      • clean up for go fmt
      • Needed fixes and update hd44780i2c.go
    • ili9341, ili9342
      • add support for m5stack
      • add support for m5stack-core2
    • wifi
      • modify to use shared net.Adapter interface for all supported wifi devices
    • wifinina: remove busy wait
  • bugfixes
    • hd44780
      • fix 4-bit data length flag
      • Reset data pins to output mode after reading
    • Nano 33 BLE drivers (#351)
  • docs
    • examples/wifi: add unified example for tcpclient that compiles for all supported wifi adaptors

0.18.0

18 Nov 14:27
Compare
Choose a tag to compare
  • new devices
    • apds9960: add support for APDS-9960 Digital Proximity sensor
    • axp192: add support for AXP192 single Cell Li-Battery and power system management IC
    • hts221: add support for HTS221 capacitive digital sensor for relative humidity and temperature
    • i2csoft: add support for software I2C
    • image: add support for image/jpeg and image/png
    • lps22hb: add support for LPS22HB MEMS nano pressure sensor
    • lsm6dox: add support for lsm6dox accelerometer
    • lsm9ds1: add support for lsm9ds1 accelerometer
  • enhancements
    • ili9341: change to use drivers.SPI interface
    • ws2812
      • generate assembly instead of handwriting it
      • improve timings to be compatible with the WS2811
      • add support for 168MHz (e.g. Adafruit Feather STM32F405)
      • add support for RISC-V
    • wifinina: control nina pins, for example leds
  • docs
    • rtl8720dn: examples for tcpclient, udpstation, mqtt, and webserver
    • wifinina
      • nina-fw update docs
      • examples/wifinina/http-get
    • ili9341: refactor examples
    • Fix broken link for SHT3x datasheet
  • core
    • all: use build directives for both Go1.17 and earlier versions
  • bugfixes
    • net: fix raddr of tcp conn
    • mcp3008: fix bitshift bug

0.17.1

01 Jul 18:40
Compare
Choose a tag to compare
  • To correct an error in the release process. Same as 0.17.0.

0.17.0

01 Jul 18:21
Compare
Choose a tag to compare
  • new devices
    • rtl8720dn: add support for rtl8720dn
    • sdcard: add support for spi sdcard driver, along with fatfs
  • enhancements
    • apa102: use 4-byte buffer to improve speed
    • bmi160: avoid heap allocations
    • ili9341: add standard SPI driver
    • wifinina
      • avoid fmt package
      • Fix RSSI command for WiFiNINA + Print current SSID + Wait for correct time before printing it out + Cleanup
    • ws2812
      • rename the pin to ws2812
      • add tag for nrf52833
      • Disable interrupts before sending ws2812 data
      • add support for qtpy and atsame5x
  • core
    • modules: switch to use tinygo-org version of tinyfs package
    • all: use machine.Serial as the default output

0.16.0

12 May 13:53
Compare
Choose a tag to compare
  • new devices
    • aht20: add device
    • ina260: add new i2c device
    • keypad: add 4x4 keypad driver (#226)
    • max7219: add driver support
    • mcp2515: add support for mcp2515 CAN device
    • p1am: support the P1AM-100 hardware watchdog
    • pcf8563: add support for pcf8563 real time clock
    • servo: add driver using PWM
    • tm1637: add support for tm1637 7-segment LED
    • tone: add package for producing tones using the PWM interface
  • enhancements
    • pwm: update drivers with PWM to use new interface
    • wifinina: Make TLS work over WiFiNINA Verified on Arduino Nano33 IoT and nina fw v1.4.5
    • ssd1306: Enable reset screen for SSD1306 via I2C
    • st7789: add scrolling functions to match st7735
  • bugfixes
    • wifinina:
      • fix getMACAddress and getTime
      • fix println + cleanup
      • remove debug flag and remove unnecessary padding call
      • fix padding and implement missing functions
    • flash: fix EraseBlocks method which is erasing sectors instead
  • core
    • all: use interfaces for UART objects
    • all: do not take the pointer of an I2C object
    • adc: update drivers with ADC to use new config struct
  • testing
    • tester:
      • add a mock for command-oriented i2c devices
      • add 16-bit register mock device
  • docs
    • ssd1306: example of ssd1306 with 128x64 display over I2C
    • wifinina:
      • add information about Adafruit boards with ESP32 wifi coprocessors, and modify examples to remove code that was both not being used, and also prevented many Adafruit boards from being able to be targeted by the examples
      • update docs to simplify the nina-fw update process
      • example that connects to AP and prints ip addresses, time and mac
    • p1am: documentation and example program
    • add missing new drivers added since last release

v0.15.1

06 Mar 12:52
Compare
Choose a tag to compare

Same as 0.15.0 just with the correct tag.

v0.15.0

06 Mar 12:47
Compare
Choose a tag to compare
  • new devices
    • dht: add DHTXX thermometer
    • mcp23017: new driver for MCP23017 (I2C port expander)
    • bmp388: Add bmp388 support (#219)
  • enhancements
    • hd44780: add a mode to work with boards where the RW pin is grounded
    • st7789: add scrolling functions to match st7735
    • microbitmatrix: matrix now working on microbit v2
    • ds1307: Better interface "ReadTime" instead of "Time"
    • ws2812: make AVR support more robust
  • bugfixes
    • all: fix main package in examples
  • core
    • adc: update all drivers with ADC to use new config struct
    • spi: remove machine.SPI and replace with drivers.SPI interface for almost all SPI drivers
  • testing
    • test: run unit tests against i2c drivers and any spi drivers without direct gpio
  • docs
    • st7789: correct errors on various godoc comments

Release 0.14.0

17 Sep 09:40
Compare
Choose a tag to compare
  • new devices
    • lis2mdl: add LIS2MDL magnetometer (#187)
    • waveshare: add Waveshare 4.2in B/W e-paper driver (#183)
  • enhancements
    • adt7410: add connection test and for that matter connection method
    • gps
      • add speed and heading to fix, as parsed from RMC NMEA sentence
      • improvements and bugfixes (#186)
    • ili9341
      • add support for setting framerate, vsync pause, and reading scanline data.
      • renamed NewSpi() to NewSPI() in accordance with Go naming conventions
    • ws2812
      • add support for ESP8266
      • add support for ESP32
  • bugfixes
    • ili9341
      • rix setWindow bug, add CS pin for Clue compatibility. (#180)
      • bugfix for RAMWR bug
    • lis2mdl: turn on read mode on every read, to ensure that magnetometer data is updated
  • core
    • i2c
      • switch all i2c drivers definitions to use i2c bus interface type instead of machine package concrete type
      • correct interface definition for I2C Tx function
  • testing
    • fix smoke-test unless avr-gcc installed
    • add very basic mock structs for testing i2c devices, based on work done by @rogpeppe
    • improve API surface and implement one more test function in lis2mdl driver
  • docs
    • replace README badge for godocs with pkgdocs