Go to file
Henrik Lindblom 01757cfd32 modbus: add support for defining custom functions
Enables support for custom function codes. Modbus specification allows
vendor specific function codes in the range 65-72 & 100-110 [1] and this
feature allows users to implement custom logic for those codes.
Additionally, since the Zephyr Modbus stack doesn't implement all defined
Modbus fcs this feature allows users to add support for codes outside the
basic register reading / writing functionality offered by Zephyr.

Custom function codes can be added on a per-interface basis and the handler
structures are allocated by the caller.

[1]: https://modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2023-09-29 13:05:42 +02:00
.github actions: greet: Update the PR greeting text 2023-09-27 09:29:41 +01:00
arch arch: arm: cortex_m: restrict usage of atomic_operations_c for Cortex-m0/+ 2023-09-29 10:34:20 +02:00
boards boards: arm: nucleo_u5a5zj_q: add nucleo u5a5zj q board 2023-09-29 10:34:33 +02:00
cmake cmake: warn the user that the toolchain cache hides errors 2023-09-22 13:42:21 +02:00
doc doc: twister: add chapter about managing tests timeouts 2023-09-29 12:59:31 +02:00
drivers drivers: sensor: npm1300_charger: Correct temperature order of magnitude 2023-09-29 11:57:23 +02:00
dts dts: arm: st: u5: add stm32u5a5 dtsi 2023-09-29 10:34:33 +02:00
include/zephyr modbus: add support for defining custom functions 2023-09-29 13:05:42 +02:00
kernel kernel: fatal: Remove redundant function 2023-09-29 13:05:13 +02:00
lib kernel: rename z_current_get() to k_sched_current_thread_query() 2023-09-28 16:15:46 +02:00
misc
modules modules/MCUboot: Add overwrite mode for MCUboot 2023-09-28 16:27:45 +02:00
samples samples: led_ws2812: adjustable led update delay 2023-09-29 12:59:04 +02:00
scripts twister: introduce twister-level timeout multiplier 2023-09-29 12:59:31 +02:00
share sysbuild: Do not exclude images from domains.yaml 2023-09-27 17:49:12 +02:00
snippets snippets: xen_dom0: add support for Renesas R-Car Gen3 boards 2023-09-15 11:15:00 +01:00
soc soc: arm: st_stm32: stm32u5: add stm32u5a5 soc 2023-09-29 10:34:33 +02:00
submanifests
subsys modbus: add support for defining custom functions 2023-09-29 13:05:42 +02:00
tests tests: bsim: Bluetooth: Remove bsim testing of broadcast create inval 2023-09-29 12:59:54 +02:00
.checkpatch.conf
.clang-format clang-format: flag *_SECTION_FOREACH as for loop 2023-05-26 11:04:54 -05:00
.codecov.yml
.editorconfig
.gitattributes
.gitignore scripts: compliance: add a check for missing west area maintainer enties 2023-09-14 08:13:57 -07:00
.gitlint .gitlint: de-duplicate defaults with zephyr_commit_rules.py 2023-09-21 09:29:24 +02:00
.mailmap mailmap: sort alphabetically 2023-05-15 13:23:32 -04:00
.yamllint
CMakeLists.txt cmake: skip build time priority checking with armclang 2023-09-20 20:24:46 +01:00
CODE_OF_CONDUCT.md
CODEOWNERS MAINTAINERS: Update maintainers/codeowners for conn_mgr docs 2023-09-28 15:11:14 +02:00
CONTRIBUTING.rst
Kconfig
Kconfig.zephyr cmake: skip build time priority checking with armclang 2023-09-20 20:24:46 +01:00
LICENSE
MAINTAINERS.yml MAINTAINERS: Adding ithinuel as Arm collaborator 2023-09-29 11:57:35 +02:00
README.rst
VERSION release: bump main to v3.4.99 2023-06-16 13:29:34 -04:00
version.h.in kernel: banner: Allow for customising version 2023-08-21 10:09:46 +02:00
west.yml soc: nxp_s32: enable RTU.PIT timers for S32ZE 2023-09-29 09:47:35 +02:00
zephyr-env.cmd
zephyr-env.sh

.. raw:: html

   <a href="https://www.zephyrproject.org">
     <p align="center">
       <picture>
         <source media="(prefers-color-scheme: dark)" srcset="doc/_static/images/logo-readme-dark.svg">
         <source media="(prefers-color-scheme: light)" srcset="doc/_static/images/logo-readme-light.svg">
         <img src="doc/_static/images/logo-readme-light.svg">
       </picture>
     </p>
   </a>

   <a href="https://bestpractices.coreinfrastructure.org/projects/74"><img
   src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
   <a
   href="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml?query=branch%3Amain">
   <img
   src="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml/badge.svg?event=push"></a>


The Zephyr Project is a scalable real-time operating system (RTOS) supporting
multiple hardware architectures, optimized for resource constrained devices,
and built with security in mind.

The Zephyr OS is based on a small-footprint kernel designed for use on
resource-constrained systems: from simple embedded environmental sensors and
LED wearables to sophisticated smart watches and IoT wireless gateways.

The Zephyr kernel supports multiple architectures, including ARM (Cortex-A,
Cortex-R, Cortex-M), Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V,
SPARC, MIPS, and a large number of `supported boards`_.

.. below included in doc/introduction/introduction.rst


Getting Started
***************

Welcome to Zephyr! See the `Introduction to Zephyr`_ for a high-level overview,
and the documentation's `Getting Started Guide`_ to start developing.

.. start_include_here

Community Support
*****************

Community support is provided via mailing lists and Discord; see the Resources
below for details.

.. _project-resources:

Resources
*********

Here's a quick summary of resources to help you find your way around:

* **Help**: `Asking for Help Tips`_
* **Documentation**: http://docs.zephyrproject.org (`Getting Started Guide`_)
* **Source Code**: https://github.com/zephyrproject-rtos/zephyr is the main
  repository; https://elixir.bootlin.com/zephyr/latest/source contains a
  searchable index
* **Releases**: https://github.com/zephyrproject-rtos/zephyr/releases
* **Samples and example code**: see `Sample and Demo Code Examples`_
* **Mailing Lists**: users@lists.zephyrproject.org and
  devel@lists.zephyrproject.org are the main user and developer mailing lists,
  respectively. You can join the developer's list and search its archives at
  `Zephyr Development mailing list`_. The other `Zephyr mailing list
  subgroups`_ have their own archives and sign-up pages.
* **Nightly CI Build Status**: https://lists.zephyrproject.org/g/builds
  The builds@lists.zephyrproject.org mailing list archives the CI nightly build results.
* **Chat**: Real-time chat happens in Zephyr's Discord Server. Use
  this `Discord Invite`_ to register.
* **Contributing**: see the `Contribution Guide`_
* **Wiki**: `Zephyr GitHub wiki`_
* **Issues**: https://github.com/zephyrproject-rtos/zephyr/issues
* **Security Issues**: Email vulnerabilities@zephyrproject.org to report
  security issues; also see our `Security`_ documentation. Security issues are
  tracked separately at https://zephyrprojectsec.atlassian.net.
* **Zephyr Project Website**: https://zephyrproject.org

.. _Discord Invite: https://chat.zephyrproject.org
.. _supported boards: http://docs.zephyrproject.org/latest/boards/index.html
.. _Zephyr Documentation: http://docs.zephyrproject.org
.. _Introduction to Zephyr: http://docs.zephyrproject.org/latest/introduction/index.html
.. _Getting Started Guide: http://docs.zephyrproject.org/latest/develop/getting_started/index.html
.. _Contribution Guide: http://docs.zephyrproject.org/latest/contribute/index.html
.. _Zephyr GitHub wiki: https://github.com/zephyrproject-rtos/zephyr/wiki
.. _Zephyr Development mailing list: https://lists.zephyrproject.org/g/devel
.. _Zephyr mailing list subgroups: https://lists.zephyrproject.org/g/main/subgroups
.. _Sample and Demo Code Examples: http://docs.zephyrproject.org/latest/samples/index.html
.. _Security: http://docs.zephyrproject.org/latest/security/index.html
.. _Asking for Help Tips: https://docs.zephyrproject.org/latest/develop/getting_started/index.html#asking-for-help