# Arduino USB \> Firmata \> I2C \> \[GPIO PCF8574 + MCP23017 + temp BMP280\]

**URL:** <https://discourse.nodered.org/t/arduino-usb-firmata-i2c-gpio-pcf8574-mcp23017-temp-bmp280/24281>\
**Category:** Hardware\
**Created:** [5 April 2020 18:47 UTC](https://discourse.nodered.org/t/arduino-usb-firmata-i2c-gpio-pcf8574-mcp23017-temp-bmp280/24281 "2020-04-05T18:47:51Z")\
**Posts on this page:** 1\
**Showing post:** 21

<div class="post-metadata">

**Author:** ![PizzaProgram](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/pizzaprogram/32/19431_2.png) [@PizzaProgram](https://discourse.nodered.org/u/PizzaProgram)\
**Post date:** [23 December 2020 07:24 UTC](https://discourse.nodered.org/t/arduino-usb-firmata-i2c-gpio-pcf8574-mcp23017-temp-bmp280/24281/21 "2020-12-23T07:24:47Z")

</div>

> [@woodlandsolitude](#):
>
> That's interesting, maybe there is a "hidden way" to invert it. I was playing around with Jonny5 a bit

I mean to do it on the .INO file directly at Firmata.  
But I gave up to search for it, because other problems would still remain.

> [@woodlandsolitude](#):
>
> If I may ask, is there another approach you have in mind?

Yes, I've investigating 4 other possibilities, but wanted to post only, if I know more to compare those.  
Opened a new topic for that:

> [@MQTT with Arduino Nano + NodeRed](https://discourse.nodered.org/t/mqtt-with-arduino-nano-nodered/37351/3):
>
> YES, this is exactly the thing I'm looking for! with minimal C, only "forwarding" RAW data from/to all ports and reconnecting if connection lost. doing whatever possible at NodeRed side. My question is: HOW to do that? Currently I'm investigating this: And This:

---

_[View the full topic](https://discourse.nodered.org/t/arduino-usb-firmata-i2c-gpio-pcf8574-mcp23017-temp-bmp280/24281)._
