Proto commits in mattjlewis/diozero

These 13 commits are when the Protocol Buffers files have changed:

Commit:129bcba
Author:Matthew Lewis

Dependency version bump. Property to indicate if this is a recognised board. Improved handling of unknown boards, ability to provision via GPIO chip and line offset (#202).

The documentation is generated from this commit.

Commit:6fd91e2
Author:Matthew Lewis

Starting 1.4.0. Docs updated, refactored board provider to remove need for dedicated classes, moved ADC vRef from board to pin itself, builders for Bosch BME devices

Commit:cd17f02
Author:Matthew Lewis

Servo as a first class API device

Commit:e7df5ab
Author:Matthew Lewis

Preparing 1.3.1. sysfs PWM improvements. Removed PwmPinInfo - moved logic to PinInfo. Operations for I2C functionalities and bus number access. Command line parameters for I2CDetect. Use of BlockingQueue in Max30102.

Commit:6a0f641
Author:Matthew Lewis

Digital input device cleanup - make sure listener is removed on close. Include O/S info in BoardInfo. CPU temperature available via native device factory. Get macOS O/S info. Additional Optional methods in PropertyUtil. Completely refactor the protobuf definition to consolidate types.

Commit:d0c8f32
Author:Matthew Lewis

Preparing 1.3.0. Moved legacy projects to diozero-legacy repository. Added Diozero utility class for shutdown. gRPC remote implementation. getGpioMode and getGpioValue means that GpioReadAll not longer requires mmap. Removing dependency on Firmata4j - use my own serial device implementation rather than jssc. I2C read-write support in remote and pigpio providers.

Commit:9c7d59d
Author:Matthew Lewis

1.1.7 Fix for #66 - detect CM4 and system-utils-native fix for aarch64, added setPWmFrequency

Commit:c3ce7da
Author:Matthew Lewis

Changed whenActivated / whenDeactivated to accept nanosecond time rather than epoch time.

Commit:e8d62bf
Author:Matthew Lewis

Refactoring #1 - complete rewrite of I2C implementation, moving classes between .api and .devices, removed jdkdio, pi4j and wiringpi providers.

Commit:9f0a9a7
Author:Matthew Lewis

Removed clockFrequency from the I2C device provisioning interface. Added support for SGP30.

Commit:b922d67
Author:Matthew Lewis

Improvements to GPIO character device support. Added GPIO character device chip and line number into the PinInfo. Allow digital devices to be created with a user specified PinInfo object - a step towards generic device provisioning. Updates to Odroid C2 and TinkerBoard providers to work with Armbian. Changed serial deviceName to deviceFile for clarity.

Commit:78479a9
Author:Matthew Lewis

Switched to JUnit 5. Improved Serial Device discovery.

Commit:542691b
Author:Matthew Lewis

Documentation link fixes