mirror of
https://github.com/node-red/node-red-nodes.git
synced 2023-10-10 13:36:58 +02:00
2 lines
1.2 KiB
JSON
2 lines
1.2 KiB
JSON
[{"id":"8a52215e.75ade","type":"rpi-sensehat out","z":"ec37e354.13c82","name":"","x":460,"y":39,"wires":[]},{"id":"f0e76645.0f1898","type":"rpi-sensehat in","z":"ec37e354.13c82","name":"","motion":true,"env":false,"stick":false,"x":90,"y":39,"wires":[["a96a3875.5695c8"]]},{"id":"a96a3875.5695c8","type":"function","z":"ec37e354.13c82","name":"Compass","func":"// A port of the Compass example provided by\n// the Sense HAT python library\n// https://github.com/RPi-Distro/python-sense-hat/tree/master/examples\n\nvar led_loop = [4, 5, 6, 7, 15, 23, 31, 39, 47, 55, 63, 62, 61, 60, 59, 58, 57, 56, 48, 40, 32, 24, 16, 8, 0, 1, 2, 3];\nvar led_degree_ratio = led_loop.length / 360.0;\nvar dir_inverted = 360 - msg.payload.compass;\nled_index = Math.floor(led_degree_ratio * dir_inverted);\noffset = led_loop[led_index]\nvar y = Math.floor(offset / 8);\nvar x = offset % 8;\nvar prev_x = context.get('prev_x');\nvar prev_y = context.get('prev_y');\n\nmsg.payload = '';\nif (x != prev_x || y != prev_y) {\n msg.payload = prev_x+\",\"+prev_y+\",off,\"\n}\nmsg.payload += x+\",\"+y+\",blue\";\n\ncontext.set('prev_x',x);\ncontext.set('prev_y',y);\n\nreturn msg;\n\n","outputs":1,"noerr":0,"x":270,"y":39,"wires":[["8a52215e.75ade"]]}]
|