When running Node-Red in the IBM Cloud, there used to be "IBM IoT in" and "IBM IoT out" nodes which allowed to easily connect to the IBM Watson IoT platform. Many tutorials in the web refer to these nodes. But now, they are no longer available. Where have they gone ? How can you best connect to the IoT platform now ?
You can reinstall the nodes from the https://flows.nodered.org/node/node-red-contrib-scx-ibmiotapp module.
They were removed because there were no longer being maintained by the team who created them and there were a number of outstanding issues.
You can use the core MQTT nodes, although you need to configure them to use the proper topic structure.
Thank you for that hint. But, installing new nodes does not work in the IBM Cloud, at least not when using the documented steps. When I go to Palette, Install, and try to install a Node, I get a null Error. I cannot see any error details anywhere.
Is there a way to install nodes from the library in the IBM Cloud ?
2019-12-01T13:48:47.972Z Install : node-red-contrib-scx-ibmiotapp 0.0.49
2019-12-01T13:48:47.101Z npm install --no-audit --no-update-notifier --save --save-prefix="~" --production node-red-contrib-scx-ibmiotapp@0.0.49
2019-12-01T13:48:48.254Z rc=null
The default image in the lite plan is restricted to just 256Mb of memory. That can cause problems installing some nodes as the npm
command requires more memory to run the install.
The alternative is to enable the continuous delivery feature (via the IBM Cloud dashboard page for your app). This gets you a git repository where you can edit the apps package.json
, add the module (and any others you want) to the dependencies
section and then push your changes back so they get redeployed into your application.
Thank you for the super fast response!
Using continuous delivery and changing package.json worked fine. The IBM IoT In/Out nodes are now available and work fine.
However, in an app called "Node Red starter" it would be nice if it were possible to just wire some nodes together and run. Without having to touch the code off the app itself. When I ran the pipeline for the first time it destroyed the existing flow and credentials.
As an alternative, can I use the existing MQTT nodes, without having to enter the connection parameters ? Can the MQTT node somehow take advantage of the connected Internet of Things service, where the connection/credentials are already defined ? Similar to the imported Nodes; there I only need to specify the Device ID.
Umm, it shouldn't have done that.... will investigate.
No - the MQTT nodes don't know anything about the requirements of the IoT platform.