This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
s340:platformio_ide_integration_for_the_nrf52840_feather_express_with_s340 [2020/03/29 20:43] orrmany |
s340:platformio_ide_integration_for_the_nrf52840_feather_express_with_s340 [2020/03/29 22:26] orrmany |
||
---|---|---|---|
Line 25: | Line 25: | ||
- Ensure that you can program your Feather with Platform IO by, say, compiling and loading the classic Blinky example into the Feather. {{ :s340:annotation_2020-03-29_201803.png?direct&300 |}}See https://docs.platformio.org/en/latest/boards/nordicnrf52/adafruit_feather_nrf52840.html for further details | - Ensure that you can program your Feather with Platform IO by, say, compiling and loading the classic Blinky example into the Feather. {{ :s340:annotation_2020-03-29_201803.png?direct&300 |}}See https://docs.platformio.org/en/latest/boards/nordicnrf52/adafruit_feather_nrf52840.html for further details | ||
- After the first succesful compilation and upload, all the necessary packages has got installed. Go to the location of the "framework package" (this corresponds to the concept of "Core" in the Arduino IDE): | - After the first succesful compilation and upload, all the necessary packages has got installed. Go to the location of the "framework package" (this corresponds to the concept of "Core" in the Arduino IDE): | ||
- | * On Linux: ''~/.platformio/packages/framework-arduinoadafruitnrf52/bootloader/feather_nrf52840_express/'' | + | * On Linux: ''~/.platformio/packages/framework-arduinoadafruitnrf52/'' |
- | * On Windows: ''%HOMEDIR%\.platformio\packages\framework-arduinoadafruitnrf52\bootloader\feather_nrf52840_express'' | + | * On Windows: ''%HOMEDIR%\.platformio\packages\framework-arduinoadafruitnrf52\'' |
- | - Copy the bootloader .zip (''0.3.0_s340_6.1.1.zip'') and .hex (''0.3.0_s340_6.1.1.hex'') from the build directory of the freshly modified bootloader package here. | + | -So, go to ''.../.platformio/packages/framework-arduinoadafruitnrf52/bootloader/feather_nrf52840_express/''. Copy the bootloader .zip (''0.3.0_s340_6.1.1.zip'') and .hex (''0.3.0_s340_6.1.1.hex'') from the build directory of the freshly modified bootloader package here. |
+ | - Go to ''.../.platformio/packages/framework-arduinoadafruitnrf52/''. Modify ''boards.txt'' just like I did for the Arduino IDE. See sub-step "1" within the section [[s340:arduino_ide_integration_for_the_nrf52840_feather_express_with_s340#third_major_stepadd_s340_to_the_bsp|Second major step: replace the bootloader with the modified bootloader]] at the Arduino IDE adaptation page. | ||
+ | - Go to ''.../.platformio/platforms/nordicnrf52/boards/''. Copy ''adafruit_feather_nrf52840.json'' and name the copy as ''adafruit_feather_nrf52840_s340.json''. Change the following entries:<code json> | ||
+ | "ldscript": "nrf52840_s340_v6.ld", | ||
+ | "softdevice": { | ||
+ | "sd_flags": "-DS340", | ||
+ | "sd_name": "s340", | ||
+ | "sd_version": "6.1.1", | ||
+ | "sd_fwid": "0x00B9" | ||
+ | }</code> | ||
- Go to ''.../.platformio/packages/framework-arduinoadafruitnrf52/cores/nRF5/linker''. Copy/duplicate the S140 linker script as nrf52840_s140_v6.ld. Modify the linker script memory settings just like I did for the Arduino IDE. See sub-step "2" within the section [[s340:arduino_ide_integration_for_the_nrf52840_feather_express_with_s340#third_major_stepadd_s340_to_the_bsp|Second major step: replace the bootloader with the modified bootloader]] at the Arduino IDE adaptation page. | - Go to ''.../.platformio/packages/framework-arduinoadafruitnrf52/cores/nRF5/linker''. Copy/duplicate the S140 linker script as nrf52840_s140_v6.ld. Modify the linker script memory settings just like I did for the Arduino IDE. See sub-step "2" within the section [[s340:arduino_ide_integration_for_the_nrf52840_feather_express_with_s340#third_major_stepadd_s340_to_the_bsp|Second major step: replace the bootloader with the modified bootloader]] at the Arduino IDE adaptation page. | ||
+ | - Modify ''.../.platformio/packages/framework-arduinoadafruitnrf52/platform.txt'' file because the Adafruit bootloader is now 0.3.0:<code bash> | ||
+ | # Bootloader version | ||
+ | # tools.bootburn.bootloader.file={runtime.platform.path}/bootloader/{build.variant}/{build.variant}_bootloader-0.2.13_{build.sd_name}_{build.sd_version} | ||
+ | tools.bootburn.bootloader.file={runtime.platform.path}/bootloader/{build.variant}/{build.variant}_bootloader-0.3.0_{build.sd_name}_{build.sd_version} | ||
+ | </code> | ||
+ | |||
+ | Now you should be ready to rock. Restart PlatformIO IDE and select ''Adafruit Bluefruit Feather nRF52840 Express w.ANT'' as your board type :) |