User Guide¶
Welcome to the Nexus Platform User Guide. This comprehensive guide covers everything you need to know to effectively use the Nexus embedded platform in your projects.
Overview¶
The Nexus User Guide is organized into several sections, each covering a specific aspect of the platform:
- Core Architecture
Understanding the fundamental design and structure of Nexus
- Hardware Abstraction Layer (HAL)
Working with hardware peripherals through unified APIs
- OS Abstraction Layer (OSAL)
Managing tasks, synchronization, and RTOS integration
- Framework Components
Using high-level services like logging, shell, and configuration
- Configuration System
Mastering Kconfig for compile-time configuration
- Build System
Understanding CMake build configuration and customization
- Platform Integration
IDE setup, debugging, and platform-specific features
- Advanced Topics
Power management, security, performance optimization
Who Should Read This Guide¶
This guide is designed for:
Embedded Software Engineers - Building applications on Nexus
System Architects - Designing embedded systems with Nexus
Firmware Developers - Implementing device drivers and middleware
Application Developers - Creating user-facing embedded applications
Technical Leads - Evaluating Nexus for projects
Prerequisites¶
Before using this guide, you should have:
Basic understanding of C programming
Familiarity with embedded systems concepts
Knowledge of your target hardware platform
Development environment set up (see Environment Setup)
How to Use This Guide¶
- For Beginners
Start with Architecture to understand the overall system, then proceed through Hardware Abstraction Layer (HAL), OS Abstraction Layer (OSAL), and the framework components in order.
- For Experienced Users
Jump directly to the section you need. Each chapter is self-contained with cross-references to related topics.
- For Reference
Use the search function or index to find specific APIs, configuration options, or concepts.
Guide Structure¶
Core Platform¶
Configuration & Build¶
- Kconfig Configuration System
- Kconfig Tutorial
- Peripheral Configuration Guide
- Platform-Specific Configuration Guide
- OSAL Backend Configuration Guide
- Kconfig Tools Reference
- Build System
- Overview
- Quick Start
- CMake Presets
- Build Script
- Testing
- CMake Structure
- Build Options
- Building the Project
- Cross-Compilation
- Configuration System
- Build Directory Structure
- Advanced Build Features
- Code Coverage
- Continuous Integration
- Best Practices
- IDE Integration
- Troubleshooting
- Summary
- See Also
- Troubleshooting
- See Also
Development Tools¶
Advanced Topics¶
Platform Specific¶
Quick Reference¶
Common Tasks¶
API Quick Links¶
HAL API Reference - HAL API Reference
OSAL API Reference - OSAL API Reference
Log Framework API Reference - Log Framework API
Shell Framework API Reference - Shell Framework API
Config Manager API Reference - Config Framework API
Configuration Quick Links¶
Peripheral Configuration Guide - Peripheral Configuration
Platform-Specific Configuration Guide - Platform Configuration
OSAL Backend Configuration Guide - OSAL Configuration
Getting Help¶
If you need assistance:
Search this documentation - Use the search box in the sidebar
Check the FAQ - See Frequently Asked Questions
Review examples - See Examples Tour
Consult tutorials - See Tutorials
Ask the community - Visit our GitHub Discussions
Report issues - File bugs on GitHub Issues
Documentation Conventions¶
Throughout this guide, we use the following conventions:
Code Blocks
/* C code examples look like this */
int main(void) {
return 0;
}
Configuration Examples
# Kconfig examples look like this
CONFIG_HAL_GPIO=y
Shell Commands
# Shell commands look like this
cmake -B build
Important Notes
Note
Notes provide additional information or tips.
Warnings
Warning
Warnings highlight potential issues or important considerations.
Tips
Tip
Tips offer helpful suggestions or best practices.
See Also
See also
Cross-references to related documentation.
Next Steps¶
Ready to dive in? Here are some suggested starting points:
- New to Nexus?
Start with Architecture to understand the platform design.
- Ready to Code?
Jump to Hardware Abstraction Layer (HAL) to learn about hardware peripherals.
- Need to Configure?
Check out Kconfig Configuration System for the configuration system.
- Building Applications?
See Your First Nexus Application for a step-by-step guide.
- Porting to New Hardware?
Read Porting Guide for platform adaptation guidance.
Feedback¶
We continuously improve this documentation based on user feedback. If you find errors, have suggestions, or want to contribute:
Open an issue on GitHub
Submit a pull request with improvements
Join the discussion on GitHub Discussions
Your feedback helps make Nexus better for everyone!