Skip to content

Commit

Permalink
Added libmodbus
Browse files Browse the repository at this point in the history
  • Loading branch information
thiagoralves committed Jun 16, 2016
1 parent dda31c2 commit a7202c3
Show file tree
Hide file tree
Showing 110 changed files with 12,973 additions and 0 deletions.
8 changes: 8 additions & 0 deletions libmodbus_src/AUTHORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
Stéphane Raimbault <[email protected]>
Tobias Doerffel <[email protected]> - CLA
Florian Forster <[email protected]>
oldfaber <[email protected]>
Hannu Vuolasaho <[email protected]> - CLA
Michael Heimpold <[email protected]> - CLA
Jimmy Bergström <[email protected]> - CLA
Jakob Bysewski <[email protected]> - CLA
29 changes: 29 additions & 0 deletions libmodbus_src/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
How Do I Submit A Good Bug Report?
----------------------------------

Please, don't send direct emails to Stéphane Raimbault unless you want
commercial support.

Take care to read the documentation at http://libmodbus.org/documentation/.

- *Be sure it's a bug before creating an issue*, in doubt, post a message on
https://groups.google.com/forum/#!forum/libmodbus or send an email to
[email protected]

- *Use a clear and decriptive title* for the issue to identify

- *Which version of libmodbus are you using?* you can obtain this information
from your package manager or by running `pkg-config --modversion libmodbus`.
You can provide the sha1 of the commit if you have fetched the code with `git`.

- *Which operating system are you using?*

- *Describe the exact steps which reproduce the problem* in as many details as
possible. For example, the software/equipement which runs the Modbus server, how
the clients are connected (TCP, RTU, ASCII) and the source code you are using.

- *Enable the debug mode*, libmodbus provides a function to display the content
of the Modbus messages and it's very convenient to analyze issues
(http://libmodbus.org/docs/latest/modbus_set_debug.html).

Good bug reports provide right and quick fixes!
502 changes: 502 additions & 0 deletions libmodbus_src/COPYING.LESSER

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions libmodbus_src/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
### libmodbus version

### Operating system

### Description of the Modbus network (server, client, links, etc)

### Expected behavior

### Actual behavior

### Steps to reproduce the behavior (commands or source code)

### libmodbus output with debug mode enabled
53 changes: 53 additions & 0 deletions libmodbus_src/MIGRATION
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
=============================================
Migration notes from the 2.0 series (for 3.0)
=============================================

The 3.0 release use a brand new API and this document covers only the general
changes:

- the structure modbus_param_t is gone and is replaced by a new opaque and
dynamically allocated structure modbus_t.

- the slave argument is no more an argument of the Modbus functions, you need to
call modbus_set_slave first.

- the public header file is smaller so some internal defines aren't accessible
anymore.

- all function and constants are respectively prefixed by modbus_ or MODBUS_.

- the POSIX error conventions are used (if an error occured, -1 or NULL is
returned and errno is set accordingly).

- coil status and discretes inputs are just bits and force/preset actions have
been renamed to write actions.

We hope you'll enjoy the new API to accept the migration burden!

=============================================
Migration notes from the 1.2 series (for 2.0)
=============================================

Init
====

modbus_init_tcp requires a third new argument, the port number.

modbus_init_tcp(modbus_param_t *mb_param, char *ip_address, int port)

Set the port to MODBUS_TCP_DEFAULT_PORT to use the default one
(502). It's convenient to use a port number greater than or equal to
1024 because it's not necessary to be root to use this port number.


Pointers of data
================

The coil and input status are now stored in an array of type uint8_t
(in 1.2.X series, array of type int was used). So now, you need to
pass a pointer of type uint8_t to use read_coil_status(), for example.

The holding and input registers are now stored in an array of type
uint16_t.

These changes reduce the memory consumption.
16 changes: 16 additions & 0 deletions libmodbus_src/Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
CLEANFILES =
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
AM_MAKEFLAGS = --no-print-directory

pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libmodbus.pc
EXTRA_DIST = libmodbus.pc.in
CLEANFILES += libmodbus.pc

dist_doc_DATA = MIGRATION README.md

SUBDIRS = src doc

if BUILD_TESTS
SUBDIRS += tests
endif
Loading

0 comments on commit a7202c3

Please sign in to comment.