During the week a package arrived from Seeedstudio with a Grove Base Hat for RPI Zero. So I have modified my Grove Base Hat for RPI Windows 10 IoT Core library to add support for the new shield.

The Raspberry PI Zero hat has a two less analog ports and a different device id so some conditional compile options were necessary
namespace devMobile.Windows10IoTCore.GroveBaseHatRPI
{
#if (!GROVE_BASE_HAT_RPI && !GROVE_BASE_HAT_RPI_ZERO)
#error Library must have at least one of GROVE_BASE_HAT_RPI or GROVE_BASE_HAT_RPI_ZERO defined
#endif
#if (GROVE_BASE_HAT_RPI && GROVE_BASE_HAT_RPI_ZERO)
#error Library must have at most one of GROVE_BASE_HAT_RPI or GROVE_BASE_HAT_RPI_ZERO defined
#endif
public class AnalogPorts : IDisposable
{
private const int I2CAddress = 0x04;
private const byte RegisterDeviceId = 0x0;
private const byte RegisterVersion = 0x02;
private const byte RegisterPowerSupplyVoltage = 0x29;
private const byte RegisterRawBase = 0x10;
private const byte RegisterVoltageBase = 0x20;
private const byte RegisterValueBase = 0x30;
#if GROVE_BASE_HAT_RPI
private const byte DeviceId = 0x0004;
#endif
#if GROVE_BASE_HAT_RPI_ZERO
private const byte DeviceId = 0x0005;
#endif
private I2cDevice Device= null;
private bool Disposed = false;
public enum AnalogPort
{
A0 = 0,
A1 = 1,
A2 = 2,
A3 = 3,
A4 = 4,
A5 = 5,
#if GROVE_BASE_HAT_RPI
A6 = 6,
A7 = 7,
#endif
};
The code updates have been “smoke” tested and I have updated the GitHub repository.