No products in the cart.
TECH
Low-Power Edge Camera External Trigger Guide : PIR, GPIO, MQTT, and Battery Life – NE101 & NE301 Guide
Every CamThink camera node supports multiple trigger modes — from hardware PIR and IO signals to remote MQTT commands. This guide shows you how to choose the right trigger for your project, understand the battery life impact, and plan your integration with confidence. Covers NE101 and NE301 with real-world payload examples and deployment patterns from production systems.
Trigger Architecture: How Triggers Work
A low-power camera node spends almost all its time in deep sleep — drawing microamps, waiting for a reason to wake. The trigger is that reason. When a trigger fires, the device goes through a fixed sequence: wake → stabilise → capture → infer (if applicable) → upload over MQTT → return to sleep. The entire active window is short — typically under 15 seconds for both NE101 and NE301 on WiFi, depending on network conditions. This sleep-first design is what enables years of battery life — the camera only draws power when it has a reason to be awake.
Every trigger ultimately produces the same output: an MQTT message containing device
metadata, battery status, capture type, and the encoded image. The trigger type is
recorded in the snapType field (NE101) or equivalent field in the NE301 payload,
so your downstream system always knows why the camera fired. This consistency
simplifies integration — whether the trigger is PIR, scheduled, or remote command,
your backend receives the same predictable payload format.
Core data flow — any trigger type
Trigger Event
PIR / GPIO / Timer
MQTT / AI detect
Button
MQTT / AI detect
Button
→wake
signal
signal
Camera Node
Wake → Capture
Infer (NE301)
Encode JPEG
Infer (NE301)
Encode JPEG
→MQTT
publish
publish
Network
WiFi / LTE
HaLow
HaLow
→JSON
payload
payload
Your Platform
MQTT broker
NeoMind
Custom system
NeoMind
Custom system
The split between hardware triggers and software triggers matters for your deployment strategy. Hardware triggers (PIR, door sensors, alarm inputs) can wake the camera from deep sleep instantly — they’re the most power-efficient option for battery-powered deployments. Software triggers (scheduled capture, remote MQTT commands) give you more control and flexibility, but require the camera to wake periodically, which uses more battery. This trade-off is covered in detail in the sleep/wake section. The key insight: choose hardware triggers when battery life is critical, and add software triggers when you need scheduled or on-demand capture capabilities.
6 Core Trigger Types — When to Use Each
Both NE101 and NE301 support the following trigger categories. NE301 adds AI detection and MQTT remote command as additional modes (covered separately). All trigger modes are configured in the Web UI — no coding required. The trigger type you choose affects battery life, response time, and deployment complexity, so it’s worth matching the trigger to your use case from the start. Below is a quick reference guide to help you choose the right option for your project.
Hardware
PIR Sensor Trigger
A passive infrared sensor connected to the device’s PIR input detects heat signature
movement and fires a hardware wake signal. The NE101 has a 16-pin IO interface supporting PIR.
The NE301 has a dedicated 4-pin Wafer PIR connector.
Best for: Security cameras, wildlife monitoring, intrusion detection — any
deployment where you need reliable motion detection without draining battery. PIR triggers
are 90% more efficient than always-on cameras because the device only
wakes when something moves.
Use when: you need long-term battery life and event-based capture.
snapType: "PIR"
Hardware
Alarm Input / GPIO Trigger
A dry-contact or logic-level signal on the IO interface triggers capture. The NE101’s
16-pin IO header includes UART×1, RS485×1, I2C×1, SPI×1, GPIO×2. The NE301 exposes
the same 16-pin IO connector. This path accepts signals from door sensors,
pressure mats, access control panels, or any normally-open/normally-closed contact.
Best for: Industrial automation, access control, equipment monitoring — any
deployment where you need the camera to respond to events from other systems. This eliminates
manual monitoring and reduces false alerts by only capturing when your external sensors
detect an anomaly.
Use when: an external system event (door open, conveyor fault, gate break)
should trigger image capture as part of a wider automation loop.
NE101 IO trigger deployment tip
Planning note for NE101: The PIR sensor and Alarm input share the same GPIO on NE101’s hardware design. For most deployments, choose PIR or IO/alarm triggers — not both. If your project requires simultaneous PIR + alarm inputs, NE301’s dedicated connectors avoid this constraint. For NE101-specific IO integration questions, check the Alarm Application Trigger Guide or consult our integration team.
Hardware
Acoustic / Radar Trigger
Acoustic detection via a microphone expansion board (plug-and-play on the sensor
expansion header) wakes the device on sound threshold crossing. Radar (e.g., mmWave)
triggers on proximity without requiring line-of-sight heat signature.
Use when: PIR is not suitable — for example, detecting glass breaking
by sound, or monitoring a doorway where thermal masking is a concern.
Timer
Scheduled / Timer Trigger
The device wakes at configured times (up to 8 scheduled times per day on NE101,
or interval-based in minutes/hours/days) and captures regardless of scene activity.
The NE101 Web UI supports both Timed Capture (fixed daily times)
and interval modes.
Best for: Meter reading, inventory monitoring, construction progress
tracking, environmental sampling — any deployment where you need consistent
periodic data rather than event-based capture. Scheduled triggers give you
predictable battery drain and data collection patterns.
Use when: you need periodic data collection on a fixed schedule.
snapType: "Scheduled"
Remote · NE301 only
MQTT Remote Command Trigger
Your platform publishes a control message to the device’s downlink topic
(e.g., ne301/2A207D/down/control). The device receives it and fires
a capture immediately. This is the primary “on-demand” capture mechanism for
platform-initiated workflows — a supervisor requests a snapshot at will.
Best for: Human-in-the-loop workflows, on-demand verification,
supervisor-initiated inspections. Instead of dispatching someone to a site,
you can request a current image instantly. This saves time and reduces
truck rolls while maintaining visual awareness.
NE301 only: This trigger mode is currently exclusive to NE301 due to its ultra-low deep sleep current (6.1 µA), which makes periodic wake-up to check for remote commands practical while still preserving multi-year battery life. NE101 relies on hardware triggers (PIR, IO) and scheduled capture for optimal battery efficiency. Note: Like NE101, NE301 cannot receive MQTT commands while in deep sleep — it must wake periodically (or be triggered by hardware) to check for pending commands.
Use when: your system needs to request a frame on demand —
for example, when a sensor elsewhere in the system detects an anomaly and wants visual confirmation.
Button
Physical Button / Manual
The physical capture button on the device body triggers an immediate capture.
Primarily used for testing and commissioning — verify framing and exposure in the
field before leaving the site. snapType: "Button" appears in the payload
so automated systems can filter these test captures from production data.
Best for: On-site commissioning, field testing, demo deployments.
Press the button to confirm the camera is pointed at the right target and the
exposure looks good before walking away. This prevents “I installed 50
cameras but half are pointing at the wall” scenarios.
NE301 only: AI Detection Trigger
The NE301 adds a seventh trigger mode: AI Detection. The device runs on-device inference continuously (or on hardware wake from PIR/IO) and only publishes an MQTT message when the configured model fires above the confidence threshold. This two-stage gate — hardware pre-filter + AI software filter — is the primary mechanism for reducing false positive alerts in security deployments. Instead of flooding your inbox with “tree branch moved” alerts, you only get notified when a person is actually present. For security deployment examples and best practices, check the NE301 documentation.
| Trigger / Capture Mode | NE101 | NE301 | Best For |
|---|---|---|---|
| PIR hardware trigger | ✔ | ✔ | Battery-powered motion capture |
| GPIO / alarm input | ✔ | ✔ | Door sensors, PLC, external alarms |
| Scheduled capture | ✔ | ✔ | Meter reading, site progress, periodic inspection |
| MQTT remote command | ✗ | ✔ | On-demand remote snapshot |
| AI detection trigger | ✗ | ✔ | Person / vehicle / object-filtered alerts |
| Manual button | ✔ | ✔ | Installation and field testing |
IO Interfaces & Integration Boundary
Both NE101 and NE301 expose a 16-pin IO connector that determines what external sensors you can integrate. This matters because it affects whether you can connect your existing infrastructure directly (door sensors, industrial PLCs, smart meters) or if you’ll need custom integration work. The table below summarizes what’s available on each device — use it to check compatibility before you commit to a hardware platform.
| Pin Function | NE101 (16-pin IO) | NE301 (16-pin IO) | Typical use |
|---|---|---|---|
| UART | ×1 | ×1 | Serial sensors, GPS modules, barcode readers |
| RS485 | ×1 | ×1 | Industrial sensors, Modbus devices, flow meters |
| I2C | ×1 | ×1 | Temperature/humidity, ToF distance, IMU sensors |
| SPI | ×1 | ×1 | High-speed sensor peripherals, displays |
| GPIO | ×2 | ×2 | Alarm inputs, dry contacts, relay control, status indicators |
| Power (3.3 V / 5 V) | ×1 each (switchable) | ×1 each (switchable) | Power external sensors without a separate supply |
| Audio IO (NE301) | — | Input + Output (Wafer) | Microphone for acoustic detection, speaker output |
| PIR connector | Via 16-pin IO | Dedicated 4-pin Wafer | Direct PIR sensor connection, hardware wake |
| Source: NE301 Wiki and NE101 Wiki. Sensor expansion board adds 9 plug-and-play sensors for both devices. Don’t see the interface you need? Both cameras have fully open-source firmware — you can add custom protocols. Or Contact Our Team to discuss integration requirements. | |||
Integration boundary
The standard interface covers most deployment scenarios without custom firmware. The boundary where customisation begins: if you need to change the MQTT payload format, implement a non-standard protocol on the IO pins, or integrate a sensor type not covered by the expansion board ecosystem, that requires firmware modification. The good news: Both firmware codebases are fully open-source on GitHub — NE101 firmware (ESP-IDF based) and NE301 firmware are available for cloning, modification, and custom builds. Standard deployments — PIR trigger, scheduled capture (NE101/NE301), MQTT remote command (NE301) — require no firmware changes. If you’re unsure whether your use case requires custom development, reach out to our team — we can help you assess the effort and suggest the fastest path to deployment.
Camera Node vs Gateway: Which Architecture Fits Your Project?
CamThink products serve two distinct architectural roles. Choosing the right one matters because they solve different problems: camera nodes (NE101, NE301) capture and transmit images, while gateways (NG4500) receive and process images from multiple cameras. Understanding this distinction upfront helps you design a system that fits your needs without over- or under-specifying hardware.
| Role | Products | What it does | Does it run AI? | Connects to |
|---|---|---|---|---|
| Camera Node | NE101, NE301 | Captures images on trigger, uploads MQTT payload. NE301 also runs on-device inference. | NE101: ❌ NO NE301: ✅ YES (0.6 TOPS on-device) | MQTT broker directly via WiFi / LTE / HaLow |
| Edge Gateway / Server | NG4500 | Aggregates multiple camera feeds, runs heavy AI models (YOLOv8m+, VLM, LLM), hosts NeoMind platform | Yes — 20–100 TOPS (157 TOPS SUPER mode) | Camera nodes via Ethernet / WiFi; backhaul to cloud or SCADA |
| The NG4500 is not a camera — it has no image sensor. It receives images from camera nodes and processes them centrally. The NE101 is not an AI camera — it captures and transmits without on-device inference. The NE301 bridges both roles: it is a camera node that also runs lightweight AI. |
||||
Typical hybrid architecture
NE301 cameras handle first-pass AI filtering on-device (PIR wake → capture → infer → only send alert if model fires). The NG4500 gateway receives those filtered alerts and runs a more complex secondary model (planogram compliance, LLM-based scene description) that the NE301’s 0.6 TOPS NPU cannot handle. This split keeps NE301 battery life high while enabling richer analytics at the NG4500 level. See the gateway architecture guide for a worked example.
Designing a deployment with specific trigger or integration requirements? We can help you choose the right hardware and configuration.
MQTT Payload Structure: NE101 vs NE301
After capture, the device encodes the JPEG image as Base64 and embeds it directly in a JSON MQTT payload. There is no separate HTTP file transfer — everything travels in a single MQTT message on the configured topic. This simplifies integration — your backend only needs an MQTT subscriber, no separate file server or multipart parsing. Understanding the payload format upfront helps you plan your bandwidth requirements and integration effort.
NE101 payload structure
The NE101 sends a compact JSON payload with device metadata, battery status, and the image. All the information your backend needs is in one message — timestamp, device ID, trigger type, battery level, and the image itself.
NE101 — MQTT JSON payload (topic: configurable, e.g.
meters/site-a/cam-01)
{
"ts": 1740640441620, // Unix timestamp, milliseconds
"values": {
"devName": "NE101 Sensing Camera",
"devMac": "D8:3B:DA:4D:10:2C",
"battery": 84, // Battery % — monitor for replacement planning
"snapType": "PIR", // Button | Scheduled | PIR | Alarm
"localtime":"2026-04-22 08:30:00",
"imageSize":74371, // bytes
"image": "data:image/jpeg;base64,..."
}
}
NE301 payload structure
The NE301 payload is richer by design — it bundles the AI inference result with the image in a single message. This eliminates a separate inference step on your server — the camera tells you exactly what it detected (person, vehicle, etc.) with confidence scores and bounding box coordinates. Your downstream system can act directly on this data without re-processing the image.
NE301 — MQTT JSON payload (abridged; full schema in Wiki)
{
"metadata": {
"image_id": "cam01_1766132582",
"timestamp": 1766132582,
"width": 1280, "height": 720, "size": 61880
},
"device_info": {
"device_name": "NE301-2A207D",
"battery_percent": 41,
"power_supply_type": "battery",
"communication_type":"wifi"
},
"ai_result": {
"model_name": "YOLOv8 Nano Object Detection (Int8)",
"inference_time_ms":50, // On-device inference, pre-upload
"ai_result": {
"type_name": "object_detection",
"detection_count": 1,
"detections": [
{
"class_name": "person",
"confidence": 0.876,
"x": 0.45, "y": 0.30,
"width": 0.18, "height": 0.62
}
]
}
},
"image_data": "data:image/jpeg;base64,..."
}
For NE301, configure the Data Reporting Topic (uplink) and Data Receiving Topic (downlink for remote control) separately in the Web UI under Application Management → MQTT/MQTTS. Tip: Use the MQTTX client tool during development to inspect payloads in real-time — this helps you verify integration before writing backend code.
Payload format is currently fixed
The NE101 and NE301 MQTT payload formats are defined by the firmware and cannot be modified through the Web UI. If your integration requires a custom output schema, options are: (a) a thin translation layer on your MQTT broker (NeoMind’s automation engine or a Node-RED flow) that re-publishes in your format, or (b) firmware customisation via the NE101 / NE301 open-source repositories on GitHub. Most deployments use option (a) — it’s faster and doesn’t require firmware changes.
Battery Life: How Trigger Frequency Affects Power Consumption
Battery life is determined almost entirely by how often the camera wakes up, not how deep it sleeps. Both NE101 and NE301 spend most of their time in deep sleep drawing microamps — the power drain during active cycles is what adds up. The key insight: Reducing captures from 20/day to 5/day roughly quadruples battery life. This section gives you the power figures you need to plan deployments that last years, not months.
NE301 power figures
- Deep sleep: 6.1 µA (managed by the U0 power controller — the STM32U073Kx monitors sensors and wakes the STM32N6 only when needed)
- Active (WiFi mode): 170–180 mA
- Wake-up latency: milliseconds from deep sleep to active
- Battery baseline: 4× AA alkaline, ~13 years at 1 capture/day in WiFi mode
- LTE Cat.1: active current and cycle time vary by network conditions and module configuration (EG912U-GL global / EG915Q-NA North America)
NE101 power figures
- Deep sleep: ≤1 W standby (system level)
- Battery baseline: 3+ years in WiFi mode at 10 captures/day (4× AA)
- LTE Cat.1: shorter battery life than WiFi at equivalent capture frequency.
The key design principle: the active window is short and fixed — it is the number of active windows per day that you control. Reducing captures from 20/day to 5/day roughly quadruples battery life. Choosing WiFi over LTE at equivalent capture frequency roughly doubles it (lower TX current, shorter TX window).
Plan your battery life with confidence
Use the official CamThink Battery Life Calculator to model expected battery life for your specific combination of capture frequency, connectivity type (WiFi / LTE / HaLow), and ambient temperature before purchasing. This helps you avoid surprises — plan battery replacement intervals and budget accordingly. Cold deployments (0–10°C) reduce alkaline AA capacity by 20–30%; plan accordingly or switch to lithium AA cells.
Frequently Asked Questions
Quick answers to common questions about triggers, integration, and battery life.
Can I trigger the camera remotely?
NE301 supports remote MQTT trigger (with periodic wake-up to check for commands). NE101
does not support remote MQTT trigger — it uses hardware triggers (PIR, IO) and scheduled
capture to maximize battery life. For NE301 deployments, configure the device to wake
on a timer interval (e.g., every 60 seconds) to check for pending remote commands.
This trades some battery life for on-demand flexibility — adjust the
wake interval based on how responsive you need remote triggers to be.
What is the difference between PIR trigger and IO/alarm trigger in practice?
A PIR sensor detects infrared radiation changes — it is specifically designed for
detecting warm-blooded moving objects (people, animals) within its detection cone.
An IO/alarm input is a generic digital signal — it can come from any switch, sensor,
or controller that produces a contact closure or logic-level output: door sensors,
pressure mats, access control relays, industrial PLCs, or custom hardware.
Use PIR when you want autonomous people/animal detection. Use IO/alarm when
your trigger source is an external system event.
Can multiple trigger types be active simultaneously?
Yes. You can enable PIR trigger and scheduled capture simultaneously on both NE101
and NE301. The device will capture on whichever condition fires first, and the
snapType field in the payload records which trigger actually fired.
This allows a system like: “capture every 6 hours on schedule, but also capture
immediately on PIR detection.” Each capture event is independent — there is no
conflict resolution needed at the device level.
How do I route different trigger types to different downstream actions?
Filter on the
snapType field (NE101) or ai_result.type_name
field (NE301) in your MQTT subscriber. For example, in Node-RED:
route snapType === "PIR" messages to your alarm platform,
route snapType === "Scheduled" messages to your analytics database.
NeoMind’s automation engine supports conditional routing rules without code —
configure trigger-condition → action workflows in the Web UI.
The NE301 MQTT payload format is not what my system expects. Can I change it?
The payload format is fixed in the NE301 firmware and cannot be changed through the
Web UI. Two practical options: (1) deploy a lightweight MQTT broker middleware
(Node-RED, EMQX rule engine, or NeoMind’s automation engine) that subscribes to
the NE301 topic, transforms the JSON, and re-publishes in your required format —
this is zero-firmware-change and works in production; (2) fork the
NE301 open-source firmware on GitHub
and implement your custom output schema — this requires ESP-IDF
development experience. Most integrations use option (1).
Does the NG4500 have a camera or trigger inputs of its own?
No. The NG4500 is a compute gateway — it has no image sensor. It receives image data
from NE101/NE301 cameras or standard IP cameras over Ethernet/WiFi, runs AI models
on those feeds, and publishes results. For trigger inputs at the gateway level,
the NG4500 has DI/DO (digital input/output) connectors that can receive alarm signals
and output relay controls — but these control the gateway’s logic, not a camera shutter.
Camera triggers always originate at the camera node level.
How do I set up MQTT remote trigger from my existing platform?
Configure the NE301’s Data Receiving Topic in the Web UI
(Application Management → MQTT/MQTTS). The default format is
Note: MQTT remote command trigger is currently supported on NE301 only. For NE101, use hardware triggers (PIR, IO/alarm) or scheduled capture to maintain optimal battery life. The full command format is documented in the MQTT Data Interaction guide.
ne301/<device-id>/down/control. Publish a trigger command JSON
to this topic from your platform’s MQTT client. The device must be network-connected
(not in deep sleep) to receive and execute the command.Note: MQTT remote command trigger is currently supported on NE301 only. For NE101, use hardware triggers (PIR, IO/alarm) or scheduled capture to maintain optimal battery life. The full command format is documented in the MQTT Data Interaction guide.