Skip to content

Commit 2bd3b96

Browse files
committed
Pull request #64: Release dsPIC33A CRC bootloader example
Merge in MCU16CE/dspic33-dsc-bootloader-code-examples from develop to master * commit 'fea4f79acd59e0bcd31264370a8f0bada4c7f181': change per input from build team. Remove reference to 16 bit bootloader and fix mdfu spelling Pull request #59: Feature/CC16BOOT-8082 create an engineering release of dspic33a m dfu bootloader with basic uart
2 parents 0f68e15 + fea4f79 commit 2bd3b96

File tree

232 files changed

+33932
-14
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

232 files changed

+33932
-14
lines changed

.citd/Jenkinsfilek8s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ pipeline {
7575
script {
7676
mplabxProjectConfigUpdate(
7777
sourceFilePath: "${env.MPLABX_PROJECT_SOURCE}",
78-
dfpUpdate: false,
78+
dfpUpdate: true,
7979
dfpInternal: false
8080
)
8181
}
@@ -85,6 +85,7 @@ pipeline {
8585
stage('Build') {
8686
steps {
8787
script {
88+
sh("find . -type f -name postBuild.sh -exec chmod +x {} \\;")
8889
mplabxProjectBuild(
8990
sourceFilePath: "${env.MPLABX_PROJECT_SOURCE}"
9091
)

.gitattributes

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
src/test/firmware/*.jar filter=lfs diff=lfs merge=lfs -text
2+
3+
# Ensure .sh files use LF (Unix-style) line endings
4+
*.sh text eol=lf
5+
6+
# Ensure .bat files use CRLF (Windows-style) line endings
7+
*.bat text eol=crlf

README.md

Lines changed: 32 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,36 @@
44
<img alt="Microchip Logo." src="images/microchip_logo_black_red.png">
55
</picture>
66

7-
## dsPIC33 CAN/CAN-FD Bootloader Demo
8-
9-
## Summary
10-
An example bootloader using the 16-bit MCC bootloader and the CAN or CAN-FD peripheral.
11-
12-
## Related Documentation
13-
https://www.microchip.com/16-bit-bootloader
14-
15-
## Setup And Operation
16-
17-
See the README files associated with each folder that describe the required hardware, software, and setup instructions.
18-
19-
7+
## <u>dsPIC33 CAN/CAN-FD Bootloader Demo</u>
8+
9+
### Summary
10+
An example bootloader using the 16-bit MCC bootloader and the CAN or CAN-FD peripheral on the dsPIC33 Touch CAN LIN Curiosity Development board demonstrating the following:
11+
* Immutable secure boot via CodeGuard
12+
* A/B type bootloading with Flash partitioning to support two firmware images and anti-roll back
13+
* Secure boot authentication via ECDSA signature verification
14+
* Secure firmware update via CAN-FD
15+
* Crypto acceleration via TA100
16+
* (Optional) Permanent flash memory locking via ICSP inhibit
17+
18+
### Related Documentation
19+
* [16bit MCC Bootloader](https://www.microchip.com/16-bit-bootloader)
20+
* [dsPIC33C Touch-CAN-LIN Curiosity Development Board (EV97U97A)](https://www.microchip.com/en-us/development-tool/EV97U97A)
21+
22+
### Setup And Operation
23+
See [secure_boot_and_secure_firmware_upgrade_over_canfd](secure_boot_and_secure_firmware_upgrade_over_canfd/) and the associated [README.md](secure_boot_and_secure_firmware_upgrade_over_canfd/README.md) files for details on the required hardware, software, setup, and how to run the demo.
24+
25+
## <u>dsPIC33a Bootloader and Firmware Upgrade Demo</u>
26+
27+
### Summary
28+
An example bootloader using the Microchip Device Firmware Update (MDFU) protocol and UART peripheral on the dsPIC33A Curiosity Platform Development Board with a dsPIC33AK128MC106 DIM demonstrating the following:
29+
* Secure firmware update via UART using Microchip Device Firmware Update (MDFU) protocol
30+
* Application verification checking using a 32-bit CRC-32Q signature
31+
32+
### Related Documentation
33+
* [dsPIC33AK128MC106 DIM (EV02G02A)](https://www.microchip.com/en-us/development-tool/ev02g02a)
34+
* [dsPIC33A Curiosity Platform Development Board (EV74H48A)](https://www.microchip.com/en-us/development-tool/ev74h48a)
35+
* [MDFU Protocol](https://ww1.microchip.com/downloads/aemDocuments/documents/DEV/ProductDocuments/SupportingCollateral/Microchip-Device-Firmware-Update-MDFU-Protocol-DS50003743.pdf)
36+
37+
### Setup And Operation
38+
See [dspic33a_bootloader_and_firmware_upgrade_demo](dspic33a_bootloader_and_firmware_upgrade_demo/) and the associated [README.md](dspic33a_bootloader_and_firmware_upgrade_demo/README.md) files for details on the required hardware, software, setup, and how to run the demo.
2039

changelog.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,14 @@
55
### Features Added\Updated
66
* Initial Release
77

8+
# dsPIC33a Bootloader and Firmware Upgrade Demo v1.0.0*
9+
### Release Highlights
10+
* Initial Release - Refer to the README.md for a summary and execution procedure
11+
12+
### Features Added\Updated
13+
* Initial Release
14+
15+
\* **NOTE**: THIS DEMO IS AN ENGINEERING RELEASE TO DEMONSTRATE DSPIC33A BOOTLOADER FUNCTIONALITY AND SHOULD BE USED FOR REFERENCE ONLY. THIS CODE IS NOT INTENDED FOR USE IN PRODUCTION.
16+
817

918

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"metaDataVersion": "1.0.0",
3+
"category": "com.microchip.ide.project",
4+
"content": {
5+
"metaDataVersion": "1.3.0",
6+
"name": "com.microchip.mplabx.project.dspic33a-bootloader-and-firmware-upgrade-demo",
7+
"version": "1.0.0",
8+
"displayName": "dsPIC33a Bootloader and Firmware Upgrade Demo",
9+
"projectName": "dspic33a-bootloader-and-firmware-upgrade-demo",
10+
"shortDescription": "This MPLAB® X IDE example demonstrates how to perform secure boot authentication and firmware upgrade via UART with Microchip Device Firmware Update Protocol (M-DFU) and CRC32 verification within MCC Melody.",
11+
"ide": {
12+
"name": "MPLABX",
13+
"semverRange": ">=6.20.0"
14+
},
15+
"compiler": {
16+
"name": "XCDSC",
17+
"semverRange": "^3.10"
18+
},
19+
"dfp": {
20+
"name": "dsPIC33AK-MC_DFP",
21+
"semverRange": ">=1.0.33"
22+
},
23+
"configurator": {
24+
"name": "MCC",
25+
"semverRange": ">=5.6.1"
26+
},
27+
"device": {
28+
"metaDataVersion": "1.0.0",
29+
"category": "com.microchip.portal.contentRef",
30+
"content": {
31+
"metaDataVersion": "1.0.0",
32+
"category": "com.microchip.device",
33+
"name": " dsPIC33AK128MC106",
34+
"versionRange": "*"
35+
}
36+
},
37+
"keywords": [
38+
"Board",
39+
"Bootloader",
40+
"Bootloader Client",
41+
"Communication",
42+
"Communication Module",
43+
"Configurator",
44+
"Curiosity",
45+
"Development Tool",
46+
"Firmware",
47+
"Firmware Upgrade",
48+
"FTP",
49+
"Harmony",
50+
"MDFU",
51+
"Memory",
52+
"Memory Module",
53+
"Serial Communication",
54+
"Software",
55+
"UART",
56+
"UART Protocol",
57+
"Virtual COM Port",
58+
"Wired"
59+
]
60+
}
61+
}

0 commit comments

Comments
 (0)