# Contrib-johnny-five vs contrib-gpio

**URL:** <https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640>\
**Category:** General\
**Created:** [13 October 2019 03:51 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640 "2019-10-13T03:51:25Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![m\_elias](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@m\_elias](https://discourse.nodered.org/u/m_elias)\
**Post date:** [13 October 2019 03:51 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/1 "2019-10-13T03:51:25Z")

</div>

Just briefly looking at the write ups for [contrib-johnny-five](https://flows.nodered.org/node/node-red-contrib-johnny-five) and [contrib-gpio](https://flows.nodered.org/node/node-red-contrib-gpio), they look very similar. Can anyone experienced with both comment on the differences?

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [13 October 2019 10:54 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/2 "2019-10-13T10:54:18Z")

</div>

the GPIO node directly controls a Pi GPIO. Johnny-Five goes further and is designed to make it easy to control GPIO on an Arduino.

Ah, it now also supports Johnny-Five - I hadn't realised that.

---

<div class="post-metadata">

**Author:** ![m\_elias](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@m\_elias](https://discourse.nodered.org/u/m_elias)\
**Post date:** [14 October 2019 03:09 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/3 "2019-10-14T03:09:04Z")

</div>

Now I also see node-arduino. They all use the firmata method but other than that I'm not sure yet what the differences are.

---

<div class="post-metadata">

**Author:** ![m\_elias](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@m\_elias](https://discourse.nodered.org/u/m_elias)\
**Post date:** [17 October 2019 04:34 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/4 "2019-10-17T04:34:45Z")

</div>

I managed to get node-Arduino working except for a couple minor issues. But I cannot get contrib-gpio or contrib-johnny-five working on my rPi Zero W (or w7x64). Both libraries have problems with serialport.node & missing bindings file whereas node-Arduino works (it also uses serial comms). I still have not figured out the difference between the two, some how-to guides talk about Johnny five but then install the contrib-gpio library.

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [17 October 2019 07:47 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/5 "2019-10-17T07:47:36Z")

</div>

Have you ensured you have run  
`sudo apt-get install build-essential`

To ensure you have the tools required to build and compile those nodes?

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [17 October 2019 11:10 UTC](https://discourse.nodered.org/t/contrib-johnny-five-vs-contrib-gpio/16640/6 "2019-10-17T11:10:27Z")

</div>

> [@m\_elias](#):
>
> some how-to guides talk about Johnny five

That was one of the first contributed nodes I seem to remember so things may have overtaken it over the years.
