Also momentan komme ich nicht weiter Ich bekomme anscheinend kein ack vom modul. Ich habe markiert an welcher stelle die i2c_start funktion verlassen wird.

Es ist alles richtig verlötet (leitungen und kabel sind geprüft) und die Adressierung stimmt auch.

Einstellungen am Modul sind 100kHz für den Takt ohne flusskontrolle pullups im modul sind auch eingeschaltet.

Code:
unsigned char i2c_start(unsigned char address)
{
    uint8_t   twst;

	// send START condition
	TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN);

	// wait until transmission completed
	while(!(TWCR & (1<<TWINT)));


	// check value of TWI Status Register. Mask prescaler bits.
	twst = TW_STATUS & 0xF8;
	if ( (twst != TW_START) && (twst != TW_REP_START)) return 1;


	// send device address
	TWDR = address;
	TWCR = (1<<TWINT) | (1<<TWEN);

	// wail until transmission completed and ACK/NACK has been received
	while(!(TWCR & (1<<TWINT)));


	// check value of TWI Status Register. Mask prescaler bits.
	twst = TW_STATUS & 0xF8;

// An dieser Stelle springt er immer aus der funktion (mit dem return 1)

	if ( (twst != TW_MT_SLA_ACK) && (twst != TW_MR_SLA_ACK) ) return 1;


	return 0;

}/* i2c_start */