#include "SIM_SMBusDevice.h" #pragma once namespace SITL { class SMBusBattDevReg : public SMBusRegEnum { public: static const uint8_t TEMP = 0x08; // Temperature static const uint8_t VOLTAGE = 0x09; // Voltage static const uint8_t CURRENT = 0x0A; // Current static const uint8_t REMAINING_CAPACITY = 0x0F; // Remaining Capacity static const uint8_t FULL_CHARGE_CAPACITY = 0x10; // Full Charge Capacity static const uint8_t CYCLE_COUNT = 0x17; // Cycle Count static const uint8_t SPECIFICATION_INFO = 0x1A; // Specification Info static const uint8_t SERIAL = 0x1C; // Serial Number static const uint8_t MANUFACTURE_NAME = 0x20; // Manufacture Name static const uint8_t DEVICE_NAME = 0x21; // Device Name static const uint8_t MANUFACTURE_DATA = 0x23; // Manufacture Data }; class SIM_BattMonitor_SMBus : public SMBusDevice { public: SIM_BattMonitor_SMBus(); virtual void update(const class Aircraft &aircraft) override; private: uint32_t last_update_ms; }; } // namespace SITL