wget https://github.com/joewalnes/websocketd/releases/download/v0.2.12/websocketd-0.2.12-linux_arm.zip
unzip websocketd-0.2.12-linux_arm.zip
#make temp.sh executable
chmod +x temp.sh
./websocketd --port=8080 ./temp.sh
| #!/bin/bash | |
| #Print the temp of pi cpu every second | |
| while true; do | |
| vcgencmd measure_temp | cut -c6-9 | |
| sleep 1 | |
| done | |
| exit |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title>Pi Temp.</title> | |
| <link href="https://fonts.googleapis.com/css?family=Libre+Barcode+128+Text" rel="stylesheet"> | |
| <style> | |
| div.smoothie-chart-tooltip { | |
| background: #444; | |
| padding: 1em; | |
| margin-top: 20px; | |
| font-family: consolas; | |
| color: white; | |
| font-size: 10px; | |
| pointer-events: none; | |
| } | |
| body { | |
| background: #222222; | |
| color: white; | |
| font-family: 'Libre Barcode 128 Text', cursive; | |
| font-size:40px; | |
| } | |
| html, body { | |
| height: 100%; | |
| } | |
| html { | |
| display: table; | |
| margin: auto; | |
| } | |
| body { | |
| display: table-cell; | |
| vertical-align: middle; | |
| } | |
| h1 { | |
| margin: 0 auto; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <canvas id="smoothie-chart" width="754" height="200"></canvas> | |
| <h1>PI's temperature</h1> | |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/smoothie/1.32.0/smoothie.min.js"></script> | |
| <script type="text/javascript"> | |
| function myYRangeFunction(range) { | |
| // TODO implement your calculation using range.min and range.max | |
| var min = range.min-1; | |
| var max = range.max+1; | |
| return {min: min, max: max}; | |
| } | |
| var smoothie = new SmoothieChart({ | |
| interpolation:'linear', | |
| grid:{fillStyle:'#222222'}, | |
| tooltip:true, | |
| yRangeFunction:myYRangeFunction, | |
| timestampFormatter:SmoothieChart.timeFormatter | |
| }); | |
| var series = new TimeSeries(); | |
| smoothie.addTimeSeries(series,{lineWidth:2,strokeStyle:'#26C980',fillStyle: 'RGBA(38, 201, 128, 0.2)'}); | |
| smoothie.streamTo(document.getElementById("smoothie-chart"),1000); | |
| var ws = new WebSocket('ws://localhost:8080/'); | |
| ws.onopen = function(){ | |
| console.log('Connected to PI'); | |
| }; | |
| ws.onmessage = function(event){ | |
| series.append(new Date().getTime(), parseFloat(event.data)); | |
| }; | |
| ws.onclose=function(){ | |
| console.log('Disconnected'); | |
| }; | |
| </script> | |
| </body> | |
| </html> |