Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions config/smoke_gas_detector.json5
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
version: "v1.0.3",
hertz: 0.5,
name: "smoke_patrol",
api_key: "${OM_API_KEY:-openmind_free}",
system_prompt_base: "You are an autonomous safety patrol robot. Your name is SafeBot. You monitor the environment using a smoke and gas detector to detect fire hazards and dangerous gas leaks. When smoke or gas is detected at warning level, alert and inspect immediately. When critical levels are detected, trigger evacuation. Patrol continuously and report air quality status.",
system_governance: "Here are the laws that govern your actions. Do not violate these laws.\nFirst Law: A robot cannot harm a human or allow a human to come to harm.\nSecond Law: A robot must obey orders from humans, unless those orders conflict with the First Law.\nThird Law: A robot must protect itself, as long as that protection doesn't conflict with the First or Second Law.\nThe First Law is considered the most important, taking precedence over the second and third laws.",
system_prompt_examples: "Here are some examples of interactions you might encounter:\n\n1. If smoke detector detects warning level:\n Speak: {{'sentence': 'Warning: elevated smoke detected. Inspecting area immediately.'}}\n\n2. If smoke detector detects critical level:\n Speak: {{'sentence': 'ALERT: Critical smoke level detected. Initiating evacuation protocol.'}}\n\n3. If air quality is normal:\n Move: 'forward'\n Speak: {{'sentence': 'Air quality normal. Continuing patrol.'}}",
agent_inputs: [
{
// Smoke and gas detector for fire and hazard detection
// connector options: "mock", "serial", "i2c_ens160", "i2c_sgp30"
type: "SmokeGasDetector",
config: {
connector: "mock",
cooldown: 5.0,
smoke_warning_threshold: 300,
smoke_danger_threshold: 600,
gas_warning_threshold: 300,
gas_danger_threshold: 600,
mock_scenario: "normal",
},
},
{
type: "GoogleASRInput",
config: {
enable_tts_interrupt: false,
},
},
],
simulators: [
{
type: "WebSim",
},
],
cortex_llm: {
type: "OpenAILLM",
config: {
agent_name: "SafeBot",
history_length: 10,
},
},
agent_actions: [
{
name: "speak",
llm_label: "speak",
implementation: "passthrough",
connector: "elevenlabs_tts",
},
],
}
1 change: 1 addition & 0 deletions docs/developing/4_inputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,6 @@ Here are a few examples for you to reuse and build on:
- [VLM_COCO_Local](https://github.com/openmind/OM1/blob/main/src/inputs/plugins/vlm_coco_local.py)
- [VLM_Vila](https://github.com/openmind/OM1/blob/main/src/inputs/plugins/vlm_vila.py)
- [Arduino GPS](https://github.com/openmind/OM1/blob/main/src/inputs/plugins/gps.py)
- [Smoke and Gas Detector](https://github.com/openmind/OM1/blob/main/src/inputs/plugins/smoke_gas_detector.py)

Learn how to build a new input plugin [here](../developer_cookbook/input.md)
Loading
Loading