1
0
mirror of https://github.com/node-red/node-red-nodes.git synced 2023-10-10 13:36:58 +02:00

Add clock example to unicorn hat node

This commit is contained in:
Dave Conway-Jones 2016-03-28 17:43:00 +01:00
parent f64a17acd5
commit 73e84c7ff9
4 changed files with 11 additions and 2 deletions

View File

@ -48,3 +48,11 @@ Setting `msg.payload` to `CLS` will clear the display to off and delete any spri
The overall brightness may be set by setting `msg.payload` to `brightness,nn`, where `nn` is `0 to 100`.
The rotation may be set by setting `msg.payload` to `rotate,rr`, where `rr` is `0`, `90`, `180` or `270`.
Examples
--------
Includes two example flows - found under `Menu - Import - Examples - pi unicorn-hat`.
One shows drawing simple blocks and lines.
The other is a simple graphical clock that shows the current time in hours
and minutes using a number of coloured pixels.

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"id":"651b51cb.9ae4b","type":"rpi-unicorn","z":"40b203f2.bf4dfc","name":"","png":"0,0,0","bright":"20","x":530,"y":620,"wires":[]},{"id":"d886ebb5.d40378","type":"inject","z":"40b203f2.bf4dfc","name":"","topic":"","payload":"","payloadType":"date","repeat":"10","crontab":"","once":true,"x":100,"y":620,"wires":[["a14fe454.f951f8"]]},{"id":"a14fe454.f951f8","type":"function","z":"40b203f2.bf4dfc","name":"Simple graphical clock","func":"\n// array to hold \"random\" pixels\nvar ranNums = [];\n\n// create a non-overlapping array of random numbers 0-8\nfunction rerand() {\n var nums = [0,1,2,3,4,5,6,7,8];\n var i = nums.length;\n var j;\n ranNums = [];\n while (i--) {\n j = Math.floor(Math.random() * (i+1));\n ranNums.push(nums[j]);\n nums.splice(j,1);\n }\n}\n\n// Get the hours and minutes and split into tens and units\nvar d = new Date();\nvar h = d.getHours();\nvar m = d.getMinutes();\nvar hu = h%10;\nh = parseInt(h/10);\nvar mu = m%10;\nm = parseInt(m/10);\n\n// Do the tens of hours (red)\nrerand();\nnode.send({payload:\"1-3,1-3,0,0,0\"});\nfor (var i=0; i<h; i++) {\n node.send({payload:(1+ranNums[i]%3)+\",\"+(1+parseInt(ranNums[i]/3))+\",255,0,0\"});\n}\n\n// Do the units of hours (green)\nrerand();\nnode.send({payload:\"4-6,1-3,0,0,0\"});\nfor (var i=0; i<hu; i++) {\n node.send({payload:(4+ranNums[i]%3)+\",\"+(1+parseInt(ranNums[i]/3))+\",0,255,0\"});\n}\n\n// Do the tens of minutes (yellow)\nrerand();\nnode.send({payload:\"1-3,4-6,0,0,0\"});\nfor (var i=0; i<m; i++) {\n node.send({payload:(1+ranNums[i]%3)+\",\"+(4+parseInt(ranNums[i]/3))+\",255,255,0\"});\n}\n\n// Do the unit of minutes (blue)\nrerand();\nnode.send({payload:\"4-6,4-6,0,0,0\"});\nfor (var i=0; i<mu; i++) {\n node.send({payload:(4+ranNums[i]%3)+\",\"+(4+parseInt(ranNums[i]/3))+\",0,0,255\"});\n}\n\n// nothing left to do\nreturn null;","outputs":1,"noerr":0,"x":300,"y":620,"wires":[["651b51cb.9ae4b"]]},{"id":"27c3a2e5.082c6e","type":"comment","z":"40b203f2.bf4dfc","name":"Simple graphical clock for Unicorn Hat","info":"Generates a graphical clock, showing hours and minutes. \n\n(count the dots Luke)\n\nUpdates every 10 seconds.\n\nUses the local time of the Pi - you may need to set your local\ntimezone using\n\n sudo dpkg-reconfigure tzdata\n","x":200,"y":580,"wires":[]}]

View File

@ -1,6 +1,6 @@
{
"name" : "node-red-node-pi-unicorn-hat",
"version" : "0.0.10",
"version" : "0.0.11",
"description" : "A Node-RED node to output to a Raspberry Pi Unicorn HAT from Pimorini.",
"dependencies" : {
"pngjs": "2.2.*"