Announcing v3.5.0

go mod, improve MIPS, drop go1.6

Version 3.5.0 is released!

This is the first release that is go modules friendly. The go.mod is the simplest you can think of, since periph doesn’t depends on any other third party library at the moment.

Go 1.6 and earlier is not supported anymore. This is required to be able to start using the package context.

The new release contains 28 changes from 6 contributors for a diff stat of 62 files changed, 4843 insertions(+), 2150 deletions(-).

New packages

  • ccs811: driver for CCS811 Volatile Organic Compounds sensor.
  • inky: driver for Inky pHAT e-ink screens.


  • as7262: Improve internal handling and fix flaky test.
  • i2c: Add Stringer for i2c.Addr
  • physic: Fix inconsistencies in Set() methods, improve rounding.
  • physic: Add unitless frequency, added Temperature.Celsius() and Fahrenheit(); make all commands to use Frequency for flag.
  • physic: Add examples to convert each type to float64.
  • fs: added IOx() linux IOCTL functions to generate the code points. The old Ioctl() implementation translating the ioctl code on MIPS were not working correctly because I²C ioctl are hardcoded (!) on linux. This fixes once for all support on MIPS.
  • fs: Fixed EpollCreate() call on arm64.
  • sysfs: implement SenseContinuous in ThermalSensor.
  • Travis:
    • Bumped to go1.11.5.
    • Fix conditions to actually run tests. Oops.
    • New check to block go binaries from being merged in.
  • Added go.mod to enable builds outside GOPATH.
  • Dropped support for Go before 1.7.

Special thanks

Thanks to:

Found bugs? Have questions?

Follow for news and updates!