UP↑SCALE

CHECK A SEALED FILE

Got a report, a PDF or a record file from an UP↑SCALE scale? Check here that it is unchanged and which scale sealed it.


Nothing is uploaded: the check runs in your browser only. You need no account and no scale.

WHAT THE CHECK SHOWS

Integrity code
Every report of the ENTERPRISE & COMPLIANCE edition carries a code (SHA-256) of its content. If the code fits, the text is unchanged since the code was made. On its own it is a checksum: anybody can compute one.
Seal of the scale
The scale signs the SHA-256 of the file with its own key (ECDSA P-256). A valid seal names the scale (Device ID), the time, the user who was logged in and the number of the entry that the scale wrote into its hash-chained activity log for this seal. A changed file no longer fits its seal, and no app or computer can make a new seal without the key of the scale.
Seal certificate
UP↑SCALE certifies the key of every scale with an ENTERPRISE & COMPLIANCE licence: "this key belongs to the scale with this Device ID". The check uses only our public key, which is built into this page. "Key NOT certified" means: the seal is intact, but nobody vouches for the scale behind it.
Signatures
Reviewed / approved signatures that a user added with their password are sealed by the scale too, together with the name and the meaning of the signature.

WHAT IT DOES NOT SHOW

HOW THE RECORDS ARE KEPT TAMPER-PROOF

FOR OFFICIALS, AUDITORS AND CUSTOMERS

What you can check on this page without an account and without a scale, and what you should ask the lab for:

  1. The file: a report (HTML or PDF), a record file of the activity log (JSON) or a CSV export with its .seal.json. Choose it above: you see whether it is unchanged, which scale (Device ID) sealed it, when, and which user was logged in.
  2. The log: record files of the activity log are chained: each file names the previous one (name and SHA-256), and the entries are hash-chained, so a missing or changed entry shows as a break. Ask for all record files of the period and check them together.
  3. The calculations: the reference cases below are worked out by hand from OIML R 76-1:2006 (the cases of the routine check, RT-, from USP <41> and Ph. Eur. 2.1.7). The lab's validation record shows the code fingerprint of the app version it used; a different app version has a different fingerprint.
  4. The scale itself: the test record (final report) lists every test with its readings, loads and limits. Whether the test weights were traceable and the procedure suits the purpose is shown by the lab's own documents - we do not vouch for it.

UP↑SCALE is not affiliated with OIML, EURAMET or any authority. Nothing on this page is an official certificate, a verification or a qualified electronic signature (eIDAS).

VALIDATION OF THE CALCULATIONS (IQ/OQ)

Laboratories and service companies have to show that the software they use calculates correctly. The ENTERPRISE & COMPLIANCE edition has a box VALIDATION OF THE CALCULATIONS (IQ/OQ) at the end of the ☑ TEST page:

The reference cases (loads in g, errors and limits in d = the scale interval; "checks" lists each check of a test as [error, limit or uncertainty]; status: meets / maybe = cannot be decided / inuse = within the limit for instruments in use / fails):

CaseClauseInputExpectedWorking
T3-01R 76-1 Table 3classes {"d":0.1,"e":0.1,"max":3000}["II"]n = 3000 / 0.1 = 30000. I needs n >= 50000: no. II with e >= 0.1 g needs 5000 <= n <= 100000: yes. III with 0.1 <= e <= 2 g needs n <= 10000: no. IIII needs e >= 5 g: no.
T3-02R 76-1 Table 3classes {"d":0.01,"e":0.01,"max":300}["II"]n = 300 / 0.01 = 30000. I: n < 50000. II with 0.001 <= e <= 0.05 g needs 100 <= n <= 100000: yes. III needs e >= 0.1 g: no.
T3-03R 76-1 Table 3classes {"d":1,"e":1,"max":3000}["III"]n = 3000. II with e >= 0.1 g needs n >= 5000: no. III with 0.1 <= e <= 2 g needs 100 <= n <= 10000: yes.
T3-04R 76-1 Table 3classes {"d":5,"e":5,"max":3000}["III","IIII"]n = 600. III with e >= 5 g needs 500 <= n <= 10000: yes. IIII with e >= 5 g needs 100 <= n <= 1000: yes.
T3-05R 76-1 Table 3ref {"d":5,"e":5,"max":3000}"IIII"Classes III and IIII fit (T3-04); without a class typed in, the loosest class that fits (IIII) is the reference.
T3-06R 76-1 Table 3classes {"d":5,"e":5,"max":2000}["IIII"]n = 400. III with e >= 5 g needs n >= 500: no. IIII needs 100 <= n <= 1000: yes.
T3-07R 76-1 Table 3classes {"d":0.001,"e":0.001,"max":100}["I","II"]n = 100000. I needs e >= 0.001 g and n >= 50000: yes. II with 0.001 <= e <= 0.05 g needs n <= 100000: yes (limit included).
T3-08R 76-1 Table 3classes {"d":0.1,"e":0.1,"max":200}["III"]n = 2000. II with e >= 0.1 g needs n >= 5000: no. III with 0.1 <= e <= 2 g needs 100 <= n <= 10000: yes.
T3-09R 76-1 Table 3classes {"d":1,"e":1,"max":10000}["II","III"]n = 10000. II with e >= 0.1 g: 5000 <= 10000 <= 100000: yes. III: n <= 10000: yes (limit included).
T3-16R 76-1 Table 3classes {"d":0.1,"e":0.1,"max":8000}["I","II"]n = 80000. I needs e >= 0.001 g and n >= 50000: yes. II with e >= 0.1 g needs 5000 <= n <= 100000: yes. III: n > 10000.
T3-10R 76-1 Table 3, 3.4.3min {"d":0.001,"e":0.001,"max":100,"cls":"I"}0.1Class I: Min = 100 e, with e replaced by d (3.4.3): 100 x 0.001 g = 0.1 g.
T3-11R 76-1 Table 3, 3.4.3min {"d":0.01,"e":0.01,"max":300,"cls":"II"}0.2Class II with 0.001 <= e <= 0.05 g: Min = 20 d = 20 x 0.01 g = 0.2 g.
T3-12R 76-1 Table 3, 3.4.3min {"d":0.1,"e":0.1,"max":3000,"cls":"II"}5Class II with e >= 0.1 g: Min = 50 d = 50 x 0.1 g = 5 g.
T3-13R 76-1 Table 3, 3.4.3min {"d":1,"e":1,"max":3000,"cls":"III"}20Class III: Min = 20 d = 20 g.
T3-14R 76-1 Table 3, 3.4.3min {"d":5,"e":5,"max":3000,"cls":"IIII"}50Class IIII: Min = 10 d = 50 g.
T3-15R 76-1 Table 3, 3.4.3min {"d":0.1,"e":1,"max":3000,"cls":"III"}2e = 1 g, d = 0.1 g (an RS-232 adapter with e typed in). Class III: Min = 20 e, but 3.4.3 replaces e by d: 20 x 0.1 g = 2 g.
T6-01R 76-1 Table 6mpe {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":500}0.5m = 500 / 0.1 = 5000 e. Class II: 0 <= m <= 5000 -> 0.5 e = 0.5 d.
T6-02R 76-1 Table 6mpe {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":500.1}1m = 5001 e. Class II: 5000 < m <= 20000 -> 1 e = 1 d.
T6-03R 76-1 Table 6mpe {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000}1m = 20000 e. Class II: 5000 < m <= 20000 -> 1 e (limit included).
T6-04R 76-1 Table 6mpe {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000.1}1.5m = 20001 e. Class II: 20000 < m <= 100000 -> 1.5 e.
T6-05R 76-1 Table 6mpe {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000.0000000003}1A load of 2000 g that came out of a unit conversion (e.g. typed in oz) with a rounding of 3e-10 g is still m = 20000 e -> 1 e (not 1.5 e).
T6-06R 76-1 Table 6mpe {"d":1,"e":1,"max":3000,"cls":"III","load":500}0.5m = 500 e. Class III: 0 <= m <= 500 -> 0.5 e.
T6-07R 76-1 Table 6mpe {"d":1,"e":1,"max":3000,"cls":"III","load":501}1m = 501 e. Class III: 500 < m <= 2000 -> 1 e.
T6-08R 76-1 Table 6mpe {"d":1,"e":1,"max":3000,"cls":"III","load":2001}1.5m = 2001 e. Class III: 2000 < m <= 10000 -> 1.5 e.
T6-09R 76-1 Table 6mpe {"d":0.001,"e":0.001,"max":100,"cls":"I","load":50}0.5m = 50000 e. Class I: 0 <= m <= 50000 -> 0.5 e.
T6-10R 76-1 Table 6mpe {"d":0.001,"e":0.001,"max":400,"cls":"I","load":200.001}1.5m = 200001 e. Class I: 200000 < m -> 1.5 e.
T6-11R 76-1 Table 6mpe {"d":5,"e":5,"max":3000,"cls":"IIII","load":255}1m = 51 e. Class IIII: 50 < m <= 200 -> 1 e.
T6-12R 76-1 Table 6mpe {"d":5,"e":5,"max":3000,"cls":"IIII","load":1005}1.5m = 201 e. Class IIII: 200 < m <= 1000 -> 1.5 e.
T6-13R 76-1 Table 6mpe {"d":0.1,"e":1,"max":3000,"cls":"III","load":1000}10e = 1 g, d = 0.1 g. m = 1000 e. Class III: 500 < m <= 2000 -> 1 e = 1 g = 10 d.
LV-01R 76-1 3.5.1, 3.5.2level {"err":0.4,"mpe":1,"u":0.5}"ok"Within the mpe even in the worst case: 0.4 + 0.5 = 0.9 <= 1.
LV-02R 76-1 3.5.1, 3.5.2level {"err":0.5,"mpe":1,"u":0.5}"ok"0.5 + 0.5 = 1 <= 1 (limit included).
LV-03R 76-1 3.5.1, 3.5.2level {"err":1.2,"mpe":1,"u":0.5}"maybe"1.2 - 0.5 = 0.7 <= 1 < 1.2 + 0.5: the uncertainty does not allow a decision.
LV-04R 76-1 3.5.1, 3.5.2level {"err":1.6,"mpe":1,"u":0.1}"warn"Surely above the mpe (1.6 - 0.1 > 1) and surely within the mpe in service = 2 mpe (3.5.2): 1.6 + 0.1 <= 2.
LV-05R 76-1 3.5.1, 3.5.2level {"err":2,"mpe":1,"u":0.1}"bad"2.0 + 0.1 > 2 mpe: not surely within the mpe in service. The in-service tier is only given when it is sure (guard band of u).
LV-06R 76-1 3.5.1level {"err":0,"mpe":0.5,"u":0.5}"ok"A rounded reading (u = d/2) with mpe 0.5 d: only an error of 0 is surely within the mpe: 0 + 0.5 <= 0.5.
A44-01R 76-1 A.4.4.1, Table 3loads {"d":0.1,"e":0.1,"max":3000,"cls":"II","purpose":"verify"}[5,300,500,2000,3000]At least 5 loads incl. Min (5 g, T3-12, >= 100 mg), the mpe changes 5000 e = 500 g and 20000 e = 2000 g, and Max 3000 g; the fifth is filled in at 10 % of Max = 300 g.
A44-02R 76-1 A.4.4.1, Table 3loads {"d":0.1,"e":0.1,"max":3000,"cls":"II","purpose":"type"}[5,300,500,600,750,1050,1500,2000,2250,3000]10 loads for the initial intrinsic error: Min 5 g, 500 g, 2000 g, Max 3000 g, then 10, 25, 50, 75, 20 and 35 % of Max (300, 750, 1500, 2250, 600, 1050 g), each far enough from the others.
A44-03R 76-1 A.4.4.1, Table 3loads {"d":1,"e":1,"max":3000,"cls":"III","purpose":"verify"}[20,300,500,2000,3000]Min = 20 d = 20 g, the mpe changes 500 e = 500 g and 2000 e = 2000 g, Max 3000 g, plus 10 % of Max = 300 g.
A410-01R 76-1 A.4.10reps {"cls":"II","purpose":"verify"}6Verification: six weighings on classes I and II.
A410-02R 76-1 A.4.10reps {"cls":"III","purpose":"verify"}3Verification: three weighings on classes III and IIII.
A410-03R 76-1 A.4.10reps {"cls":"III","purpose":"type"}10Type examination, Max < 1000 kg: 10 weighings per series.
A410-04R 76-1 A.4.10reploads {"max":3000,"purpose":"verify"}[2400]Verification: one series with about 0.8 Max = 2400 g.
A410-05R 76-1 A.4.10reploads {"max":3000,"purpose":"type"}[1500,3000]Type examination: one series with about 50 % (1500 g) and one close to 100 % of Max (3000 g).
A443-01R 76-1 A.4.4.3rowerr {"d":5,"e":5,"net":1000,"target":1000,"dl":1.5,"zdl":2.5}{"err":1,"errD":0.2,"u":0}The example of the standard: e = 5 g, L = 1000 g, I = 1000 g, dL = 1.5 g: E = I + e/2 - dL - L = 1000 + 2.5 - 1.5 - 1000 = 1 g = 0.2 d. The zero, determined the same way, shows 0 with dL0 = 2.5 g: E0 = 0 + 2.5 - 2.5 = 0, so Ec = E - E0 = 1 g; both changeover points remove the rounding (u = 0). (Corrected 2026-10-23: the input now names the zero changeover dL0; the expected values are unchanged.)
A443-05R 76-1 A.4.4.3rowerr {"d":5,"e":5,"net":1000,"target":1000,"dl":1.5,"zdl":2}{"err":0.5,"errD":0.1,"u":0}As A443-01, but the zero needs dL0 = 2 g: E0 = 0 + 2.5 - 2 = 0.5 g. Ec = E - E0 = 1 - 0.5 = 0.5 g = 0.1 d.
A443-06R 76-1 A.4.4.3, 3.5.3.2rowerr {"d":5,"e":5,"net":1000,"target":1000,"dl":1.5}{"err":1,"errD":0.2,"u":0.5}dL at the load, but no dL0 at the zero: the zero is taken as shown (E0 = 0), its rounding of up to e/2 = 2.5 g stays in the uncertainty: u = 0.5 d.
A443-02R 76-1 3.5.3.2rowerr {"d":0.1,"e":0.1,"net":1000.1,"target":1000,"dl":0}{"err":0.1,"errD":1,"u":0.5}A rounded reading without changeover: E = 1000.1 - 1000 = 0.1 g = 1 d, uncertain by half a step: u = 0.5 d.
A443-03R 76-1 A.4.1.6rowerr {"d":0.1,"e":0.1,"net":1000.03,"target":1000,"dl":0,"fine":true}{"err":0.03,"errD":0.3,"u":0.1}A reading before rounding (an interval of at most 1/5 e): E = 0.03 g = 0.3 d; u = d/10 = 0.1 d.
A443-04R 76-1 3.7.1rowerr {"d":0.1,"e":0.1,"net":1000.1,"target":1000,"dl":0,"tolPct":0.01}{"err":0.1,"errD":1,"u":1.5}A test weight with a tolerance of 0.01 %: 1000 g x 0.0001 = 0.1 g; u = d/2 + 0.1 g = 0.15 g = 1.5 d.
W-01R 76-1 A.4.4.1, 3.5.1weigh {"d":1,"e":1,"max":3000,"cls":"III","fine":true,"up":[[500,500.2],[2000,2000.6],[3000,3001.2]],"down":[[2000,2000.9],[500,500.3]]}{"checks":[[0.2,0.1],[0.6,0.1],[1.2,0.1],[0.9,0.1],[0.3,0.1],[0.3,0.2],[0.1,0.2]],"status":"meets"}Readings before rounding (u = 0.1 d each). Errors up 0.2 / 0.6 / 1.2 d against mpe 0.5 / 1 / 1.5 d (500 / 2000 / 3000 e), down 0.9 d at 2000 g (0.9 + 0.1 <= 1) and 0.3 d at 500 g; same load up and down: |0.9 - 0.6| = 0.3 d (u 0.2) and |0.3 - 0.2| = 0.1 d (u 0.2). All surely within: meets class III.
R-01R 76-1 3.6.1, A.4.10repeat {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2400,"nets":[2400,2400.1,2399.9,2400,2400.1,2400]}{"checks":[[1,0.5],[2,1]],"status":"maybe"}Rounded readings (u = 0.5 d). mpe at 2400 g (24000 e, class II) = 1.5 d. Largest error 1 d: 1 + 0.5 <= 1.5 -> within. Difference of the results (3.6.1) = 1 - (-1) = 2 d with u = 1 d: 2 - 1 <= 1.5 < 2 + 1 -> cannot be decided.
R-02R 76-1 3.6.1, A.4.10repeat {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2400,"fine":true,"nets":[2400.02,2400.05,2399.98,2400.03,2400,2400.04]}{"checks":[[0.5,0.1],[0.7,0.2]],"status":"meets"}Readings before rounding (u = 0.1 d). Errors 0.2, 0.5, -0.2, 0.3, 0, 0.4 d: largest 0.5 d <= 1.5 - 0.1. Difference 0.5 - (-0.2) = 0.7 d <= 1.5 - 0.2.
R-03R 76-1 3.6.1, 3.5.2repeat {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2400,"fine":true,"nets":[2400,2400.2,2399.9,2400,2400.1,2400]}{"checks":[[2,0.1],[3,0.2]],"status":"fails"}Largest error 2 d: above 1.5 d, within 2 x 1.5 = 3 d in service (warn). Difference 2 - (-1) = 3 d with u 0.2: 3 > 3 - 0.2 -> not surely within the in-service limit: fails.
C-01R 76-1 3.9.4.1, 3.9.4.2, A.4.11creep {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2900,"samples":[[0,2900],[300,2900.02],[900,2900.03],[1800,2900.04]],"zeros":[0,0.02]}{"checks":[[0.4,0.5],[0.1,0.2],[0.2,0.5]],"status":"meets"}Readings before rounding. Change in 30 min: 0.04 g = 0.4 d <= 0.5 e. Change 15 to 30 min: 0.01 g = 0.1 d <= 0.2 e. Zero return: 0.02 g = 0.2 d <= 0.5 e.
C-02R 76-1 3.9.4.1creep {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2900,"samples":[[0,2900],[900,2900.01],[1800,2900.04]],"zeros":[0,0.01]}{"checks":[[0.4,0.5],[0.3,0.2],[0.1,0.5]],"status":"fails"}30 min: 0.4 d <= 0.5 e, but 15 to 30 min: 0.03 g = 0.3 d > 0.2 e -> the 30 minute test is not met (the 4 hour alternative would be next).
Z-01R 76-1 4.5.2, A.4.2.3.1zset {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"nets":[0.01]}{"checks":[[0.1,0.25]],"status":"meets"}After the zero-setting the indication is 0.01 g = 0.1 d, u = 0.1 d: 0.1 + 0.1 <= 0.25 e.
Z-02R 76-1 4.5.2zset {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"nets":[0.03]}{"checks":[[0.3,0.25]],"status":"maybe"}0.3 d with u = 0.1 d against 0.25 e: 0.3 - 0.1 <= 0.25 < 0.3 + 0.1 -> cannot be decided.
Z-03R 76-1 4.5.2zset {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"nets":[0.05]}{"checks":[[0.5,0.25]],"status":"fails"}0.5 d - 0.1 > 0.25 e: the zero-setting is not accurate enough (no in-service tier for this limit).
S-01R 76-1 4.4.2, A.4.12stab {"d":0.1,"e":0.1,"max":3000,"cls":"II","spans":[0.1,0.2]}{"checks":[[1,1],[2,1]],"status":"fails"}After the stable signal the values may differ by at most 1 e (two adjacent values): a span of 0.1 g = 1 d is within, 0.2 g = 2 d is not.
D-01R 76-1 3.8.2.2, A.4.8.2disc {"d":0.1,"e":0.1,"max":3000,"cls":"II","rows":[[1500,1500,1500.1],[5,5,5]]}{"checks":[[0,0.5],[1,0.5]],"status":"fails"}After the extra 1.4 d the indication must be I + d: at 1500 g it shows 1500.1 = I + d (0 d off); at 5 g it still shows 5.0 = I (1 d off): the discrimination is not met.
LIN-01least squares (EURAMET cg-18 style, R 76 has no linearity limit)linearity {"pts":[[500,500.05],[1000,1000.1],[2000,2000.2],[3000,3000.3]]}{"a":1.0001,"maxDev":0}All points lie on y = 1.0001 x: slope 1.0001 (gain error +0.01 %), no deviation from the line.
LIN-02least squareslinearity {"pts":[[1,1],[2,2],[3,4]]}{"a":1.5,"maxDev":0.333333333}n = 3, sum x = 6, sum y = 7, sum xy = 17, sum x2 = 14: a = (3 x 17 - 6 x 7) / (3 x 14 - 36) = 9 / 6 = 1.5, b = (7 - 1.5 x 6) / 3 = -2/3; the line gives 0.833, 2.333, 3.833: largest deviation 1/3 at x = 2.
ECC-01R 76-1 3.6.2, Table 6 (difference to the middle, EURAMET cg-18)ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"rounds":[[1000,1000.05,999.97,1000.07,1000.01]]}{"maxD":0.7,"mpe":1,"u":0.2,"level":"ok"}3 rounds of the same values: corner means differ from the middle by 0.5, -0.3, 0.7, 0.1 d; largest 0.7 d. mpe at 1000 g (10000 e, class II) = 1 e. Two means before rounding: u = 0.2 d. 0.7 + 0.2 <= 1.
ECC-02R 76-1 3.6.2, Table 6ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":false,"rounds":[[1000,1000.1,1000,999.9,1000]]}{"maxD":1,"mpe":1,"u":1,"level":"maybe"}Rounded readings: the difference of two rounded means is uncertain by up to 1 d. Largest difference 1 d: 1 - 1 <= 1 < 1 + 1 -> cannot be decided.
ECC-03R 76-1 3.6.2, 3.5.2ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"rounds":[[1000,1000.25,1000,1000,1000]]}{"maxD":2.5,"mpe":1,"u":0.2,"level":"bad"}2.5 d + 0.2 > 2 x 1 d: above even the in-service limit.
ECC-04R 76-1 3.6.2, A.4.7 (against the true mass)ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"mass":999.98,"rounds":[[1000,1000.03,999.95,1000.02,1000]]}{"absD":0.5,"absU":0.1,"absMpe":1,"absLevel":"ok"}True mass 999.98 g. Corner means 1000.03, 999.95, 1000.02, 1000.00 g: errors +0.05, -0.03, +0.04, +0.02 g; largest 0.05 g = 0.5 d (the middle is not judged, A.4.7). Readings before rounding: u = d/10 = 0.1 d. mpe at 999.98 g (9999.8 e, class II) = 1 e. 0.5 + 0.1 <= 1.
ECC-05R 76-1 3.6.2, A.4.7, 3.7.1ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":false,"mass":1000,"tolPct":0.005,"rounds":[[1000,1000.1,1000,1000.1,1000]]}{"absD":1,"absU":1,"absMpe":1,"absLevel":"maybe"}Rounded readings: u = d/2 = 0.5 d, plus the tolerance of the weight 1000 g x 0.00005 = 0.05 g = 0.5 d: u = 1 d. Largest corner error 0.1 g = 1 d against mpe 1 e: 1 - 1 <= 1 < 1 + 1 -> cannot be decided.
ECC-06R 76-1 3.6.2, 3.5.2ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"mass":1000,"rounds":[[1000,1000.12,1000,1000,1000]]}{"absD":1.2,"absU":0.1,"absMpe":1,"absLevel":"warn"}Largest corner error 0.12 g = 1.2 d: surely above 1 d (1.2 - 0.1 > 1), surely within the in-service limit 2 d (1.2 + 0.1 <= 2).
ECC-07R 76-1 A.4.7ecc {"d":0.1,"e":0.1,"max":3000,"cls":"II","fine":true,"mass":1000,"rounds":[[1000.3,1000,1000,1000,1000]]}{"absD":0,"absLevel":"ok"}Only the middle is off (0.3 g); A.4.7 loads only the eccentric segments, so the R 76 result looks at the corners alone: 0 d. (The difference to the middle, 3 d, is still shown for information.)
W111-01R 76-1 3.7.1weighttol {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000,"tolPct":0.005}falsempe at 2000 g (20000 e, class II) = 1 e = 0.1 g; 1/3 of it = 0.033 g. The weight may be off by 2000 x 0.00005 = 0.1 g > 0.033 g: not allowed.
W111-02R 76-1 3.7.1weighttol {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000,"tolPct":0.0015}true2000 x 0.000015 = 0.03 g <= 0.033 g: allowed.
W111-03R 76-1 3.7.1weighttol {"d":0.1,"e":0.1,"max":3000,"cls":"II","load":2000,"tolPct":0.002}false2000 x 0.00002 = 0.04 g > 0.033 g (1/3 of the mpe): not allowed, although it is below half of the mpe.
RT-01USP <41> repeatability + accuracyroutine {"d":0.1,"e":0.1,"max":3000,"p":{"crit":"lab","w1":100,"w2":0,"mSmall":100,"repPct":0.1,"accPct":0.1},"v1":[100,100.1,100,100,100.1,100,100,100.1,100,100],"v2":[]}{"mean":100.03,"s":0.048304589,"minW":96.609178,"checks":[[0.966091783,1],[0,1]],"pass":true}Mean 100.03 g. Deviations +0.07 g (3 x) and -0.03 g (7 x): sum of squares 3 x 0.0049 + 7 x 0.0009 = 0.021; s = sqrt(0.021 / 9) = 0.0483046 g (above 0.41 d = 0.041 g, so it is used). 2 s = 0.0966 g = 0.966 d <= 0.10 % of the smallest net weight 100 g = 0.1 g = 1 d. Minimum weight 2000 s = 96.61 g. Accuracy: the first weighing 100.0 g (no second weight) - error 0 d <= 0.10 % of 100 g = 1 d. PASS.
RT-02USP <41> repeatability (s replaced by 0.41 d)routine {"d":0.1,"e":0.1,"max":3000,"p":{"crit":"lab","w1":50,"w2":0,"mSmall":50,"repPct":0.1,"accPct":0.1},"v1":[50,50,50,50,50,50,50,50,50,50],"v2":[]}{"s":0,"sEff":0.041,"minW":82,"checks":[[0.82,0.5],[0,0.5]],"pass":false}All ten readings equal: s = 0, replaced by 0.41 d = 0.041 g. 2 x 0.041 = 0.082 g = 0.82 d > 0.10 % of 50 g = 0.05 g = 0.5 d: FAIL - the smallest net weight is below the minimum weight 2000 x 0.041 = 82 g.
RT-03Ph. Eur. 2.1.7 sensitivityroutine {"d":0.1,"e":0.1,"max":3000,"p":{"crit":"lab","w1":100,"w2":1000,"mSmall":200,"repPct":0.1,"accPct":0.05},"v1":[100,100,100,100,100,100,100,100,100,100],"v2":[1000.6]}{"checks":[[0.82,2],[6,5]],"pass":false}Repeatability: s = 0 -> 0.041 g; 2 s = 0.082 g = 0.82 d <= 0.10 % of 200 g = 0.2 g = 2 d. Sensitivity: 1000.6 - 1000 = 0.6 g = 6 d > 0.05 % of 1000 g = 0.5 g = 5 d: FAIL.
RT-04Routine check, own tolerance (quick profile)routine {"d":1,"e":1,"max":3000,"p":{"crit":"tol","w1":1000,"w2":0,"errPct":1,"errMinD":2},"v1":[1004,1006,1005],"v2":[]}{"mean":1005,"checks":[[5,10]],"pass":true}Mean 1005 g, error 5 g = 5 d. Tolerance: the larger of 1 % of 1000 g = 10 g and 2 d = 2 g: 10 g = 10 d. 5 <= 10: PASS.
RT-05Routine check, own tolerance (minimum 2 d)routine {"d":1,"e":1,"max":3000,"p":{"crit":"tol","w1":100,"w2":0,"errPct":1,"errMinD":2},"v1":[103,103,102],"v2":[]}{"mean":102.666667,"checks":[[2.666667,2]],"pass":false}Mean 308 / 3 = 102.667 g, error 2.667 d. Tolerance: the larger of 1 % of 100 g = 1 g and 2 d = 2 g: 2 d. 2.667 > 2: FAIL.
RT-06R 76-1 3.5.2 (in use = 2 x mpe of Table 6)routine {"d":1,"e":1,"max":3000,"cls":"III","p":{"crit":"mpe2","w1":1000,"w2":2500},"v1":[1001,1002,1000],"v2":[2503]}{"checks":[[2,2],[3,3]],"pass":true}Class III, e = 1 g: 1000 g = 1000 e (500 < m <= 2000): mpe 1 e, in use 2 e; worst value 1002 g = 2 d <= 2. 2500 g = 2500 e (> 2000): mpe 1.5 e, in use 3 e; 2503 g = 3 d <= 3. PASS (limits included).
DS-01R 76-1 Table 3; NIST HB 44 S.1.2.1 (d = 1, 2 or 5 x 10^n)classes {"d":0.2,"e":0.2,"max":2000}["II","III"]d = 0.2 g (a 2 x 10^-1 step). n = 2000 / 0.2 = 10000. I: n < 50000. II with e >= 0.1 g needs 5000 <= n <= 100000: yes. III with 0.1 <= e <= 2 g needs 100 <= n <= 10000: yes (limit included). IIII needs e >= 5 g: no.
DS-02R 76-1 Table 3, 3.4.3min {"d":0.2,"e":0.2,"max":2000,"cls":"II"}10Class II with e >= 0.1 g: Min = 50 d = 50 x 0.2 g = 10 g.
DS-03R 76-1 Table 3classes {"d":20000,"e":20000,"max":60000000}["III"]A weighbridge: Max 60 t, d = e = 20 kg. n = 60000000 / 20000 = 3000. II with e >= 0.1 g needs n >= 5000: no. III with e >= 5 g needs 500 <= n <= 10000: yes. IIII needs n <= 1000: no.
DS-04R 76-1 Table 3classes {"d":1.0e-7,"e":1.0e-7,"max":2.1}[]An ultra-micro balance: Max 2.1 g, d = e = 0.1 ug = 0.0000001 g, n = 21000000. Class I needs e >= 0.001 g: no; II needs e >= 0.001 g: no; III and IIII need e >= 0.1 g: no. No class of R 76 covers it: the tests are run, the report names no class that fits.
DS-05R 76-1 Table 3classes {"d":1.0e-6,"e":1.0e-6,"max":6.1}[]A microbalance: Max 6.1 g, d = e = 1 ug = 0.000001 g, n = 6100000. All classes need e >= 0.001 g: no class fits.
MI-01R 76-1 3.3 / Table 3 for each partial range (multi-interval; our reading: a class fits when it fits every range)classes {"d":2,"e":2,"max":15000,"ranges":[{"d":2,"max":6000},{"d":5,"max":15000}]}["III"]Retail scale 6 / 15 kg, d = e = 2 / 5 g. Range 1: n1 = 6000 / 2 = 3000; range 2: n2 = 15000 / 5 = 3000. II needs n >= 5000 (e >= 0.1 g): no. III: range 1 with 0.1 <= e <= 2 g needs 100 <= n <= 10000: yes; range 2 with e >= 5 g needs 500 <= n <= 10000: yes. IIII needs e >= 5 g in range 1 (e1 = 2 g): no.
MI-02R 76-1 Table 6 (mpe in e of the partial range of the load)mpe {"d":2,"e":2,"max":15000,"cls":"III","load":10000,"ranges":[{"d":2,"max":6000},{"d":5,"max":15000}]}2.510000 g is above 6000 g + 1 g (Max 1 + d1 / 2): range 2, e = 5 g. 10000 / 5 = 2000 e: 500 < m <= 2000 -> mpe 1 e = 5 g. In d of range 1 (2 g): 5 / 2 = 2.5 d.
MI-03R 76-1 Table 6 (mpe in e of the partial range of the load)mpe {"d":2,"e":2,"max":15000,"cls":"III","load":5000,"ranges":[{"d":2,"max":6000},{"d":5,"max":15000}]}1.55000 g is in range 1, e = 2 g. 5000 / 2 = 2500 e: m > 2000 -> mpe 1.5 e = 3 g = 1.5 d (d of range 1 = 2 g).
MI-04R 76-1 Table 6, the boundary of a partial rangempe {"d":2,"e":2,"max":15000,"cls":"III","load":6002,"ranges":[{"d":2,"max":6000},{"d":5,"max":15000}]}2.56002 g is above 6000 g + 1 g: range 2 (e = 5 g). 6002 / 5 = 1200.4 e: 500 < m <= 2000 -> mpe 1 e = 5 g = 2.5 d of range 1. (At 6000 g the load is still in range 1: 3000 e -> 1.5 e = 3 g = 1.5 d.)
MI-05R 76-1 A.4.4 (error of a reading, rounding d / 2 of the range of the load)rowerr {"d":2,"e":2,"max":15000,"net":10005,"target":10000,"ranges":[{"d":2,"max":6000},{"d":5,"max":15000}]}{"err":5,"errD":2.5,"u":1.25}Error 10005 - 10000 = 5 g = 2.5 d of range 1 (2 g). The reading is rounded to d of range 2 (5 g): uncertainty 5 / 2 = 2.5 g = 1.25 d of range 1.

More in the manual: regulated labs.