arduino icon indicating copy to clipboard operation
arduino copied to clipboard

C++ client for Firmata Arduino

Open jecalderon opened this issue 6 years ago • 9 comments

I am looking for a C++ FIRMATA client Code for the Windows 10 client. I am not sure if I am missing something or just one needs to be proposed.

jecalderon avatar Sep 03 '18 18:09 jecalderon

The code in this repo can also function as a C++ client. You can find a specific example here: https://github.com/zfields/remote-wiring.

soundanalogous avatar Sep 03 '18 20:09 soundanalogous

For a Win10 compatible example, check https://github.com/ms-iot/remote-wiring. Windows appears to have stopped maintaining it. The current project is at http://remotewiring.com/, but it is strictly c++ and does not have a working c++/cx example for Windows 10.

zfields avatar Sep 03 '18 21:09 zfields

Thank you all.. but I was no clear. What I really need is this C++ code within a solution from VS 2017. This is will all necessary linkers to any GUI directories like WxWidgets.

jecalderon avatar Sep 13 '18 02:09 jecalderon

https://github.com/ms-iot/remote-wiring

It is literally a c++/cx project. You can simply clone the repository into your project folder and add it to your project via the VisualStudio GUI. Alternatively you can add it via Nuget packages, but I have no idea what version is being supported. If that doesn't work, then you can simply copy and paste the code into anything you have available.

zfields avatar Sep 13 '18 02:09 zfields

Is there a particular reason none of these are listed under Firmata Client Libraries for C++ within the readme.md? Is it because they are no longer maintained or the current implementation does not support the latest firmata protocol?

advra avatar Dec 10 '19 17:12 advra

@advra I'm the author of the libraries mentioned above. They are not listed, because they are incomplete (at least to my liking). To my knowledge, the Windows version of remote-wiring is no longer actively maintained, but last I knew it worked as intended. The Linux version is feature incomplete. It currently only supports a serial connection over a USB cable; it's missing transport layers for Bluetooth and Network. For those reasons, I have elected to not include them in the list. If you can tell me your specific needs then maybe I can help you get going, or set aside some time to complete the transports you need.

zfields avatar Dec 10 '19 17:12 zfields

@zfields thank you for the explanation. My project will not require Bluetooth but communication over a local network is considered but not a priority. As long as the linux version works such that a Raspberry pi is the host then I can just use the serial USB and delegate the networking tasks to the pi.

advra avatar Dec 10 '19 21:12 advra

@advra That's great! You should be able to use https://remotewiring.com (it redirects to GitHub). Be sure to log issues on remote-wiring and I'll will try and assist you as much as I can!

zfields avatar Dec 10 '19 21:12 zfields

@zfields Thanks! I will be sure to open any issues I come across. (:

advra avatar Dec 11 '19 17:12 advra