ESP-Protocols
Choose target...
Choose version...
Brief intro
Migration Guide
C interface
C++ interface
Advanced use cases
Development
Customization
Internal design
Internal implementation
ESP-Protocols
ESP-MODEM Programmers manual
Edit on GitHub
ESP-MODEM Programmers manual
Brief intro
Modem components
DCE
DTE
PPP netif
Module
Use cases
Working modes
Switching between common modes
Switching between manual modes
Extensibility
CMUX
DTE
Other devices
Configuration
Component Kconfig
Development Mode
Runtime configuration
Known issues
Migration Guide
Breaking Changes
Migration Steps
New Features (Coming Soon)
Troubleshooting
C interface
Lifecycle API
Modem commands
Configuration structures
C++ interface
Create DTE and DCE
Mode switching commands
Modem commands
Destroy the DCE
Advanced use cases
Custom instantiation with DCE factory
Create custom module
Enhanced URC (Unsolicited Result Code) Handling
Create new communication interface
Development
Development Mode
Production Mode (Default)
Development Mode
When to Use Development Mode
Build System
Directory Structure
Code Generation
Generate Script Usage
Developer Workflow
Adding New AT Commands
Command Definition Macros
Testing and Validation
CI/CD Integration
Best Practices
Customization
Custom Module Development
Creating Custom Modules
Basic Custom Module Example
Using Custom Modules with C++ API
Using Custom Modules with C API
Complete Example
Available Base Classes
Command Utilities
Best Practices
Internal design
Design decisions
DCE collaboration model
Terminal inheritance
CMUX terminal
Internal implementation
DTE abstraction
Terminal interface
CMUX implementation
Netif
Module abstraction
Adding new devices
Implement a new generic command
Command library
Modem types