[{"data":1,"prerenderedAt":293},["ShallowReactive",2],{"doc-\u002Fgetting-started\u002Fcalibration":3},{"id":4,"title":5,"body":6,"description":283,"edit":284,"extension":285,"meta":286,"navigation":287,"path":288,"seo":289,"stem":290,"vertical":284,"weight":291,"__hash__":292},"content\u002Fgetting-started\u002Fcalibration.md","Sensor calibration",{"type":7,"value":8,"toc":272},"minimark",[9,18,21,43,48,51,72,75,79,105,109,129,133,136,147,158,161,165,231,238,243,247,250,258,261,265],[10,11,12,13,17],"p",{},"OpenSense does ",[14,15,16],"strong",{},"not"," require calibrated sensors. The default\nShelly \u002F Aqara \u002F Efento ship calibrated by the chip vendor (Sensirion,\ntypically ±0.4 °C ±2 %RH out of the box) and that is sufficient for\nmost HACCP and climate use cases.",[10,19,20],{},"Calibration becomes relevant when:",[22,23,24,28,37,40],"ul",{},[25,26,27],"li",{},"A pharmacy or hospital pharmacy auditor asks for traceability.",[25,29,30,31],{},"A sensor has been in service long enough to drift (typically\n",[32,33,34],"blockquote",{},[10,35,36],{},"2 years).",[25,38,39],{},"A discrepancy between two adjacent sensors makes you suspect one\nis wrong.",[25,41,42],{},"You replaced a sensor and the new one reads systematically\ndifferently than the chart you have on file.",[44,45,47],"h2",{"id":46},"what-calibration-actually-means","What \"calibration\" actually means",[10,49,50],{},"Three different things use the word:",[52,53,54,60,66],"ol",{},[25,55,56,59],{},[14,57,58],{},"Factory calibration"," — done in production, baked into the\nsensor's internal offset registers. Sensirion publishes the\ndatasheet accuracy.",[25,61,62,65],{},[14,63,64],{},"Field check"," — comparing the installed sensor against a\nportable reference for 5–10 min, recording the delta. No\nadjustment is made.",[25,67,68,71],{},[14,69,70],{},"Field calibration with offset"," — same as field check, plus\napplying the measured delta as a configured offset in OpenSense.",[10,73,74],{},"In OpenSense we support all three; the first is the chip's\nresponsibility, the second is operator hygiene, the third is the\n\"channel offset\" field.",[44,76,78],{"id":77},"what-you-need-for-a-field-check","What you need for a field check",[22,80,81,99],{},[25,82,83,84,87,88],{},"A ",[14,85,86],{},"reference probe",": a calibrated thermistor or PT100 with a\nrecent (\u003C 12 months) calibration certificate. Examples:\n",[22,89,90,93,96],{},[25,91,92],{},"Fluke 1551A \"Stik\" — €700, ISO 17025 cert from Fluke.",[25,94,95],{},"OMEGA HH377 + Type-T probe — €350.",[25,97,98],{},"For non-pharma use: a Sous Vide-grade ThermoWorks ThermaPen — €100;\nnot certified but reliable to ±0.2 °C against a Fluke.",[25,100,83,101,104],{},[14,102,103],{},"stable environment",": not in a fridge being opened, not in\ndirect sunlight, not next to a heat source. A still-air room at\n20–22 °C is ideal; an ice bath at 0 °C is the second reference\npoint (single-point calibration on ice + a second at room\ntemperature gives you a two-point line).",[44,106,108],{"id":107},"the-procedure","The procedure",[52,110,111,114,117,120,123,126],{},[25,112,113],{},"Note the installed sensor's reading right now.",[25,115,116],{},"Place the reference probe next to it (within 5 cm). Insulate both\nfrom local air movement if you can.",[25,118,119],{},"Wait 10 minutes. Sensors have thermal mass; the reading you see\nin minute 1 is not the steady-state reading.",[25,121,122],{},"Record both readings simultaneously. Compute delta.",[25,124,125],{},"Repeat at a different temperature if practical (ice bath; a\nfreezer at −18 °C; a fridge at +4 °C).",[25,127,128],{},"Compute the offset and the slope (if you took two points).",[44,130,132],{"id":131},"apply-the-offset","Apply the offset",[10,134,135],{},"In OpenSense:",[137,138,143],"pre",{"className":139,"code":141,"language":142},[140],"language-text","PATCH \u002Fv1\u002Fsensors\u002Fsnr_a1b2\n{\n  \"offset\": -0.3,\n  \"offset_recorded_at\": \"2026-05-17T10:00:00+02:00\",\n  \"offset_recorded_by\": \"ops@cafe-bratislava.sk\",\n  \"offset_recorded_against\": \"Fluke 1551A s\u002Fn 12345 cert 2026-02\"\n}\n","text",[144,145,141],"code",{"__ignoreMap":146},"",[10,148,149,150,153,154,157],{},"The offset is applied ",[14,151,152],{},"post-ingest"," — the raw reading is stored\nunchanged; the displayed and rule-evaluated value is ",[144,155,156],{},"raw + offset",".\nThis is intentional: if you ever doubt the offset is correct, you\ncan recompute history with a different one without losing data.",[10,159,160],{},"The audit trail records the offset change as a configuration event.",[44,162,164],{"id":163},"how-often","How often",[166,167,168,181],"table",{},[169,170,171],"thead",{},[172,173,174,178],"tr",{},[175,176,177],"th",{},"Use case",[175,179,180],{},"Recommended cadence",[182,183,184,193,200,208,215,223],"tbody",{},[172,185,186,190],{},[187,188,189],"td",{},"HACCP, food retail",[187,191,192],{},"Annually",[172,194,195,198],{},[187,196,197],{},"Legionella, hot water",[187,199,192],{},[172,201,202,205],{},[187,203,204],{},"Server room",[187,206,207],{},"Every 2 years",[172,209,210,213],{},[187,211,212],{},"Indoor climate (museum)",[187,214,192],{},[172,216,217,220],{},[187,218,219],{},"Indoor climate (school)",[187,221,222],{},"Every 2–3 years",[172,224,225,228],{},[187,226,227],{},"Pharma cold chain",[187,229,230],{},"Bi-annually + after any service",[10,232,233,234,237],{},"If you cannot afford a calibrated reference probe but want a\n",[14,235,236],{},"zero-cost sanity check",", every 6 months put all your sensors in\nthe same room for 60 minutes and compare their readings. If one drifts",[32,239,240],{},[10,241,242],{},"1 °C from the median, it is the suspect; field-check it against a\nborrowed thermometer or buy a replacement.",[44,244,246],{"id":245},"what-the-auditor-wants-to-see","What the auditor wants to see",[10,248,249],{},"For HACCP \u002F Slovak ŠVPS in our experience:",[22,251,252,255],{},[25,253,254],{},"A note that \"calibration was performed on YYYY-MM-DD with reference\nX, against probe Y, delta was Z °C\". The dashboard's calibration\nfield accepts free-text; auditors read it.",[25,256,257],{},"A copy of the reference probe's certificate (or a serial number\npointing at one). The certificate need not be in OpenSense; we have\na per-account \"documents\" attachment area you can put it in.",[10,259,260],{},"For pharma \u002F GxP — which we do not service today — the auditor will\nwant a full traceability chain back to a national metrology institute.\nBuy Eupry or Vaisala for that case.",[44,262,264],{"id":263},"when-in-doubt","When in doubt",[10,266,267,268,271],{},"If a sensor reading does not match reality and you cannot calibrate\nit, ",[14,269,270],{},"replace it",". A Shelly H&T is €30. It is cheaper than an hour\nof your time arguing with chip drift. Keep the old sensor in a drawer\nlabeled \"for the office plant\" so you do not throw away a working\ndevice — but do not have it on the food.",{"title":146,"searchDepth":273,"depth":273,"links":274},3,[275,277,278,279,280,281,282],{"id":46,"depth":276,"text":47},2,{"id":77,"depth":276,"text":78},{"id":107,"depth":276,"text":108},{"id":131,"depth":276,"text":132},{"id":163,"depth":276,"text":164},{"id":245,"depth":276,"text":246},{"id":263,"depth":276,"text":264},"When to do it, how, what to record",null,"md",{},true,"\u002Fgetting-started\u002Fcalibration",{"title":5,"description":283},"getting-started\u002Fcalibration",28,"uGzQplFxrShRcTymre4ShIFtOPmqjTkYrKGxsWrd998",1779022953396]