🔥 Highlights:
- Upgraded to nRF Connect SDK v2.8.0: Full compatibility with the latest SDK features and improvements
- Multi-Board Support: Added support for
nrf9151dk, expanding the range of supported hardware - Refactored Demos: Major updates to CoAP, UDP, LwM2M, Mender, and Memfault demos for better performance and configurability
- Improved Threading & Energy Saver: Smooth integration of multithreading and energy-saving features
- Unified Code Style: Applied Uncrustify formatting to ensure code consistency and maintainability
- Enhanced Logging & Error Handling: Migrated to structured logging and improved error feedback
- Updated Documentation: Rewritten README and structured changelog for better clarity and professionalism
✨ New Features & Enhancements:
1️⃣ Multi-Board Support
- Support added for nrf9151dk, enabling more flexible deployment scenarios
- Improved
sample.yamlfor each demo to specify relevant boards
2️⃣ Refactored Demos:
2.1 CoAP Demo:
- Migrated project from Nordic SDK v2.2.0 to v2.8.0
- Introduced threaded uplink/downlink for improved concurrency
- Enhanced DTLS, Energy Saver, and Device Controller integration
- Improved logging with Zephyr LOG macros, replacing
printk - Updated LED feedback for connection and transmission on Thingy:91
2.2 UDP Demo:
- Updated for SDK v2.8.0 compatibility
- Refactored uplink/downlink logic into dedicated threads
- Conditional support for 1NCE Device Controller (downlink socket)
- Improved LED status indication on Thingy:91
- Applied Uncrustify formatting for consistent code style
2.3 LwM2M Demo:
- Added LED indication for Thingy:91
- Fixed C2D light control issue
- Updated project configuration and sample description
- Removed unused files and cleaned up the codebase
2.4 Mender Demo:
- Refactored code for clarity and configurability
- Replaced printk() with structured LOG_INF/ERR/WRN logging
- Improved FOTA download error handling and message clarity
- Enhanced retry logic and LED failure feedback
- Renamed and clarified Kconfig options
- Standardized variable naming to NCE_MENDER_*
- Removed outdated payload split logic
- Migrated from Nordic SDK v2.2.0 to v2.8.0
- Unified code formatting using Uncrustify
2.5 Memfault Demo:
- Refactored for code formatting consistency
- Added APN configuration to
prj.conf - Removed unnecessary files to streamline the demo
🔧 CI/CD Enhancements:
- Temporarily sunsetted workflow to allow for stabilization and maturation of the demo suite
- Will be re-enabled in the next stable release cycle
📂 Binaries and Artifacts:
- Updated binaries for the following demos:
- CoAP Demo
- UDP Demo
- Mender Demo
- Memfault Demo
- Removed outdated binaries and manually added the new ones for each demo
💾 Code Formatting and Style:
- Added Uncrustify configuration to ensure consistent formatting across the project
- Applied Uncrustify to all demo files, maintaining uniform code presentation
📑 Documentation:
- Completely rewritten README for clarity and professional presentation
- Updated pre-release and SDK compatibility details
📝 Breaking Changes:
- Updated to nRF Connect SDK v2.8.0
- Some configurations and paths have changed to match the new SDK structure
- Mender demo now has revised Kconfig options for better clarity
💡 How to Update:
-
Clone the updated repository:
git clone https://github.com/1NCE-GmbH/blueprint-zephyr.git
-
Follow the Updated Getting Started Guide in the README.
-
Flash your device with the new binaries to benefit from the latest improvements.
For any issues, please open a GitHub issue.
Happy development with the 1NCE Zephyr Blueprint v4.0.0! 💙