I downloaded the firmware for the GrovePi from the github repository and compiled it (unchanged) using the Arduino IDE on the Rasperry Pi running Raspian for Robost. The programmer was set to the Raspberry GPIO and the board was set to the Arduino UNO. I copied the generated hex file and used the flasher of firmware version V1.2.7 to flash the firmware on to the GrovePi+. Everything went fine, no errors.
However, when I try to run programs, then read_i2c_byte works fine but read_i2c_block throws an Errno 121, meaning that there is no data available. Modifying the GrovePi+ firmware and utilizing read_i2c_byte I can get all the data, so the GrovePi seems to work as expected.
When I upload the already compiled version V1.2.7 on to the GrovePi, then this error disappears. Therefore, I believe that there is something wrong with my compiling process. Though, I have no clue what that would be. Are there different versions of the Wire.h library?
I am thankful for any help I can get on this one.