Command line interface tools used to maintain or simulate VSCP nodes.
The Very Simple Control Protocol (VSCP), an open and free protocol for IoT/m2m automation tasks.
More information can be found on the main site http://www.vscp.org
| Project | Description |
|---|---|
| logger | Tool which shows VSCP events on the command line, which are received by a daemon connection. |
| nodeSim | Simulates a single VSCP node. It can be called several times with different configurations to simulate more than one VSCP node. |
| programmer | Tool to program VSCP nodes over a VSCP daemon connection. It uses the VSCP standard bootloader algorithm. |
- Open a terminal.
- Call
setup_linux.sh
-
Install MSYS2 (https://www.msys2.org/) and follow the complete installation instructions there. Only installing the MSYS2 binary is not enough! There are several steps in the MSYS2 shell necessary.
-
The gcc build environment will be available in the "MSYS2 MinGW UCRT 64-bit" shell. Use this shell for all following steps and for building.
-
Install the tool chain and the expat package:
pacman -S mingw-w64-ucrt-x86_64-gcc pacman -S mingw-w64-ucrt-x86_64-make pacman -S mingw-w64-ucrt-x86_64-expat
-
Install the required visual studio runtime package, which the VSCP helper library depends on:
The vscp-framework is added as git submodule. Therefore use:
git clone --recursive https://github.com/BlueAndi/vscp-cli-tools.gitIf already cloned and just a update of the vscp-framework shall be done, use:
git submodule update --remoteChoose the project by entering the corresponding folder, e.g. /nodeSim.
Build debug variant with make debug or use make release for the release variant.
The result will be in the /<project>/bin folder.
On windows the MSYS2 MinGW UCRT 64-bit environment provides mingw32-make, therefore use mingw32-make debug resp. mingw32-make release there.
| Library | Description | License |
|---|---|---|
| Expat | Fast streaming XML parser. | MIT |
| OpenSSL | OpenSSL is a robust, commercial-grade, full-featured Open Source Toolkit for the TLS (formerly SSL), DTLS and QUIC (currently client side only) protocols. | Apache-2.0 |
| vscp-helper-lib | VSCP helper functionality (v15.2.242) | MIT |
The VSCP helper library is not installed system wide, but part of this repository in /common/vscphelper. Its headers are taken over from the upstream release without modification, see /common/vscphelper_compat.h for the workarounds which are necessary on top. The shared libraries are copied next to the binary during the build, therefore no further installation is required.
The prebuilt binaries are taken from the vscp-helper-lib releases. For v15.2.242 these are:
File in /common/vscphelper |
Origin |
|---|---|
*.h |
libvscphelper_windows_x64_15.2.242.zip, include/ |
lib/win64/libvscphelper15.dll |
libvscphelper_windows_x64_15.2.242.zip, lib/ |
lib/linux/libvscphelper15.so |
libvscphelper_linux_x64_15.2.242.deb, usr/lib/x86_64-linux-gnu/ |
The headers in the Debian package and in the Windows archive are identical.
Note that the Windows release archive contains neither an import library nor all DLLs which libvscphelper15.dll depends on. Therefore:
- The tools link directly against the DLL, see
-l:libvscphelper15.dllin the makefiles. libcrypto-3-x64.dllandlibssl-3-x64.dllare taken from the MSYS2 MinGW UCRT 64-bit environment (/ucrt64/bin), provided by themingw-w64-ucrt-x86_64-opensslpackage.libexpat.dllandpthreadVCE3.dllare still the ones which were delivered with v15.0.0.
The Microsoft Visual C++ runtime DLLs are not part of the repository, because they are installed by the visual studio runtime package, see the Windows prerequisites.
If you have further ideas or you found some bugs, great! Create a issue or if you are able and willing to fix it by yourself, clone the repository and create a pull request.
The whole source code is published under the MIT license.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be licensed as above, without any additional terms or conditions.
