Amplifier for I2C signals over 30 meters / Amplificador para señal I2C sobre 30 metros

I’m working on a project where I need to amplify an I2C signal to connect a sensor (slave) to a data logger (master). SparkFun QwiicBus - EndPoint allows for distances of up to 30 meters. In my application, I need to reach 100 meters and connect more than one sensor on the same cable to reach the master. How can I achieve this distance using QwiicBus or equivalent devices?

Trabajo en un proyecto donde necesito amplificar una señal I2C para conectar un sensor (esclavo) a un registrador de datos (maestro). SparkFun QwiicBus - EndPoint permite alcanzar distancias de hasta 30 metros. En mi aplicación, necesito alcanzar 100 metros y conectar más de un sensor en el mismo cable hasta llegar al maestro. ¿Cómo puedo alcanzar esta distancia usando dispositivos QwiicBus o equivalentes?

I2c was never developed for such a long distance. e.g. look at I2C/Wire speed and cable length - Networking, Protocols, and Devices - Arduino Forum.

Sparkfun has developed endpoint that can extend the distance SparkFun QwiicBus - EndPoint. But I would really wonder whether 100 meter is possible, but you can try at low speed

I would rather consider RS-485 as a connection.

1 Like

Thank you for your prompt response and suggestion.

Question: If I use SparkFun QwiicBus - EndPoint, I understand I can reach 100 feet (30 meters). Is this correct?

That is what the specifications says :slight_smile: … Still I2C is sensitive to timing (consider low speed) and line quality (capacitor value).

Thanks again for your response. I can settle for a range of only 30 meters. I’ll keep your suggestions in mind.

Just to put my project into context, I have a digital accelerometer with I2C, SPI protocol. The ideal is to reach long distances, but if I only reach 30 meters, that’s enough.