# Arduino UAVCAN GNSS Node Example Compilation Error

**URL:** <https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432>\
**Category:** Applications & Usage\
**Created:** [September 10, 2021, 1:59am UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432 "2021-09-10T01:59:57Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![JaredDillon](https://forum.opencyphal.org/letter_avatar_proxy/v4/letter/j/c57346/32.png) [@JaredDillon](https://forum.opencyphal.org/u/JaredDillon)\
**Post date:** [September 10, 2021, 1:59am UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/1 "2021-09-10T01:59:57Z")

</div>

Hey all,  
I’m extremely new to UAVCAN and embedded systems, but I am attempting to get the UAVCAN GNSS Node up and running but running into a compilation error.

“‘uavcan::node::Heartbeat\_1\_0’ is not a template”

The error message points me to line 268

My hardware is the same as the example besides a different serial GPS.  
If I need to provide any more information please let me know. Any help would be greatly appreciated.

Thankyou

---

<div class="post-metadata">

**Author:** ![aentinger](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/aentinger/32/1428_2.png) [@aentinger](https://forum.opencyphal.org/u/aentinger)\
**Post date:** [September 10, 2021, 4:58am UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/2 "2021-09-10T04:58:05Z")

</div>

Sounds to me like you want to compile [UAVCAN-GNSS-Node.ino](https://github.com/107-systems/107-Arduino-UAVCAN/tree/master/examples/UAVCAN-GNSS-Node)?

I think you’ve got an outdated version of the codebase since this particular problem was fixed [here](https://github.com/107-systems/107-Arduino-UAVCAN/commit/c7063ad7e5a1305dfed9a0379da69cdaca2495c0#diff-088a40079554f189564598dbc1cf8c4b28c35e96e769e869eba984b8e00ab9f5). I recommend to download [107-Arduino-UAVCAN:master](https://github.com/107-systems/107-Arduino-UAVCAN/archive/refs/heads/master.zip) since this one contains the latest library + examples guaranteed to work.

I have still a couple of to-do-items before another round of this library will be released, so serving yourself directly from master is probably the best thing to do for now 😉

---

<div class="post-metadata">

**Author:** ![JaredDillon](https://forum.opencyphal.org/letter_avatar_proxy/v4/letter/j/c57346/32.png) [@JaredDillon](https://forum.opencyphal.org/u/JaredDillon)\
**Post date:** [September 10, 2021, 5:39am UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/3 "2021-09-10T05:39:02Z")

</div>

Fixed it straight away, probably should have been the first thing I checked haha  
Thankyou very much!

---

<div class="post-metadata">

**Author:** ![davidbitton](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/davidbitton/32/103_2.png) [@davidbitton](https://forum.opencyphal.org/u/davidbitton)\
**Post date:** [September 13, 2021, 5:17pm UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/4 "2021-09-13T17:17:21Z")

</div>

@JaredDillon I’m curious why go this route in lieu of a [Matek M9N-F4](http://www.mateksys.com/?portfolio=m9n-f4). You get an F405, M9N, and compass for ~$85 vs. the MKR stack coming in at ~$150.

---

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [September 13, 2021, 5:30pm UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/5 "2021-09-13T17:30:01Z")

</div>

The board you referenced does not support UAVCAN v1.

---

<div class="post-metadata">

**Author:** ![davidbitton](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/davidbitton/32/103_2.png) [@davidbitton](https://forum.opencyphal.org/u/davidbitton)\
**Post date:** [September 13, 2021, 6:13pm UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/7 "2021-09-13T18:13:04Z")

</div>

You’re assuming that he loads AP\_Periph on to the M9N-F4. I was suggesting it for use w/ “Arduino” code.

---

<div class="post-metadata">

**Author:** ![pavel.kirienko](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/pavel.kirienko/32/9_2.png) [@pavel.kirienko](https://forum.opencyphal.org/u/pavel.kirienko)\
**Post date:** [September 13, 2021, 6:42pm UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/8 "2021-09-13T18:42:15Z")

</div>

That might work indeed, assuming that their hardware is Arduino-compatible.

---

<div class="post-metadata">

**Author:** ![davidbitton](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/davidbitton/32/103_2.png) [@davidbitton](https://forum.opencyphal.org/u/davidbitton)\
**Post date:** [September 13, 2021, 7:50pm UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/9 "2021-09-13T19:50:33Z")

</div>

PlatformIO has a genericSMT32F405RGT6 board type.

---

<div class="post-metadata">

**Author:** ![aentinger](https://forum.opencyphal.org/user_avatar/forum.opencyphal.org/aentinger/32/1428_2.png) [@aentinger](https://forum.opencyphal.org/u/aentinger)\
**Post date:** [September 14, 2021, 7:16am UTC](https://forum.opencyphal.org/t/arduino-uavcan-gnss-node-example-compilation-error/1432/10 "2021-09-14T07:16:35Z")

</div>

> [@davidbitton](#):
>
> You get an F405, M9N, and compass for ~$85 vs. the MKR stack coming in at ~$150.

This example is just something to get you started and play around. Also quite beneficial is that you can swap for another sensor and just write a UAVCAN v1 node for that one. If you were to build a finished product than that’s of course not the route to take. But for rapid prototyping/evaluation/learning this is definitely the way to go 🚀

PS: The example is tailored towards a Arduino MKR stack because that’s what I had at hand. Meanwhile [107-Arduino-UAVCAN](https://github.com/107-systems/107-Arduino-UAVCAN/blob/master/README.md) supports a couple of platforms with a ton of boards which are considerable more powerful than the ATSAMD21G18 Cortex-M0 found on the Arduino MKR boards.
