думаю, самым правильным решением будет подключать к RPi дополнительный контроллер — хоть ту же ардуину, к которому уже цеплять датчики и т.п. и уже получать данные от контроллера и обрабатывать их на RPi
Может тогда вам стоит пойти по пути промышленной автоматизации? Подключить преобразователь RS232<->RS485, а дальше уже вешать сколько угодно различных модулей на общую шину RS485. Какая «география» распределения датчиков? (близко\далеко от малинки)
Датчики температуры и влажности почвы (от Arduino). Протяжённость кабеля до каждого датчика около 20 метров. Хотел бы без переделок обойтись. Думаю, действительно проще всего связать Ардуину с RPi как советовали выше…
20 метров, достаточно большое расстояние. Устойчиво будет работать RS-485 интерфейс как предложил svavan. Причём со стороны компьютера лучше гальваноразвязанный, вдруг молния шарахнет! Однако проблема в том, что датчики от Arduino вряд ли имеют этот интерфейс.
Часть датчиков подключите к Малинке, а часть к внешнему контроллеру типа Ардуины.
Мне вот надо несколько выходов UART, чего на малинке нет. Делаю сейчас свою плату расширительную на основе микроконтроллера. У вас такой же случай.
Коли мені треба було під'єднати кучу цифрових пристроїв до RPi, я використовував GPIO expander типу MCP230xx. Там зв'язок по і2с і їх можна 8 штук одночасто використовувати. Загалом виходить 128 додаткових пінів.
Щодо аналогових датчиків - зовнішні багатоканальні АЦП. Я використовував MCP3208. Спілкування по SPI.
Звичайно швидкість спілкування буде невелика, але наприклад для задач типу "розумного будинку" буде навіть із запасом.