Freeboard Plugin for Node RED

2,851 views
Skip to first unread message

urbi...@gmail.com

unread,
Feb 21, 2015, 5:57:20 AM2/21/15
to node...@googlegroups.com
I just created a Freeboard Plugin for Node RED which easily allows to send information available in Node RED (Mongo DB etc.) to freeboard (which comes bundled with this node, no need to install it yourself).

More information here: Github Freeboard Node RED Plugin

ryan...@gmail.com

unread,
Feb 21, 2015, 8:39:14 AM2/21/15
to node...@googlegroups.com
Really excellent contribution, thank you! :)

Ryan

Giovanni Angoli

unread,
Feb 21, 2015, 10:25:50 AM2/21/15
to node...@googlegroups.com

@urbiworx: I've opened an issue on github, since it seems that datasource.lib got lost prior to publishing the repo and the npm package.


--
http://nodered.org
---
You received this message because you are subscribed to the Google Groups "Node-RED" group.
To unsubscribe from this group and stop receiving emails from it, send an email to node-red+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Giovanni Angoli

urbi...@gmail.com

unread,
Feb 21, 2015, 11:17:55 AM2/21/15
to node...@googlegroups.com
Hi,
thanks for your comment, I renamed the file, hopefully that solves the issue? 
Somehow the .lib file just didnt get picked up...
 However it should have been in the npm package as I installed it on a remote server myself.

Peter Scargill

unread,
Feb 21, 2015, 1:22:58 PM2/21/15
to node...@googlegroups.com
This is great - just what I was looking for - I wonder if you can help as I don't really understand how the object is being used.

So I plugged the object example into the INJECT function - and passed that through a JASON box into your Freeboard  box.

When I go to add the guage I get the option to use the freeboard - then a choice of [0] [1]or [2]  and then some other stuff.. could you give a much simplified example object? I cannot figure out how to get to that randonly generated object??

Pete.

Giovanni Angoli

unread,
Feb 21, 2015, 2:05:51 PM2/21/15
to node...@googlegroups.com
@urbiworx I've tried both the npm package and the git repo previously but the error was the same. Anyway npm package version 0.0.2 fixed the issue I was having.
Thanks for the quick response!

urbi...@gmail.com

unread,
Feb 21, 2015, 5:58:43 PM2/21/15
to node...@googlegroups.com

@Giovanni: thanks for reporting
@peter: I am afraid I do not understand what you exactly mean, can you please exactly follow the documentation at github and describe at what steps you are experiencing what issues.

Peter Scargill

unread,
Feb 21, 2015, 6:14:14 PM2/21/15
to node...@googlegroups.com

Hi

 

I followed the exact example….

 

I found it impossible to select the item that produces a random value.

 

I used a the INJECT module to present your code – fed that through the JASON module to your module. Is that what I should have done?

 

Pete.

--
http://nodered.org
---
You received this message because you are subscribed to a topic in the Google Groups "Node-RED" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/node-red/YshvGTcNuLg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to node-red+u...@googlegroups.com.

urbi...@gmail.com

unread,
Feb 22, 2015, 4:13:53 AM2/22/15
to node...@googlegroups.com, pe...@scargill.org
Hi,

what is it that you do not find? 
The entry when you want to add a datasource to freeboard ("[Node RED] Freeboard") or the entry when you want to add the datasource to a widget ("Node RED Random Value")?

ryan...@gmail.com

unread,
Feb 22, 2015, 6:36:36 AM2/22/15
to node...@googlegroups.com, pe...@scargill.org
Hi Pete,

Are you not using a function node? That is where the randoms are generated, you won't be able to do that directly from the inject node. 

Easiest option is to copy the entire JSON flow example string on the git readme and import it from clipboard into Node Red, then you'll have everything ready to go.

Ryan

ryan...@gmail.com

unread,
Feb 22, 2015, 12:13:15 PM2/22/15
to node...@googlegroups.com
Hi,

I've noticed that the pointer widget renders differently compared to the freeboard hosted version - online the radius fills the pane and the value text is located inside the circle, in this version the radius is tiny and the text is located outside of the circle. I'd like to replicate the online version, are you able to help? I've tried editing pointerWidget attributes in freeboard.widgets.js but I don't see any changes.

Many thanks,
Ryan

On Saturday, February 21, 2015 at 10:57:20 AM UTC, urbi...@gmail.com wrote:

urbi...@gmail.com

unread,
Feb 23, 2015, 1:53:02 PM2/23/15
to node...@googlegroups.com
If you edit freeboard.plugins.js please make sure to load the non-minfied version of this file in /freeboard/index.html 

ryan...@gmail.com

unread,
Feb 23, 2015, 3:20:28 PM2/23/15
to node...@googlegroups.com
Ah, I see. Thank you, its working perfectly now.

Ryan.

Julian Knight

unread,
Feb 28, 2015, 6:50:10 AM2/28/15
to node...@googlegroups.com
Hi, I've installed your plugin and it has loaded but when I use your example flow and click on the link in the help, I get:

    Cannot GET /red/freeboard

I have NR running embedded in my own app and, as you can see, the admin console is set to run under /red on port 8080.

Can you suggest anything?

Regards, Julian.

Shem Jamieson

unread,
Apr 2, 2015, 8:24:25 PM4/2/15
to node...@googlegroups.com
Excellent plugin and instructions, thanks!

Does anyone know if there is an easy way to remove the spanner icon at the top of a Freeboard (for fullscreen viewing zen)?

Also a small request for aesthetics sake, maybe change the color of the node to orange or grey to suit the Freeboard look, and change the icon to something like this perhaps: http://fortawesome.github.io/Font-Awesome/icon/desktop/ ?

Shem Jamieson

unread,
Apr 3, 2015, 12:59:01 AM4/3/15
to node...@googlegroups.com
Oh, I just worked out how to remove the spanner icon... Which leads to another small request for this Freeboard node; Make an option in the node's configuration to change the allow_edit flag in the boards .json file to true or false.

Gonki

unread,
Apr 5, 2015, 3:33:11 AM4/5/15
to node...@googlegroups.com
I coded a function using your plugin for Freeboard. I send an HTTP GET request to NR flow where a parameter is forwarded to Freeboard dash and its value is echoed there. The plugin somehow does not echo new values in Freeboard once out of every 3-5 times another HTTP GET request is made. It behaves correctly if I manually click "refresh" button next to datasources.

Is this expected behavior? Is there an api call to refresh a DS?


Thnx,
Gonki

Fia Schütz

unread,
Apr 23, 2015, 6:16:42 AM4/23/15
to node...@googlegroups.com
Hi,

what if I don't have my freeboard on xxx.xxx.xx.xxx/freeboard? if I try xxx.xxx.xx.xxx:1880/freeboard (ie when following the link in the info-tab in NR) I get "Cannot GET /freeboard" 

installed it and it works just fine in NR, no error message or so...

I have NR thethingbox on a pi2, is it thethingbox that messes it up?

any ideas?

Dave Beck

unread,
Jun 3, 2015, 3:10:25 AM6/3/15
to node...@googlegroups.com
Having the same problem.  Most recently, I tried doing the npm install in 

/root/thethingbox/node_modules/node-red

The ThingBox

unread,
Jun 3, 2015, 5:18:57 AM6/3/15
to node...@googlegroups.com
May be you can add "api" in the path

xxx.xxx.xx.xxx/api/freeboard (also try with the port)

Fia Schütz

unread,
Jun 5, 2015, 2:20:07 AM6/5/15
to node...@googlegroups.com

This worked for me

192.168.xx.xxx:1880/api/freeboard/

Thanks

Sent using CloudMagic

On ons, jun 03, 2015 at 11:19 AM, The ThingBox <theth...@gmail.com> wrote:

May be you can add "api" in the path

xxx.xxx.xx.xxx/api/freeboard (also try with the port)

--

Fia Schütz

unread,
Jun 5, 2015, 10:23:12 AM6/5/15
to node...@googlegroups.com
now to next problem...

it will not save the dashboard, or rather, save it somewhere it will find it again.

now its saved in /root/thethingbox/node_modules/node-red/freeboard_start-xxxxx.json but it will not reload.

seems like I have to change a path somewhere, any ideas?



Den fredag 5 juni 2015 kl. 08:20:07 UTC+2 skrev Fia Schütz:

This worked for me

192.168.xx.xxx:1880/api/freeboard/

Thanks

Sent using CloudMagic

On ons, jun 03, 2015 at 11:19 AM, The ThingBox <theth...@gmail.com> wrote:

May be you can add "api" in the path

xxx.xxx.xx.xxx/api/freeboard (also try with the port)

--
http://nodered.org
---
You received this message because you are subscribed to a topic in the Google Groups "Node-RED" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/node-red/YshvGTcNuLg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to node-red+unsubscribe@googlegroups.com.

The ThingBox

unread,
Jun 7, 2015, 3:55:19 AM6/7/15
to node...@googlegroups.com
I know nothing about freeboard. I Hope there is a setting to set the save path. In this case it should be put outside of nodered, in /root/userdir

Adrian Brown

unread,
Jun 8, 2015, 5:18:40 PM6/8/15
to node...@googlegroups.com
so how do you remove the spanner icon

Shem Jamieson

unread,
Jun 8, 2015, 7:04:12 PM6/8/15
to node...@googlegroups.com
Hey Adrian, to remove spanner icon edit the .json file for the board eg. freeboard_MYBOARD.json and change the "allow_edit" field (it's near the start) from 'true' to 'false'.

If this was an option you could tick within Node-red it would be much nicer!

Juan Sancho

unread,
Jun 9, 2015, 4:53:28 AM6/9/15
to node...@googlegroups.com
Hello,

I'm trying to use the SAVE FREEBOARD functionality but it doesn't seem to create any freeboard_start-xxxxx.json anywhere. Please, how could I debug this behaviour?

BR

Adrian Brown

unread,
Jun 9, 2015, 6:41:27 AM6/9/15
to node...@googlegroups.com
Thanks

Sent from my iPad

> On 9 Jun 2015, at 9:04 am, Shem Jamieson <shem...@gmail.com> wrote:
>
> the

Juan Sancho

unread,
Jun 10, 2015, 6:19:48 AM6/10/15
to node...@googlegroups.com
Hello,
When you press the "Save Freeboard" button, do you get a .json file created somewhere? I can't make this work, maybe is due to some write permissions?

Juan Sancho

unread,
Jun 10, 2015, 7:04:35 AM6/10/15
to node...@googlegroups.com
Ok, solved.

· If you install node-red-contrib-freeboard globally, then it doesn't work.
· If you install node-red-contrib-freeboard inside your user's directory, then it works, BUT, if you changed the 'httpNodeRoot' property to something distinct than '/' in settings.js, then the 'Save Freeboard' funtionality creates the .json file but it doesn't load it.

So, for now, I must set httpNodeRoot again tu '/'.

Hope it helps someone :-)

CastlePete

unread,
Jun 11, 2015, 11:59:57 AM6/11/15
to node...@googlegroups.com
Having the same problem here - I can't save "freeboard dashboards" via node red on a R.Pi. (All installed via "thethingbox")
I can make the dashboard and it all communicates OK and I can see they are saved  as   "/root/userdir/freeboard_start-XXXXX.json"   but after a screen refresh, the new dashboard can't be re-retrieved for display in a web browser using    "....:1880/api/freeboard/#start-XXXXX". All I see is the default "freeboard create" Website.
At the moment, I'm unsure which directory I shouldinstall the following to   "npm install node-red-contrib-freeboard"
A lot of info out there just says "install in root directory" - but what is that directory? 

For those that have had success, which directory should be used?
is it    /root/userdir
or     /root/thethingbox/
or /root/thethingbox/node_modules/node-red
Appreciate any help - thanks

Juan Sancho

unread,
Jun 11, 2015, 12:27:30 PM6/11/15
to node...@googlegroups.com
Hi,

I'm not using that ThingBox thing, I'd rather prefer to install everything from scratch using a bare-metal raspbian distro. So in my scenario, I've installed node-red-contrib-freeboard into my UserDir directory, so:

$ cd /home/user/.node-red/
or,
$ cd /home/user/.node-red/node_modules

Then,
$ npm install node-red-contrib-freeboard

In either case, NPM will install the module in
$ cd /home/user/.node-red/node_modules/

Take care that I'm launching Node-RED as:
$ /usr/bin/node-red --settings /home/user/.node-red/settings.js --userDir /home/user/.node-red/

Hope it helps.

CastlePete

unread,
Jun 11, 2015, 1:36:57 PM6/11/15
to node...@googlegroups.com

On Thursday, June 11, 2015 at 5:27:30 PM UTC+1, Juan Sancho wrote:
Hi,

I'm not using that ThingBox thing, I'd rather prefer to install everything from scratch using a bare-metal raspbian distro. So in my scenario, I've installed node-red-contrib-freeboard into my UserDir directory,
 
Thanks Juan - It does help. I've now tried reflashing the R.Pi. with a new "thethingbox" image,  and after installing the npm to the "node-red" folder, I still get the same thing :( i.e. all ok, except, I can;t automatically retrieve the JSON 
 
N.B. I looked at the "Console" panel (by pressing the "3 bars" box on the top right), and I can see that it says this
         [info] User Directory : /root/userdir/
         [info] Flows file        : /root/userdir/flows.json
I'm now thinking that most of it is installed OK, but there's a little config missing somewhere  - for the bit that knows where to look for the saved JSON.
Please can you do me a favour and check what your "console" says?
I'm thinking I need to apply the "User Directory" setting to Freeboard config (wherever that is)
thanks a lot for helping! 
 

Juan Sancho

unread,
Jun 11, 2015, 3:54:26 PM6/11/15
to node...@googlegroups.com
Hi,

I don't have that "Console" panel, do you mean the "Debug tab"? Anyway, a look to my log file and it shows:
[info] User Directory : /home/user/.node-red/
[info] Flows file     : /home/user/.node-red/flows.json

As I said before, try to set your userDir to a different one, launch Node-RED, it will create some dirs, then install node-red-contrib-freeboard in it, then restart node-red and see what happens.

CastlePete

unread,
Jun 12, 2015, 4:26:43 AM6/12/15
to node...@googlegroups.com
Hi Juan, thanks for the feedback - I've found a workaround for the time being - so just posting here for ref.
i.e. its one way to see the saved dashboard json (with "thethingbox" and "freeboard" on a R.Pi)

When the json is created after the dashboard is saved, copy the json ( it will be something like "freeboard_start-XXXXX.json")  
from    /root/userdir 
to        /root/thethingbox/node_modules/node-red/node_modules/node-red-contrib-freeboard/freeboard  

and use http://[your_ip]:1880/api/freeboard/index.html?load=freeboard_start-XXXXX.json

To do this, log on to the r.Pi, and execute the following 2 commands in "terminal" (Just copy and paste from here, but change the XXXXX to the correct number)  

sudo bash
cp /root/userdir/freeboard_start-XXXXX.json /root/thethingbox/node_modules/node-red/node_modules/node-red-contrib-freeboard/freeboard/freeboard_start-XXXXX.json

Of course, I would rather get it working properly with the '....freeboard/#start-XXXXX" , 
If someone knows how (with thethingbox), please can you share? in the meantime, I will try to see if I can get this bit working too

CastlePete

unread,
Jun 12, 2015, 8:56:47 AM6/12/15
to node...@googlegroups.com
I meant to say that before I installed the "NPM". I went to this directory (for installing on "thethingbox")
/root/thethingbox/node_modules/node-red

I've not managed to find an answer to the "start-XXXXX", so for the time being, Copying the .JSON and using "......1880/api/freeboard/index.html?load=...." will have to do for now.

Would be great if someone could find an answer for this linux installation and post back here?

 

Mark Setrem

unread,
Jun 12, 2015, 10:07:29 AM6/12/15
to node...@googlegroups.com
I hate to say it but the easy solution is to move over to using the standard node-red installation and stop using the thingbox disk image that includes Node-red amongst other things.

The Thingbox appear to have made some modifications to node-red which makes it hard for non-thingbox users to help.

To do this start with a standard Rasbian image (from the raspberry pi website) follow the instructions here http://nodered.org/docs/hardware/raspberrypi.html
to install nodered.

Then you are in control, you know where and how node-red is being started and as an added bonus more people will be able to help you.

Shem Jamieson

unread,
Jun 12, 2015, 10:24:45 AM6/12/15
to node...@googlegroups.com
I agree Mark, Node-red is easier to install now and the documentation good. Enter a few commands into terminal and it is running.

CastlePete

unread,
Jun 12, 2015, 1:17:19 PM6/12/15
to node...@googlegroups.com


On Friday, June 12, 2015 at 3:07:29 PM UTC+1, Mark Setrem wrote:
I hate to say it but the easy solution is to move over to using the standard node-red installation and stop using the thingbox disk image ......

....Then you are in control, you know where and how node-red is being started and as an added bonus more people will be able to help you.


Thanks guys - Have scrapped "thethingbox" now - it just doesn't work well enough.
I went through the pain of a complete manual install, and all seems to be hanging together now - very pleased - thanks for heads up guys.

So just posting my experience for feedback - for others who might be in the same boat

Was using the "thethingbox" worth it?
- yes - it was a quick way to see "node red", an MQTT broker and Freeboard and a lot of nodes  - great for an early hands on 

What's wrong with "the thingbox" at the moment (version 1.6.0 - 1 June 2015)?
- WiFi doesn't work - R.Pi has to be wired 
- Raspian is a bit different to current level
- Freeboard doesn't work properly

Is it worth continuing with "Thethingbox"?
- at its current version - its a No for me - BUT its a great way to get an early view of node red - and I'm grateful to the guys behind it for that - good job - Hopefully, you will resolve the problems soon

The ThingBox

unread,
Jun 13, 2015, 7:11:03 PM6/13/15
to node...@googlegroups.com
Lucky you are, being able to build your pi youself!

What do you mean by "Raspian is a bit different to current level" ??

Nicolas.

Brian Wagener

unread,
Aug 10, 2015, 8:15:39 AM8/10/15
to Node-RED
Does using node-red with this plugin require the use of a self-hosted freeboard?  Because I am currently just using freeboard.io.

Shem Jamieson

unread,
Aug 10, 2015, 8:30:48 AM8/10/15
to Node-RED
Hey Brian, it looks like you have to pay to have private dashboards with freeboard.io? ... So I guess that is one of the advantages of self-hosting.

Mike Alport

unread,
Sep 25, 2015, 5:17:57 AM9/25/15
to Node-RED
Just to put in my 2-cents worth:
I am also frustrated with thethinkbox having experienced the same problems discussed above, but bringing up a RPi after it has crashed (I have 4x!) is too painful when all I am needing at the moment is red-node. Even on a pure Raspbian I found wifi too unreliable so am using wired connections throughout.
Despite the thingbox problems, installing a "fully" functioning node-red with MQTT etc is just a case of copying the thethinbox img file.
So, for the moment, I will continue to use thethingbox - and thank you CastlePete for the workaround to use saved freeboard dash's.
Hopefully the thethingbox creator will see and fix these problems, and also update to the latest version of Raspbian.

The ThingBox

unread,
Sep 26, 2015, 5:02:35 AM9/26/15
to Node-RED
The Thingbox problem is that topic is that there is an added /api needed:

var settings_nodered = { // http://nodered.org/docs/configuration.html
httpNodeRoot: "/api/",

This is not a bug, but a choice to avoid API conflicts (NodeRED provides a way to change the settings, but the consequences are not always evident)...

Reading the forum, I think this was a bad idea.
We'll try to see if it can be removed it in a futur release

Nicolas
TheThingbox.io

austin sandford

unread,
Jan 17, 2016, 3:50:50 PM1/17/16
to Node-RED
Hi,

Is it possible to have multiple inputs and widgets?

I've tried creating multiple nodes, but can only select one generic datasource.

I've tried multiple inputs to one node, but there doesn't appear to be a way to filter which input is used by a widget.

The example given displays a random value on one widget, is it possible to have two widgets showing different values from a flow?

Thanks.

Angelo Camesasca

unread,
Aug 1, 2016, 11:17:52 AM8/1/16
to Node-RED
Hi urbiworx,
hitting "SAVE FREEBOARD" (then "[MINIFIED]") on the top left but on click not appare MINIFIED and is not possible save the dashboard.

how is possible resolve?
thanks best regards

Angelo Camesasca

unread,
Aug 1, 2016, 11:33:18 AM8/1/16
to Node-RED
when I open a freeboard page on the terminal appears the message express deprecated:

Welcome to Node-RED
===================

1 Aug 17:23:48 - [info] Node-RED version: v0.14.6
1 Aug 17:23:48 - [info] Node.js  version: v4.4.5
1 Aug 17:23:48 - [info] Windows_NT 6.1.7601 x64 LE
1 Aug 17:23:48 - [info] Loading palette nodes
1 Aug 17:24:04 - [warn] ------------------------------------------------------
1 Aug 17:24:04 - [warn] [rpi-gpio] Info : Ignoring Raspberry Pi specific node
1 Aug 17:24:04 - [warn] [tail] Not currently supported on Windows.
1 Aug 17:24:04 - [warn] ------------------------------------------------------
1 Aug 17:24:04 - [info] Settings file  : \.node-red\settings.js
1 Aug 17:24:04 - [info] User directory : \.node-red
1 Aug 17:24:04 - [info] Flows file     : \.node-red\flows_HP-Z230-ANGELO.json
1 Aug 17:24:04 - [info] Server now running at http://127.0.0.1:1880/
1 Aug 17:24:04 - [info] Starting flows
1 Aug 17:24:04 - [error] [OpcUa-Client:de65b95b.4d31e] TypeError: Cannot read pr
operty 'endpoint' of null
1 Aug 17:24:04 - [info] Started flows
express deprecated req.param(name, default): Use req.params, req.body, or req.query instead ..\..\..\..\..\.node-red\node_modules\node-red-contrib-freeboard\freeboard.js:101:11

Nicholas O'Leary

unread,
Aug 1, 2016, 11:57:07 AM8/1/16
to Node-RED Mailing List
Looks like that has already been raised as an issue against the node - https://github.com/urbiworx/node-red-contrib-freeboard/issues/12

Nick

--
http://nodered.org
 
Join us on Slack to continue the conversation: http://nodered.org/slack
---
You received this message because you are subscribed to the Google Groups "Node-RED" group.
To unsubscribe from this group and stop receiving emails from it, send an email to node-red+u...@googlegroups.com.
To post to this group, send email to node...@googlegroups.com.
Visit this group at https://groups.google.com/group/node-red.

André Rocha

unread,
Aug 25, 2016, 8:58:41 AM8/25/16
to Node-RED
Hello all,

About the self hosting solution:

I can't find the plugin file to have "[Node-Red] freeboard" as a Data Source in my self hosted (and same pi as Node-red) Freeboard.
The only thing that works is the node contrib plugin freeboard own instalation, wich if comparing to mine becomes quite a mistery due to my inexperience....

Can you help me out? I think it would be nice to figure  more easily where is the data source configuration plugin and have the option for remote our localhost.

Thanks in advance,

André
Reply all
Reply to author
Forward
0 new messages