# Viper Quadcopter

**URL:** <https://forum.opencyphal.org/t/viper-quadcopter/816>\
**Category:** Applications & Usage\
**Created:** [April 29, 2020, 5:06am UTC](https://forum.opencyphal.org/t/viper-quadcopter/816 "2020-04-29T05:06:42Z")\
**Posts on this page:** 1\
**Showing post:** 4

<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:** [May 6, 2020, 3:40pm UTC](https://forum.opencyphal.org/t/viper-quadcopter/816/4 "2020-05-06T15:40:16Z")

</div>

Use the [PyUAVCAN](https://pyuavcan.readthedocs.io/) CLI tool. We’ve got a couple of examples published in the crash course, too:

> [@The Cyphal Guide](https://forum.opencyphal.org/t/the-cyphal-guide/778/1):
>
> ```auto
> $ pyuavcan pub 4919.my_project.MyMessageType.1.0 '{value: 1234, key: "Hello world!"}' --tr='CAN(can.media.socketcan.SocketCANMedia("vcan2",8),59)'
> 
> ```

The tool works on any platform but the CAN transport is currently only supported on GNU/Linux because it supports only SocketCAN as the backend. If you would like to use CAN on a different platform, please help us resolve this:

[https://github.com/UAVCAN/pyuavcan/issues/63](https://github.com/UAVCAN/pyuavcan/issues/63)

---

_[View the full topic](https://forum.opencyphal.org/t/viper-quadcopter/816)._
