Time picker does not prepolulate

I use a timepicker to provide a time to Domoticz. I feed a preset value into the node, and expect it to display.
But it doesn't... weird thing is that once I click on the timepicker field, and then click on another field on the screen, it suddenly shows the prepopulated value!
Is there a setting that I forgot?

Check you are using the latest version of node-red-dashboard.

If it still doesn't work then try a different browser if you can.

If still no joy then stop node red and restart it in a command window and post the full text output here please. Copy/paste please, not screenshot.

Also create a simple flow showing the problem, with an inject node feeding the time picker, export that and paste it here please.

Node-red-dashboard version is 3.6.0.
Different browser: no luck.
output text:


Start Node-RED

Once Node-RED has started, point a browser at
On Pi Node-RED works better with the Firefox or Chrome browser

Use   node-red-stop                          to stop Node-RED
Use   node-red-start                         to start Node-RED again
Use   node-red-log                           to view the recent log output
Use   sudo systemctl enable nodered.service  to autostart Node-RED at every boot
Use   sudo systemctl disable nodered.service to disable autostart on boot

To find more nodes and example flows - go to http://flows.nodered.org

Starting as a systemd service.
12 Oct 21:19:09 - [info]
Welcome to Node-RED
12 Oct 21:19:09 - [info] Node-RED version: v3.1.0
12 Oct 21:19:09 - [info] Node.js  version: v18.18.1
12 Oct 21:19:09 - [info] Linux 5.10.103-v7l+ arm LE
12 Oct 21:19:11 - [info] Loading palette nodes
12 Oct 21:19:14 - [info] Dashboard up and running
12 Oct 21:19:15 - [info] Dashboard version 3.6.0 started at /ui
12 Oct 21:19:15 - [warn] rpi-gpio : Raspberry Pi specific node set inactive
12 Oct 21:19:16 - [warn] ------------------------------------------------------
12 Oct 21:19:16 - [warn] [node-red-node-rbe/rbe] 'rbe' already registered by mod                                                ule node-red
12 Oct 21:19:16 - [warn] ------------------------------------------------------
12 Oct 21:19:16 - [info] Settings file  : /home/pi/.node-red/settings.js
12 Oct 21:19:16 - [info] Context store  : 'default' [module=memory]
12 Oct 21:19:16 - [info] User directory : /home/pi/.node-red
12 Oct 21:19:16 - [warn] Projects disabled : editorTheme.projects.enabled=false
12 Oct 21:19:16 - [warn] Flows file name not set. Generating name using hostname                                                .
12 Oct 21:19:16 - [info] Flows file     : /home/pi/.node-red/flows_Utrecht.json
12 Oct 21:19:16 - [info] Server now running at
12 Oct 21:19:16 - [warn]
Your flow credentials file is encrypted using a system-generated key.
If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.
You should set your own key using the 'credentialSecret' option in
your settings file. Node-RED will then re-encrypt your credentials
file using your chosen key the next time you deploy a change.
12 Oct 21:19:16 - [info] Starting flows
12 Oct 21:19:16 - [info] Started flows
12 Oct 21:19:16 - [info] [aedes broker:e620025b8f212d23] Binding aedes mqtt serv                                                er on port: 1883
12 Oct 21:19:17 - [info] [mqtt-broker:698d3ae2.89ac94] Connected to broker: mqtt                                                ://localhost:1883
12 Oct 21:19:17 - [info] [mqtt-broker:c8b01a2a.39d8e8] Connected to broker: mqtt                                                ://localhost:1883
12 Oct 21:19:22 - [info] nora: connected, uid: zFYSOzW4NnM2L8qCM0dM25i14Vx2
12 Oct 21:19:23 - [info] nora: synced 5 device(s), group: <default>

test nodes:

[{"id":"39ea91e5156458e8","type":"ui_text_input","z":"d4438f0d.e6d41","name":"","label":"test picker","tooltip":"format hh:mm, 24 hr","group":"1e7e61e2.24feee","order":1,"width":"3","height":"1","passthru":false,"mode":"time","delay":"0","topic":"","sendOnBlur":true,"className":"","topicType":"str","x":670,"y":640,"wires":[[]]},{"id":"5723142178e9696c","type":"inject","z":"d4438f0d.e6d41","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"33000000","payloadType":"str","x":420,"y":640,"wires":[["39ea91e5156458e8"]]},{"id":"1e7e61e2.24feee","type":"ui_group","name":"achter","tab":"bcff787c.41b6b8","order":1,"disp":true,"width":"3","collapse":false},{"id":"bcff787c.41b6b8","type":"ui_tab","name":"Sproeisysteem","icon":"dashboard","order":3,"disabled":false,"hidden":false}]

Try feeding in a number (integer) 33000000, not a string "33000000".

Ah, that made a difference to the flow that I created to show the error.
But going back to my production flow, it still does not work even though I am sure that the timepicker is fed with a number, not string.
So I copied a few nodes from my prod flow and tried again. Discovered a weird thing.
I attach a UI control flow to pre-fill all of my fields when the screen is opened.
When I remove that node, everything works great. When I attach the node, the timepickers (I have 2) do not pre-populate. I can't think of a reason...
Here's the flow:

[{"id":"47ff4f53.0cd8d","type":"ui_text_input","z":"d4438f0d.e6d41","name":"starttijd achter","label":"starttijd","tooltip":"format hh:mm, 24 hr","group":"1e7e61e2.24feee","order":1,"width":"3","height":"1","passthru":true,"mode":"time","delay":"0","topic":"","sendOnBlur":true,"className":"","topicType":"str","x":880,"y":720,"wires":[[]]},{"id":"b699347c98752b12","type":"function","z":"d4438f0d.e6d41","name":"select","func":"var var46 = 0\nvar var47 = \"\"\nvar var48 = \"\"\nvar var49 = \"\"\nvar var50 = 0\nvar var51 = \"\"\nvar var52 = \"\"\nvar var53 = \"\"\nvar var54 = \"\"\nmsg.payload.result.forEach(function (uservar,index) {\n    if (msg.payload.result[index].idx == \"46\") {var46 = ((uservar.Value-60)*60000);}\n    if (msg.payload.result[index].idx == \"47\") {var47 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"48\") {var48 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"49\") {var49 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"50\") {var50 = ((uservar.Value-60)*60000);}\n    if (msg.payload.result[index].idx == \"51\") {var51 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"52\") {var52 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"53\") {var53 = uservar.Value;}\n    if (msg.payload.result[index].idx == \"54\") {var54 = uservar.Value;}\n});\n\nreturn[{payload:var46},\n        {payload:var47},\n        {payload:var48},\n        {payload:var49},\n        {payload:var50},\n        {payload:var51},\n        {payload:var52},\n        {payload:var53},\n        {payload:var54}];","outputs":9,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":650,"y":780,"wires":[["47ff4f53.0cd8d","5582e52aac4ce24a"],[],[],[],[],[],[],[],[]]},{"id":"250f797627c17ba2","type":"http request","z":"d4438f0d.e6d41","name":"HTTP","method":"PUT","ret":"obj","paytoqs":"query","url":"","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":510,"y":780,"wires":[["b699347c98752b12"]]},{"id":"5582e52aac4ce24a","type":"debug","z":"d4438f0d.e6d41","name":"debug 1","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":860,"y":760,"wires":[]},{"id":"6ec9584cab3142cf","type":"function","z":"d4438f0d.e6d41","name":"Prep call","func":"var url = \"\";\nmsg.url = url + \"/json.htm?type=command&param=getuservariables\";\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":340,"y":780,"wires":[["250f797627c17ba2"]]},{"id":"2bbc62eff9af804b","type":"ui_button","z":"d4438f0d.e6d41","name":"","group":"d000ac8b.ffab1","order":6,"width":0,"height":0,"passthru":false,"label":"Refresh data 2","tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"str","topic":"","topicType":"str","x":180,"y":780,"wires":[["6ec9584cab3142cf"]]},{"id":"a88f962f.e1d198","type":"ui_ui_control","z":"d4438f0d.e6d41","name":"","events":"all","x":160,"y":700,"wires":[["6ec9584cab3142cf"]]},{"id":"1e7e61e2.24feee","type":"ui_group","name":"achter","tab":"bcff787c.41b6b8","order":1,"disp":true,"width":"3","collapse":false},{"id":"d000ac8b.ffab1","type":"ui_group","name":"besturing","tab":"bcff787c.41b6b8","order":3,"disp":true,"width":"3","collapse":false},{"id":"bcff787c.41b6b8","type":"ui_tab","name":"Sproeisysteem","icon":"dashboard","order":3,"disabled":false,"hidden":false}]

Hard to see what is occuring, you do not supply the output of the http request node, which would be required to see what uservar is.

I checked the output from the function, feeding into the timepicker. It is definitely a number!

E1cid via Node-RED Forum schreef op 13-10-2023 14:37:


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.