# Product datasheet from Markdown to PDF

A datasheet with specification tables, a dimension drawing, a pinout, a formula and a part mark comes from one Markdown file.

Specifications in tables, a dimension drawing and a pinout in SVG, the derating formula in math, a connector packet layout, an ordering table and a Data Matrix part mark.

- PDF: https://legivel.com/examples/documents/product-datasheet.pdf
- Page: https://legivel.com/examples/documents/product-datasheet
- Open in the editor: https://legivel.com/markdown-to-pdf?sample=product-datasheet
- More whole documents from Markdown to PDF: https://legivel.com/examples/documents

## Markdown source

````markdown
---
title: Datasheet, TS-200 industrial temperature sensor
author: Product documentation
---

# TS-200 industrial temperature sensor

**Platinum resistance sensor, 4 to 20 mA output, stainless steel probe. Revision C, April 2026.**

The TS-200 measures the temperature of liquids and gases from -50 °C to +200 °C and reports it as a current loop signal. It is intended for process plants, cold stores and heating networks, and is approved for use in hazardous areas when installed with a certified barrier.

## Specifications

| Parameter | Value | Condition |
|:----------|:------|:----------|
| Measuring range | -50 °C to +200 °C | configurable in 10 K steps |
| Accuracy | ±0.15 °C | at 0 °C, class A element |
| Output | 4 to 20 mA, two-wire | 24 V DC loop |
| Response time | 8 s | $t_{90}$ in water at 0.4 m/s |
| Supply voltage | 10 to 30 V DC | reverse polarity protected |
| Probe | ⌀ 6 mm, 100 mm, stainless 316L | other lengths on request |
| Process connection | G ½ A | |
| Ingress protection | IP67 | connector mated |
| Ambient temperature | -40 °C to +85 °C | housing |
| Mass | 180 g | with 100 mm probe |

## Dimensions

```svg
<svg viewBox="0 0 440 150" width="520" height="177" font-family="sans-serif" font-size="11">
  <defs>
    <marker id="d" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
      <path d="M0 0 L10 5 L0 10 Z" fill="#1e293b"/>
    </marker>
  </defs>
  <g fill="#e2e8f0" stroke="#1e293b" stroke-width="1.5">
    <rect x="20" y="40" width="90" height="60" rx="6"/>
    <rect x="110" y="55" width="30" height="30"/>
    <rect x="140" y="62" width="260" height="16" rx="8" fill="#f8fafc"/>
  </g>
  <g stroke="#1e293b" stroke-width="1" fill="#1e293b">
    <line x1="140" y1="120" x2="400" y2="120" marker-end="url(#d)"/>
    <line x1="400" y1="120" x2="140" y2="120" marker-end="url(#d)"/>
    <text stroke="none" x="270" y="136" text-anchor="middle">100 (probe length L)</text>
    <line x1="20" y1="25" x2="110" y2="25" marker-end="url(#d)"/>
    <line x1="110" y1="25" x2="20" y2="25" marker-end="url(#d)"/>
    <text stroke="none" x="65" y="18" text-anchor="middle">90</text>
    <line x1="420" y1="62" x2="420" y2="78" marker-end="url(#d)"/>
    <line x1="420" y1="78" x2="420" y2="62" marker-end="url(#d)"/>
    <text stroke="none" x="426" y="74">⌀ 6</text>
    <text stroke="none" x="125" y="50" text-anchor="middle" font-size="9">G ½ A</text>
  </g>
  <text x="20" y="146" fill="#64748b">Dimensions in mm</text>
</svg>
```

## Electrical connection

M12 connector, A-coded, 4 pins. Pins 3 and 4 are not connected.

```svg
<svg viewBox="0 0 320 120" width="320" height="120" font-family="sans-serif" font-size="12">
  <circle cx="60" cy="60" r="48" fill="#f1f5f9" stroke="#1e293b" stroke-width="2"/>
  <g fill="#1e293b">
    <circle cx="40" cy="40" r="6"/><circle cx="80" cy="40" r="6"/>
    <circle cx="40" cy="80" r="6"/><circle cx="80" cy="80" r="6"/>
  </g>
  <rect x="55" y="8" width="10" height="8" fill="#1e293b"/>
  <g fill="#1e293b">
    <text x="24" y="33">1</text><text x="90" y="33">2</text>
    <text x="24" y="98">3</text><text x="90" y="98">4</text>
  </g>
  <g font-size="12" fill="#1e293b">
    <text x="130" y="36">Pin 1: loop +, 10 to 30 V DC</text>
    <text x="130" y="58">Pin 2: loop -, 4 to 20 mA</text>
    <text x="130" y="80">Pin 3: not connected</text>
    <text x="130" y="102">Pin 4: not connected</text>
  </g>
</svg>
```

The temperature is read from the loop current $I$ in milliamperes as

$$ T = T_{\min} + \frac{I - 4}{16}\,(T_{\max} - T_{\min}), \qquad \text{so with the default range} \quad T = -50 + 15.625\,(I - 4)\ ^\circ\mathrm{C}. $$

The maximum loop resistance at supply voltage $U$ is $R_{\max} = \dfrac{U - 10\ \mathrm{V}}{0.022\ \mathrm{A}}$, which is 636 Ω at 24 V.

## Digital register map

The optional serial interface exposes one 32-bit status word:

```mermaid
packet
title Status word
0-15: "Temperature, 0.01 K steps, signed"
16-23: "Sensor status"
24-27: "Range code"
28: "Wire break"
29: "Short circuit"
30: "Over range"
31: "Under range"
```

## Ordering

| Order code | Probe length | Range | Approval |
|:-----------|-------------:|:------|:---------|
| TS-200-100-S | 100 mm | -50 to +200 °C | general purpose |
| TS-200-150-S | 150 mm | -50 to +200 °C | general purpose |
| TS-200-100-X | 100 mm | -50 to +200 °C | hazardous area, zone 1 |
| TS-200-250-X | 250 mm | -50 to +200 °C | hazardous area, zone 1 |

Each sensor carries a laser-marked Data Matrix with its order code and serial number:

```barcode
type: datamatrix
data: TS-200-100-S SN 26041700731
module-color: #1e293b
```

> [!WARNING]
> In a hazardous area the sensor must be installed with a certified intrinsic safety barrier and the cable screen earthed at one end only. See the installation manual, document IM-TS200-C.

*All organizations and products in the sample documents are invented. Names and figures are illustrative.*
````
