Summer of Code - Getting Started: Difference between revisions

Jump to navigation Jump to search
Line 186: Line 186:
=== Low-Level I/O ===
=== Low-Level I/O ===


Octave currently provides file I/O and sockets for communicating with the outside world. Octave is currently not capable of communicating over serial interfaces (RS232) or, for example, I2C and CAN (although an workaround for serial I/O exists, however the author could never get it to work in an acceptable way). The project would provide communication interfaces in octave, allowing octave to directly communicate with measurement systems, data acquisition systems, sensors, robotic systems and the like.  
Octave currently provides file I/O and sockets for communicating with the outside world. Also, the [[instruments control package]] provides basic interfaces for RS232, I2C and the Parallel port. The project would extend the current communication interfaces in octave, allowing octave to directly communicate with measurement systems, data acquisition systems, sensors, robotic systems and the like.  


RS232 interfaces are often deemed "legacy", however there is not only an enormous amount of expensive, existing instrumentation equipment out there, still using RS232, but due to the simplicity it is still common in new embedded systems, often bridged via USB providing a virtual com port.
Potential interfaces to support could, for example, be GPIB, USB HID, USBTMC, CAN, LIN, SPI. One initial task of the student would be to select a subset of these standards to support, taking, for example, existing drivers into account.
 
Potential interfaces to support could, for example, be RS232, I2C, CAN, LIN, SPI, parallel port, GPIB, USB HID, USBTMC. One initial task of the student would be to select a subset of these standards to support, taking, for example, existing drivers into account.


'''Required skills''': C++, system programming knowledge, knowledge of Octave's current handling of file descriptors.
'''Required skills''': C++, system programming knowledge, knowledge of Octave's current handling of file descriptors.
Line 196: Line 194:
'''Difficulty''': Mostly medium, depending depending on existing driver support and experience with the protocols
'''Difficulty''': Mostly medium, depending depending on existing driver support and experience with the protocols


'''Potential mentor''': Michael Godfrey (?)
'''Potential mentors''': Michael Godfrey(?), Andrius Sutas(?), Juan Pablo carbajal
657

edits

Navigation menu