Estoy considerando implementar un sistema de automatización del hogar alrededor de mi Raspberry Pi, pero descubrí que el precio y el espacio requerido para insertar un Pi en cualquier lugar requieren demasiado control, pero los cables Cat5e necesarios para este diseño ya están instalados durante la renovación. Tengo algunos PCF8574, PCF8591 y SSR por ahí, ¿es posible conducirlos con cables Cat5e?
Todos mis cables Cat5e ya están cableados con pin TIA / EIA 568B. Son parte de mi cableado estructural y no están protegidos, por lo que se requiere un voltaje de línea más alto. Estoy pensando en enviar energía y líneas I2C a través del cable, con este pinout:
Pin 1 (Pair 1): SCL+
Pin 2 (Pair 1): SCL-
Pin 3 (Pair 2): SDA+
Pin 4 (Pair 3): +12V
Pin 5 (Pair 3): +12V
Pin 6 (Pair 2): SDA-
Pin 7 (Pair 4): GND
Pin 8 (Pair 4): GND
La disposición de los pines de alimentación es la misma que el cableado PoE 100BASE-TX, por lo que la potencia nominal también será la misma, y el uso de señalización diferencial bidireccional se encuentra en 1000BASE-T, que requiere Cat5e.
Las líneas I2C SCL y SDA originales se derivan en dos pares diferenciales bidireccionales a niveles TTL (el drenaje abierto no se mantiene en el cable, sino que se restaura en el dispositivo de terminación de línea / cambio de nivel que estoy diseñando)
¿Alguna sugerencia sobre eso? Además, ¿qué chip debo usar para convertir líneas I2C a la señalización diferencial? Por favor, sugiérame chips con la opción de orificio pasante DIP. No sé cómo manejar las cosas SMT.
EDITAR
Encontré este chip, SN65LBC180, ¿es una buena opción? ¿Cómo conectarlo a una unidad bidireccional? ¿Cómo cambiar el nivel (es una parte de BiCMOS que requiere un nivel TTL pero Pi funciona a niveles CMOS de 3.3v) y hacer que sea compatible con drenaje abierto?
EDITAR 2
Los comentaristas sugirieron RS-485 que me pareció aceptable, pero aún así se requiere que los dos pares diferenciales sean bidireccionales y solo dos pares diferenciales bidireccionales solamente. Estoy reutilizando los cables Ethernet existentes.
EDITAR 3
Como alguien lo mencionó, no puedo usar CAN. No hay forma de que pueda encajar CAN en RPi sin sacrificar nada (SPI está ocupado por una pantalla táctil, por lo que no hay convertidor SPI a CAN)
Soy consciente de la limitación de I2C PHY, así que esencialmente estoy tratando de adaptar 1000BASE-T PHY: señalización diferencial bidireccional para señales SCL y SDA, pero además de eso se ejecuta el protocolo I2C.
EDITAR 4
Se me ocurrió un nuevo chip: NXP P82B96 que divide I2C en 4 líneas unidireccionales, que a su vez se pueden utilizar para alimentar SN65LBC180 a través del optoaislamiento (solo lado Pi) para formar una señalización de larga distancia de 8 pines. Ahora solo necesito descubrir cómo obtener energía a través del cable, o cómo determinar si el bus está enviando y hacer que los pares sean bidireccionales.
EDITAR 5
A partir de las sugerencias de respuestas, creo que necesito cambiar un poco el pin de alimentación:
Pin 1 (Pair 1): SCL+
Pin 2 (Pair 1): SCL-
Pin 3 (Pair 2): SDA+
Pin 4 (Pair 3): +5V
Pin 5 (Pair 3): GND
Pin 6 (Pair 2): SDA-
Pin 7 (Pair 4): GND
Pin 8 (Pair 4): +12V
El voltaje de señalización diferencial I2C es TTL. El + 5V sobre el par 3 proviene del Pi, sin búfer pero fusionado. El + 12V sobre el par 4 puede no estar presente solo se usa para manejar algunos dispositivos de alta potencia. Si es necesario, el dispositivo puede usar su propia fuente de alimentación y dejar ambos rieles colgando sin conectar o suministrar su propio voltaje más alto, pero use el riel de 5V.
RASCA ESO
Pinout sigue siendo mi diseño original, que es compatible con 802.1af.