PIDSTACK

GPS receiver, good fix

Free

sensor-gps-good · Automation · Sensors · 48×48 grid units

A-101

Five states

  • Running
  • Warning
  • Failure
  • Stopped
  • No data

Four themes

GPS receiver, good fix in each theme (rows) and state (columns)
ThemeRunningWarningFailureStoppedNo data
Day
Bright
Dusk
Night

About this symbol

Meaning
satellite position receiver, strong signal
Convention
ISA-101 / IEC 60417 style (ISA (opens in a new tab), IEC (opens in a new tab))
Tags
Access
Free: code and SVG for everyone.

Drawn from scratch. The convention names the meaning the symbol stands for; no standard text or figure is reproduced.

Install with the shadcn CLI
npx shadcn@latest add "https://pidstack.com/r/sensor-gps-good.json"
Use in React
import { SensorGpsGood } from "@/components/pidstack/sensor-gps-good"
import "@/components/pidstack/pidstack.css"

<div data-theme="day">
  <SensorGpsGood state="running" label="A-101" size="medium" />
</div>
SVG source
<svg xmlns="http://www.w3.org/2000/svg" role="img" aria-label="GPS receiver, good fix" class="sym" data-state="running" data-sym="sensor-gps-good" viewBox="0 0 48 48" width="48" height="48" focusable="false"><title>GPS receiver, good fix</title><style>.sym{color:var(--sym-state-running,#12803a);--a:var(--sym-state-running,#12803a);--_f:var(--sym-fill-running,#d3f0dc);overflow:visible;display:block;flex:none}
.sym[data-state=warning]{color:var(--sym-state-warning,#d99a00);--a:var(--sym-state-warning,#d99a00);--_f:var(--sym-fill-warning,#fff0b0)}
.sym[data-state=failure]{color:var(--sym-state-failure,#d0021b);--a:var(--sym-state-failure,#d0021b);--_f:var(--sym-fill-failure,#fcd3d7)}
.sym[data-state=stopped]{color:var(--sym-state-stopped-line,#000000);--a:var(--sym-state-stopped-line,#000000);--_f:var(--sym-state-stopped-fill,#ffffff);filter:var(--sym-state-stopped-halo,none)}
.sym[data-state=stopped] text:not(.tb){fill:var(--sym-state-stopped-line,#000000)}
.sym[data-state=unknown]{color:var(--sym-off,#66727f);--a:var(--sym-off,#66727f);--_f:var(--sym-bg,#ffffff)}
.sym *{stroke-linecap:round;stroke-linejoin:round}
.sym .k{fill:none;stroke:currentColor;stroke-width:2}
.sym .b{fill:var(--_f);stroke:currentColor;stroke-width:2}
.sym .a{fill:none;stroke:var(--a);stroke-width:2}
.sym .ab{fill:var(--_f);stroke:var(--a);stroke-width:2}
.sym .s{fill:currentColor;stroke:none}
.sym .as{fill:var(--a);stroke:none}
.sym .th{stroke-width:4}
.sym .lv{fill:var(--a);opacity:.4;stroke:none}
.sym .halo{fill:var(--sym-bg,#ffffff);stroke:var(--sym-bg,#ffffff);stroke-width:2}
.sym .bg{stroke:var(--sym-bg,#ffffff);stroke-width:1.8;fill:none}
.sym .bgf{fill:var(--sym-bg,#ffffff);stroke:none}
.sym .flow{fill:none;stroke:var(--a);stroke-width:3.4;stroke-dasharray:0.1 20}
.sym text,.sym .x{font-family:var(--sym-font,system-ui,"Segoe UI",Roboto,sans-serif);font-weight:700;text-anchor:middle;fill:var(--sym-text,#1f2933);stroke:none}
.sym text.tb{fill:var(--sym-bg,#ffffff)}
.sym[data-state=unknown] .k,.sym[data-state=unknown] .b{stroke-dasharray:4 3}
.sym .nd{fill:none;stroke:currentColor;stroke-width:2.4;transition:transform .7s cubic-bezier(.34,1.56,.64,1)}
.sym .zk-ok,.sym .zk-warning,.sym .zk-failure{fill:none;stroke-width:4;stroke-linecap:butt}
.sym .zk-ok{stroke:var(--sym-state-running,#12803a)}
.sym .zk-warning{stroke:var(--sym-state-warning,#d99a00);stroke-dasharray:5 2.5}
.sym .zk-failure{stroke:var(--sym-state-failure,#d0021b);stroke-dasharray:2 2}
.sym[data-state=stopped] [class^=zk-]{opacity:.55}
.sym .g-led{stroke:none}</style><g><circle class="b" cx="16" cy="26" r="9"></circle><path class="k" d="M16 14 V38 M4 26 H28" stroke-width="1.5"></path><circle class="s" cx="16" cy="26" r="2"></circle><path class="k" d="M27 20 A8 8 0 0 1 27 32" style="opacity:1" stroke-width="1.8"></path><path class="k" d="M32 17 A13 13 0 0 1 32 35" style="opacity:1" stroke-width="1.8"></path><path class="k" d="M37 14 A18 18 0 0 1 37 38" style="opacity:1" stroke-width="1.8"></path></g></svg>