Note that there are some explanatory texts on larger screens.

plurals
  1. POCustom Python Twisted protocol : good practices and complexity?
    primarykey
    data
    text
    <p>I am currently working on a control system for Arduino type devices using Twisted,and have a bit of a design issue</p> <p>Here is how things are currently: (sorry in advance, might be a bit long)</p> <ol> <li>to handle different type of devices (each having a different firmware &amp; communication protocol ) i have a designed a "driver" system : <ul> <li>each driver is made of : <ul> <li>a "hardware handler class" : a wrapper around Twsited's <strong>serial</strong> class with a few added helper methods</li> <li>a custom serial protocol</li> </ul></li> </ul></li> </ol> <p>2- While implementing drivers for Reprap 3d printers (also based on arduino, also using a serial connection) with rather specific protocols (ie <strong>enqueue</strong> point, <strong>set</strong> temperature etc), i have started to wonder if i am placing the methods for handling those features (each having specific commands) in the right place..</p> <p>This all leads me to my questions:</p> <p>I am not quite sure about the good practices as far as twisted protocols go , but having looked through the documentation / code of quite a few of them, it seems they tend to have relatively few methods</p> <ul> <li>is this always the case? should the protocol <strong>only</strong> be used for very low level functions and in/out formatting and communication ? </li> <li>certain devices i want to manage have very clearly defined protocols (Makerbot etc), should i consider general protocol specifications to be a different thing then the actual Twisted protocol classes i am creating ? </li> </ul> <p>Any advice, tips and pointers are more than welcome ! Thanks in advance.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload