Skip to content

zone11/librosco

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

------------
librosco
https://github.com/colinbourassa/librosco

Download releases:
http://github.com/colinbourassa/librosco/releases/latest

Discussion group:
https://groups.google.com/forum/#!forum/mems-diagnostics
------------

librosco is a cross-platform library that is capable of communicating with
certain versions of the Rover Modular Engine Management System (MEMS) via the
ECU's diagnostic port. Only MEMS units that speak the ROSCO protocol are
supported (e.g. MEMS 1.6).

A special cable is required to connect to the ECU. This is detailed on the
following page:

https://github.com/colinbourassa/librosco/blob/wiki/HardwareInterface.md

The library itself has no user interface and requires a front-end application
to display data. Included in this archive is a simple command line utility
(named "readmems") which uses the library to retrieve data and test actuators.
The MEMSGauge project provides a graphical front-end:

https://github.com/colinbourassa/memsgauge

Comments, questions, bug reports, and bugfixes should be directed to
colin.bourassa@gmail.com. Please include the version number of the library in
any correspondence.

-------
License
-------
librosco is licensed under the GPL v3. See the file "LICENSE" for details.

----------
Disclaimer
----------
While this software has been shown to be reliable and is provided in good
faith, it is provided with ABSOLUTELY NO WARRANTY.

---------
Changelog
---------
0.1.7: Added support for more data fields
       Fixed win32 build
       Renamed library to "librosco"
0.1.1: Bugfix in initial connect sequence
0.1.0: Initial release

-------------
Compatibility
-------------
librosco has been tested under Linux (Ubuntu 14.04, AMD64), but can be
build from source on many different operating systems.

--------------------------------
Building the library from source
--------------------------------
The librosco library can be built using Linux, BSD, OS X, or Windows.

Note that the makefile generated by CMake will produce output appropriate for
the operating system. In Linux, the output is a dynamic shared object (DSO)
file, named something like "librosco.so.0.1.0". In Windows, the output is a DLL,
named something like "librosco.dll".

CMake can be obtained from www.cmake.org, and MinGW from www.mingw.org.


== Building for Linux / BSD / OS X ==

The following software is required:

* CMake (>= 2.8)
* gcc (or equivalent)
* make

From the directory containing the librosco source code, execute the
following:

$ cmake .
$ make
$ sudo make install

Running the 'make install' directive will copy the header files to /usr/include
and the shared library to /usr/lib. These directories can be changed by editing
CMakeLists.txt and re-running "cmake ." and "make install". You may want to do
this if you do not have superuser/administrator privileges on the machine.


== Building for Windows ==

A Windows build requires the following software:

* CMake (>= 2.8)
* MinGW

Note that the MinGW Project also provides "MSYS", which is a more complete GNU
environment; installation of MSYS is _not_ necessary to build librosco.

After CMake and MinGW are installed, run the following commands from a command
prompt in the directory containing the librosco source:

 cmake . -G "MinGW Makefiles"
 make
 make install

Note: the 'install' directive under Windows will copy the output DLL, readmems
executable, and header files to C:\mems-rosco by default. If the user running
the 'make install' step does not have write permissions at C:\, this step may
fail.

------------------------------------------------
Notes for those developing frontends to librosco
------------------------------------------------
Because Windows still uses legacy DOS names for certain devices (such as COM
ports), there are restrictions on how such devices may be manipulated by code.
In order to open COM ports beyond COM9, Windows I/O calls (such as CreateFile())
require use of the prefix "\\.\" on the device name, as in "\\.\COM10". (Also
note that the backslashes must be properly escaped where appropriate.)

(EOF)

About

Communication library for Rover MEMS "ROSCO" engine management diagnostics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 80.2%
  • CMake 17.5%
  • Roff 2.3%