Ken Van Hoeylandt 133215664c I2C updates
2026-06-13 00:31:01 +02:00

42 lines
1.1 KiB
C++

#include "devices/Display.h"
#include "devices/SdCard.h"
#include "devices/TpagerEncoder.h"
#include "devices/TpagerKeyboard.h"
#include "devices/TpagerPower.h"
#include <driver/gpio.h>
#include <tactility/device.h>
#include <Tactility/hal/Configuration.h>
#include <Bq25896.h>
#include <Drv2605.h>
bool tpagerInit();
using namespace tt::hal;
static DeviceVector createDevices() {
auto* i2c = device_find_by_name("i2c0");
auto bq27220 = std::make_shared<Bq27220>(i2c);
auto power = std::make_shared<TpagerPower>(bq27220);
auto tca8418 = std::make_shared<Tca8418>(i2c);
auto keyboard = std::make_shared<TpagerKeyboard>(tca8418);
return std::vector<std::shared_ptr<tt::hal::Device>> {
tca8418,
std::make_shared<Bq25896>(i2c),
bq27220,
std::make_shared<Drv2605>(i2c),
power,
createTpagerSdCard(),
createDisplay(),
keyboard,
std::make_shared<TpagerEncoder>()
};
}
extern const Configuration hardwareConfiguration = {
.initBoot = tpagerInit,
.createDevices = createDevices
};