Comments (14)
sure... this issue is probably a better place for this communication
anyways... i'll repost here:
i'd be interested in helping. What shuttleCP is sending out is not written
in stone - it is writing to a websocket that the Chilipeppr Serial Port
JSON Server uses. If bCNC isn't using websockets, they could be added to
bCNC to be compatible with what SPJS is getting (John has SPJS documented
pretty well on the github page). But, if you aren't going to use
websockets, and shuttleCP will have to change anyway, you could change
shuttleCP to send something simpler to bCNC ( a regular socket perhaps, or
a REST api, whatever is best ). libcurl could be added in to support REST
if that is the way you want to go. Or, you could do something much lighter
weight then going all the way up to http... like a simple udp socket...
FG
On Fri, May 8, 2015 at 1:06 PM, Vasilis Vlachoudis <[email protected]
wrote:
Hi, @chamnit https://github.com/chamnit mentioned that you would like
to connect your shuttleXpress jogging program with bCNC. I would be happy
to help, or provide from the bCNC what is need.
Could you explain me the communication protocol.Cheers
Vasilis—
Reply to this email directly or view it on GitHub
#5.
from shuttlecp.
and the SPJS is documented on the github page here... like I said, all
websocket based: https://github.com/johnlauer/serial-port-json-server
On Fri, May 8, 2015 at 2:45 PM, Frank Graffagnino [email protected]
wrote:
sure... this issue is probably a better place for this communication
anyways... i'll repost here:i'd be interested in helping. What shuttleCP is sending out is not
written in stone - it is writing to a websocket that the Chilipeppr Serial
Port JSON Server uses. If bCNC isn't using websockets, they could be added
to bCNC to be compatible with what SPJS is getting (John has SPJS
documented pretty well on the github page). But, if you aren't going to
use websockets, and shuttleCP will have to change anyway, you could change
shuttleCP to send something simpler to bCNC ( a regular socket perhaps, or
a REST api, whatever is best ). libcurl could be added in to support REST
if that is the way you want to go. Or, you could do something much lighter
weight then going all the way up to http... like a simple udp socket...FG
On Fri, May 8, 2015 at 1:06 PM, Vasilis Vlachoudis <
[email protected]> wrote:Hi, @chamnit https://github.com/chamnit mentioned that you would like
to connect your shuttleXpress jogging program with bCNC. I would be happy
to help, or provide from the bCNC what is need.
Could you explain me the communication protocol.Cheers
Vasilis—
Reply to this email directly or view it on GitHub
#5.
from shuttlecp.
I don't use SPJS but i have already a web server for the web pendant. For the moment it can accept any gcode or any bCNC command and can return in json the grbl status. As for any web server the communication doesn't stay on, it is just a request and you get back a result
from shuttlecp.
yes, exactly. so, a switch could be made in shuttleCP to switch between
SPJS websocket or bCNC web commands. Right now I don't read any feedback,
so you could just send the commands out using libcurl.
FG
On Fri, May 8, 2015 at 3:47 PM, Vasilis Vlachoudis <[email protected]
wrote:
I don't use SPJS but i have already a web server for the web pendant. For
the moment it can accept any gcode or any bCNC command and can return in
json the grbl status. As for any web server the communication doesn't stay
on, it is just a request and you get back a result—
Reply to this email directly or view it on GitHub
#5 (comment).
from shuttlecp.
I've downloaded your program and I will check what you need for the communication.
from shuttlecp.
Look into libcurl. It is probably the easiest way to talk http in C.
FG
Sent from my Android phone
On May 9, 2015 3:11 AM, "Vasilis Vlachoudis" [email protected]
wrote:
I've downloaded your program and I will check what you need for the
communication.—
Reply to this email directly or view it on GitHub
#5 (comment).
from shuttlecp.
Once you start the pendant in bCNC you can send you
gcodes instead of the websocket as
http://localhost:8080 (port defined in the init of bCNC)
with one GET per line e.g.
GET /send?gcode=G90G0X1
from shuttlecp.
Ok. That might do it. It might be good to allow multiple line submissions
in one GET though so there isn't all the overhead to switch between G90 and
G91. For example, if I could put a semicolon between them or some character
that isn't normally in gcode and you could treat it as a newline.
FG
Sent from my Android phone
On May 9, 2015 4:56 PM, "Vasilis Vlachoudis" [email protected]
wrote:
Once you start the pendant in bCNC you can send you
gcodes instead of the websocket as
http://localhost:8080 (port defined in the init of bCNC)
with one GET per line e.g.
GET /send?gcode=G90G0X1—
Reply to this email directly or view it on GitHub
#5 (comment).
from shuttlecp.
Thats a good idea. Semicolon could work and I can split it into multiple lines.
from shuttlecp.
Ok done. You have to checkout the latest version from the repository. I've added so a multiple command should be like
send?gcode=line1%3Bline2%3Bline3 ...
%3B = uri encoded ;
from shuttlecp.
awesome. however... i just did a quick search and found this(
https://github.com/synthetos/TinyG/wiki/Gcode-Support ) which says that
semicolon can also be used to start a comment. This change would be bad in
that case since it would cause code meant to be commented out to be run as
a new statement.
could we change it to something like a uri encoded carriage return (%0D)
instead? this would get away from that case and fix it before anyone
starts using it. also, it kinda seems consistent with what we are trying
to do.
FG
On Mon, May 11, 2015 at 7:48 PM, Vasilis Vlachoudis <
[email protected]> wrote:
Ok done. You have to checkout the latest version from the repository. I've
added so a multiple command should be like
send?gcode=line1%3Bline2%3Bline3 ...
%3B = uri encoded ;—
Reply to this email directly or view it on GitHub
#5 (comment).
from shuttlecp.
Yes no problem I will change. Normally I am filtering the comments before sending to grbl, but the pendant commands are executed unfiltered
from shuttlecp.
For some strange reason the BaseHTTPD server of python doesn't like the %0D. I've put the %0A which is the \n for linux
from shuttlecp.
Sounds good. Hopefully I'll get some time to try putting this into
shuttleCP, but I've got a few other projects going on that I have to
finish. Anyone feel free to put this into shuttleCP and send me a pull
request.
FG
Sent from my Android phone
On May 12, 2015 7:58 AM, "Vasilis Vlachoudis" [email protected]
wrote:
For some strange reason the BaseHTTPD server of python doesn't like the
%0D. I've put the %0A which is the \n for linux—
Reply to this email directly or view it on GitHub
#5 (comment).
from shuttlecp.
Related Issues (10)
- add support for broadcast command in SPJS
- Script on startup? HOT 5
- Add in ability to drive Raspi LEDs and read switches
- Device path and host/port shouldn't be hardcoded
- add in hotplug support for shuttle controller
- Connection issue shuttleCP to SPJS HOT 3
- How can i deactivate wiringPi? HOT 3
- Timed out waiting for connection to become ready HOT 12
- add support for Mac
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from shuttlecp.