Skip to content

Commit 28dcea1

Browse files
kongchen1992meta-codesync[bot]
authored andcommitted
{Documentation} Add custom profile instruction.
Summary: see title Reviewed By: YLouWashU Differential Revision: D84956996 fbshipit-source-id: a01cfc6a309a1a9404bae274cfc568a17440ddcf
1 parent 377a573 commit 28dcea1

File tree

1 file changed

+189
-2
lines changed

1 file changed

+189
-2
lines changed

website/docs-technical-specs/device/profile.mdx

Lines changed: 189 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,108 @@ The table below details the specifications of the currently supported pre-define
4444

4545
---
4646

47-
## Custom profile example {#custom_profile_example}
48-
Here is an example of custom profile. This profile is a modified based on profile8 with reduced frame rate.
47+
## Profile Usage Recommendations
48+
49+
### When to Use Pre-defined Profiles
50+
51+
**Pre-defined profiles (profile8, profile9, profile10, mp_streaming_demo)** are:
52+
- ✅ Thoroughly tested and validated
53+
- ✅ Optimized for device stability and thermal performance
54+
- ✅ Fully supported by all downstream tools
55+
- ✅ Guaranteed to work reliably
56+
- ✅ Recommended for production use and research studies
57+
58+
**Recommended for:**
59+
- Production deployments
60+
- Large-scale data collection
61+
- Research studies requiring reliable data
62+
- Users who want maximum compatibility
63+
- First-time Aria users
64+
65+
### When to Consider Custom Profiles
66+
67+
**Custom profiles** may be appropriate for:
68+
- Advanced research with specific sensor requirements
69+
- Prototyping new applications
70+
- Experimental configurations
71+
- Specialized use cases not covered by pre-defined profiles
72+
73+
**⚠️ Important:** Custom profiles should only be used by advanced users who understand the risks and limitations.
74+
75+
---
76+
77+
## Custom Profiles {#custom_profile_example}
78+
79+
### Overview
80+
81+
Custom profiles allow advanced users to define their own sensor configurations for specialized research needs. However, **custom profiles come with significant risks and limitations** and should be used with caution.
82+
83+
### ⚠️ Important Considerations and Risks
84+
85+
Before creating a custom profile, understand these critical limitations:
86+
87+
#### 1. Device Stability and Data Quality
88+
89+
**Thermal and Power Issues:**
90+
- Custom profiles that push sensor settings (e.g., high frame rates, high resolutions, enabling many sensors simultaneously) can cause the device to **overheat** or **drain the battery rapidly**
91+
- This can lead to **unexpected shutdowns** or **reduced recording/streaming times**
92+
- Some combinations may trigger warnings in the Aria Companion App, but **not all edge cases are covered automatically**
93+
- Using extreme values or not basing your custom profile on a tested template **significantly increases these risks**
94+
95+
**Data Quality Risks:**
96+
- Unusual sensor configurations may result in:
97+
- Poor data quality
98+
- Synchronization issues between sensors
99+
- Missing data streams
100+
- Inconsistent sensor performance
101+
- **These issues may not be immediately apparent** and could compromise your research data
102+
103+
**Fragmented Datasets:**
104+
- Custom profiles can lead to fragmented datasets, making it harder to:
105+
- Compare data across different studies
106+
- Aggregate data from multiple users
107+
- Reproduce research results
108+
- This **reduces the overall utility** of the data for broader research purposes
109+
110+
#### 2. Compatibility and Downstream Tooling
111+
112+
**Tooling Incompatibility:**
113+
- Downstream tools (e.g., Project Aria Tools, MPS, analytics pipelines) **may not be fully compatible** with all custom profile configurations
114+
- Data recorded with custom profiles may:
115+
- Not be processed correctly by standard tools
116+
- Require additional engineering work to support new formats
117+
- Be incompatible with existing analysis pipelines
118+
119+
**Lack of Standardization:**
120+
- Custom profiles are **not as thoroughly tested or supported** as pre-defined profiles
121+
- This can lead to:
122+
- Unexpected issues when using standard tools
123+
- Difficulties sharing data with collaborators
124+
- Limited community support
125+
126+
#### 3. Known Bugs and Open Issues
127+
128+
**Sensor Data Retrieval:**
129+
- There have been reports of **issues retrieving certain sensor data** (e.g., GPS) when using custom profiles
130+
- These issues may not be present with recommended pre-defined profiles
131+
132+
**Parameter Guardrails:**
133+
- While the Companion App includes some guardrails, **not all problematic combinations are blocked**
134+
- Users may still encounter hardware or data quality issues when defining profiles via the SDK
135+
136+
**⚠️ Use at Your Own Risk:**
137+
Custom profiles are provided as-is for advanced users. Meta does not guarantee stability, data quality, or tool compatibility for custom profile configurations.
138+
139+
---
140+
141+
### Custom Profile Template
142+
143+
Below is a template for creating custom profiles. **It is strongly recommended** to base your custom profile on one of the pre-defined profiles (e.g., profile8) rather than starting from scratch.
144+
145+
This example is based on **profile8** with the following modifications:
146+
- **RGB frame rate**: Reduced from 10Hz to 5Hz
147+
- **SLAM camera frame rate**: Reduced from 30Hz to 10Hz
148+
- **Hand tracking**: Reduced from 30Hz to 10Hz
49149

50150
```json
51151
{
@@ -146,3 +246,90 @@ Here is an example of custom profile. This profile is a modified based on profil
146246
]
147247
}
148248
```
249+
250+
### Template Notes
251+
252+
This example demonstrates a **conservative approach** to customization: making minimal changes to a tested profile (profile8) to reduce power consumption while maintaining core functionality.
253+
254+
---
255+
256+
## Best Practices for Custom Profiles
257+
258+
If you must use a custom profile, follow these guidelines:
259+
260+
### 1. Start from a Pre-defined Profile
261+
- ✅ Base your custom profile on profile8, profile9, or profile10
262+
- ✅ Make incremental changes rather than dramatic modifications
263+
- ❌ Avoid starting with a blank profile or extreme parameter values
264+
265+
### 2. Test Thoroughly
266+
- Test the profile with short recordings first
267+
- Monitor device temperature during use
268+
- Check battery consumption rates
269+
- Verify all expected sensor streams are present
270+
- Validate data quality before large-scale data collection
271+
272+
### 3. Monitor Device Health
273+
- Watch for thermal warnings in the Companion App
274+
- Note any unexpected shutdowns or errors
275+
- Track recording duration vs. battery life
276+
- Monitor data completeness and quality
277+
278+
### 4. Conservative Parameter Selection
279+
- **Frame rates**: Lower rates reduce power and thermal load
280+
- **Resolution**: Higher resolutions increase data size and processing
281+
- **Encoding quality**: Lower QP values (higher quality) increase bitrate
282+
- **Sensor combinations**: Enabling all sensors simultaneously increases load
283+
284+
### 5. Validate Data Compatibility
285+
- Test with Project Aria Tools to ensure data can be loaded
286+
- Verify compatibility with your analysis pipeline
287+
- Check that all required sensor streams are accessible
288+
- Consider data sharing and reproducibility needs
289+
290+
### 6. Document Your Configuration
291+
- Keep detailed records of custom profile parameters
292+
- Document the rationale for each modification
293+
- Note any issues or limitations encountered
294+
- Share configuration details with collaborators
295+
296+
---
297+
298+
## Parameter Guidelines
299+
300+
When modifying parameters, consider these general guidelines:
301+
302+
| Parameter Type | Considerations |
303+
|---------------|---------------|
304+
| **Frame Rates** | Higher rates = more data, higher power consumption, thermal load |
305+
| **Resolution** | Higher resolution = larger files, more processing, better quality |
306+
| **Encoding Quality (QP)** | Lower QP (e.g., 18) = higher quality, larger files; Higher QP (e.g., 30) = lower quality, smaller files |
307+
| **Sensor Combinations** | More active sensors = higher power draw, more thermal stress |
308+
| **Bitrate** | Fixed bitrate (CBR) for consistent file sizes; Variable rate (CQP) for consistent quality |
309+
310+
---
311+
312+
## Using Custom Profiles
313+
314+
Custom profiles can be loaded via the Client SDK. See the [Client SDK documentation](/ark/client-sdk/start) for detailed API usage and examples.
315+
316+
---
317+
318+
## Support and Troubleshooting
319+
320+
### For Pre-defined Profiles
321+
- Full support available through standard channels
322+
- Issues will be investigated and resolved
323+
- Documentation is comprehensive and maintained
324+
325+
### For Custom Profiles
326+
- ⚠️ Limited support available
327+
- Community forum may provide assistance
328+
- Users are responsible for validating their configurations
329+
- No guarantee of compatibility with tools or services
330+
331+
### Getting Help
332+
333+
For questions about profiles:
334+
- Pre-defined profiles: Contact support via [support channels](/ark/support)
335+
- Custom profiles: Check the community forum and [known issues](https://github.com/facebookresearch/projectaria_tools/issues)

0 commit comments

Comments
 (0)