Brewpi (Arduino/RPI) I2C LCD Support

I’m trying to integrate an I2C LCD display into an Arduino Uno / RPI brewpi setup.

In following the instructions in the post here ( I’ve managed to relocate the OneWire to pin A0, but I’m still unable to display anything to the LCD.

I made one change to the github repository above to change the display address to 0x27 instead of 0x3f–I made this change in DisplayLcd.cpp as shown below:

uint8_t LcdDisplay::stateOnDisplay;
uint8_t LcdDisplay::flags;
#if defined(BREWPI_IIC)
// TODO: Change this. I2C address should be in config file.
LcdDriver LcdDisplay::lcd(0x27,20,4);
LcdDriver LcdDisplay::lcd;

I’ve confirmed that the LCD works through a short hello world sketch; would anyone here be willing to help me out?

After changeing Onewire port to A0 i cannot configure my Temp Sensors anymore, they are detected but under the function Menu i can only choose the actuator type function like (Chamber Heater/Cooler Fan etc.) and not (Beet/Chamber Temp)

Does anybody have a idea what went wrong?

Got it, there is one more file that needs to be updated:


elif arduinoType == "standard" and shieldType == "revC":
{'val': 14, 'text': 'A0', 'type': 'onewire'},


You also need to add this to ConfigDefault.h:

#define BREWPI_IIC       1      // LCD display connected to I2C.
// #define BREWPI_OLED      1
// #define BREWPI_SHIFT_LCD 1

I wrote a howto for brewpi I2C support: