nRF9160 comunication not working with Arduino UNO I2C/TWI

I have been trying to get a arduino UNO and arduino Leonardo to communicate with the nRF9160DK but have not been able. That  accounts for the SPI example aswell as the I2C/TWI scanner example in both cases the Arduino's are used as Slave. I am quite new to this but unable to figure out why this all is not working. I have put my eyes on useing I2C because of mutible reasons so that is where this question will be about.

I am running the following slave example on the Arduino UNO

// Wire Slave Sender
// by Nicholas Zambetti <>

// Demonstrates use of the Wire library
// Sends data as an I2C/TWI slave device
// Refer to the "Wire Master Reader" example for use with this

// Created 29 March 2006

// This example code is in the public domain.

#include <Wire.h>

void setup() {
  Wire.begin(8);                // join i2c bus with address #8
  Wire.onRequest(requestEvent); // register event

void loop() {

// function that executes whenever data is requested by master
// this function is registered as an event, see setup()
void requestEvent() {
  Wire.write("hello "); // respond with message of 6 bytes
  // as expected by master

As you can see I have added a maximum Clock speed of 100K since that is what the nRF9160 scanner also uses.

I have changed the config of the nRF9160 to be like this:

&i2c3 {
	status = "ok";
	sda-pin = < 31 >;
	scl-pin = < 30 >;
    clock-frequency = <I2C_BITRATE_STANDARD>;  

And have wired the arduino -> nrf9160dk the following 

A4 -> P0.31
A5 -> P.0.30

I have changed the pinouts from the normal one since on the normal basic pinouts it wasnt working either. Once both are running I dont recieve anything execpt the following:

Starting i2c scanner...Value of NRF_TWIM3_NS->PSEL.SCL: 30 Value of NRF_TWIM3_NS->PSEL.SDA: 31 Value of NRF_TWIM3_NS->FREQUENCY: 26738688 26738688 -> 100k

I would love the recieve some help on why I can't seem to get the nRF9160dk working with my arduino's.

Parents Reply Children