System Integration
The Cogniteam Cloud Platform agent is a powerful service designed for deployment on edge devices. It supports seamless integration with ROS systems and can operate independently within containerized environments, ensuring flexibility and scalability.
Key Features
- Cloud Communication: Utilizes gRPC for efficient communication with the cloud.
- Low-Latency Video Transmission: Supports WebRTC for real-time video streaming, operable both locally and globally, including in network-isolated environments.
- Optimized for Performance: Includes load-balancing mechanisms to enhance network performance, even with large data sets such as Point Cloud data.
Integration with ROS-Based Systems
The Cogniteam Cloud Platform agent simplifies integration with ROS1 and ROS2 systems, requiring minimal configuration.
Compatibility
- ROS1 Noetic and ROS2 Humble: Automatically reflects all available topics from the robot to the cloud without additional code.
- Standard ROS Messages: Fully supports all standard ROS message types.
- Custom ROS Messages: Compatible with a wide range of custom messages from our sensor partners.
Technical Details
- RTI DDS: Utilized for ROS2 communication.
- Custom Integrations: Our solutions team provides support for non-standard messages to ensure smooth integration.
- Other ROS Versions: Support is available for other ROS distributions, though minor adjustments may be needed if message definitions vary.
Integration with Non-ROS-Based Systems
For non-ROS systems, the agent provides flexible data streaming capabilities and custom integrations.
Data Streaming
- Supports streaming data from and to CSV formats.
- Offers custom components to convert data into ROS-compatible formats, managed by the agent.
Protocol Support
Examples of supported protocols include:
- MQTT: Used for applications such as pole light control.
- RTSP: Enables video streaming from IP cameras.
Our solutions team can extend support to other protocols based on specific project requirements.
Customization and Support
Cogniteam offers comprehensive support for system integration, including:
- Assisting with the incorporation of non-standard message types.
- Providing tailored solutions for unique protocols and data formats.
Whether your system is ROS-based or non-ROS-based, our platform ensures seamless integration and reliable performance.
Nimbus CLI Integration (Optional)
The Nimbus CLI (nimbus) provides a terminal interface for inspecting and controlling the deployed agent without the web UI. It exposes documented command groups (session, platform, kpi, config, system, comp, device, stream, service, param, datalog, ros2-listen, grep) as described in the dedicated CLI reference.
When to Use Nimbus
- Headless diagnostics (hardware info, KPI monitoring).
- Start/stop data logging locally (e.g., ad‑hoc RTSP or ROS topic recording).
- Inspect / manage components and their parameters.
- Stream or echo messages for quick validation.
- Discover ROS2 topics on specific domains.
Command Pattern
nimbus <group> <command> [arguments]
Use nimbus -h or nimbus <group> -h for contextual help.
Focused Examples (All are documented commands)
1. Session & Access
nimbus session list
nimbus session local
2. Platform / System Health
nimbus platform cpu
nimbus platform memory
nimbus system status
3. KPI Monitoring (Live Metrics)
nimbus kpi monitor-updates
4. Configuration Lifecycle
nimbus config show
nimbus config start
nimbus config stop
5. Data Logging (Recording)
# Record a ROS2 image topic
nimbus datalog start-record /camera/image frontcam raw --file-name run1
# Stop a CLI recorder
nimbus datalog stop-record frontcam
# Start / stop a managed segment
nimbus datalog start-segment cam01
nimbus datalog stop-segment cam01
6. Logs & Upgrades
nimbus system log
nimbus system agent-version
nimbus system upgrade
Scripting Tips
- Prefer explicit group + command; defaults (e.g.,
nimbus system) map tostatus. - Use shell quoting for JSON payloads in
stream puband service calls. - Back up before upgrades:
nimbus system agent-backup pre_upgrade.
Common Failure Modes
| Situation | CLI Output | Mitigation |
|---|---|---|
| Agent offline | connection timeout | Check service status / restart agent |
| Unauthorized | permission denied | Ensure API key / roles configured |
| Component not found | error: unknown component | Verify name via nimbus comp list |
| Recorder id conflict | error: existing recorder | Choose a unique <id> or stop current |
Extending Usage
Use nimbus grep <keyword> to discover commands interactively. Custom extensions are not currently supported via nimbus naming conventions (only documented groups are available).
Local Access & Monitoring
Recent releases introduced and refined direct local access capabilities:
-
Local Monitoring Page: Reach the robot dashboard directly via
https://<robot-ip>/monitoringwhen the agent is installed. -
Local Password: Configure an access password in
/etc/nimbus/nimbus.jsonthen retrieve it with:nimbus session local -
Edit Mode: Enable local dashboard customization by setting
"LOCAL_EDIT_MODE": trueinnimbus.json. -
SSH & ROS Settings Exposure: Local access also exposes SSH access guidance and selected ROS-related settings for quicker debugging.
-
Fallback Behavior: When cloud connectivity is lost, local monitoring continues functioning (subject to LAN reachability).
Minimal nimbus.json Example
{
"LOCAL_PASSWORD": "change-me",
"LOCAL_EDIT_MODE": true,
"ROS_DOMAIN_ID": 25
}
Security Notes
- Use a strong password; rotate periodically.
- LOCAL_EDIT_MODE should be disabled (
false) on production robots to prevent accidental layout edits. - SSH access should be secured with key-based authentication where possible.
Troubleshooting
| Symptom | Cause | Resolution |
|---|---|---|
| 403 on /monitoring | Missing/incorrect password | Verify LOCAL_PASSWORD and restart agent |
| Layout changes not saved | Edit mode disabled | Set LOCAL_EDIT_MODE true and reload page |
| ROS topics absent | Domain mismatch | Confirm ROS_DOMAIN_ID matches runtime |
| SSH not reachable | Firewall / service inactive | Validate sshd status and network ACLs |