Constant with very strange name doesn’t exist.Add the sdk’s xxxx.c file to the project tree (use Add Existing File…). Can’t find header file: they don’t support recursive include paths, so find the file in the nrf5-sdk folder tree and add the path to the project file.SES auto-reloads the project on save by VSCode. Especially with a project macro for the sdk folder it’s efficient. board.h in components/boards contains the list and I also added a.Follow up by changing the BOARD’s preprocessor definition in the emProject to BOARD_PARTICLE_XENON. It’s also nice to add the Xenon to the sdk board list (the equivalent of variant.h in Arduino). flash_placement.xml - if you use the SoftDevice (the Bluetooth and ? library) this locates stuff.Otherwise default may come from the generic file in the sdk for the processor. It also defines default config values when you create instance objects. config/sdk_config.h - this contains all of the DEFINES for sdk modules that you will include (pwm, gpio, spi, …).There are two key files you have to create in your project (or start with samples more likely). Also, there’s the working Adafruit layer for additional examples. Their examples, however, are very illustrative and they have a user forum. The Nordic Semiconductor documentation is abysmal. Here you can download the current SDK tree.It provides examples and good working code. This is a really nice Arduino layer over the nRF52 SDK.I’m a newbie but here are some helpful hints. It’s not at all clear where the Nordic soft-device (the API library for the chip) and the bootloader live in the SES processing. Apparently you also have to point to each individual c/c file used by the source code (including the nrf5 sdk). Some care is required as the SDK has multipath options for their different chips (so the same file in multiple places). I worked through failed compiles, adding paths as required, until it compiled. The SES project settings require all individual include paths for the SDK. I finally ended up clearing the flash and then it failed crc and downloaded and worked. I think it uses a CRC to verify the flash has changed so there is a small possibility the CRC is unchanged I guess. QuirksĪt one point SES was convinced the firmware on the chip was up to date (it wasn’t). Also look at the emSession file and remove any prior paths. I added a macro for the base SDK path then updated the relative paths to the SDK code in the emProject file. Documents) and then edit the emProject file with better paths. Move the app by moving the entire folder somewhere useful (e.g. This will produce a working bluetooth application (in my case) but all of the dependencies require the app being in the nrf5 sdk folder - which sucks. The code also won’t deal with the Particle Lipo charging system nor the antenna selector. The pca10056 is the codeid for the Nordic NRF52840-DK board, which is a pretty slim board and seems to work fine as a starting point for the Xenon. Double-click the emProject file to load the project. To use a Nordic sample program go to the folder ( C:\nrf5_sdk\examples\ble_central\ble_app_hrs_c in my case) and then dive into the pca10056\s140\ses folder where the Segger Embedded Studio (ses) project file lives. To move on to a more serious application, the best thing to do is start with a Nordic-supplied example program. A Serious NRF52840 Application with Bluetooth Segger Embedded Studio Piece showing Hello World. You can develop without debugging using the SDK but getting a JLink is totally worth it. If you’re a hobbyist that would be the Segger JLink EDU ( purchase here) for about $60 or the JLink Mini EDU for about $20. SES requires a Segger device for connection. To get started you need Segger Embedded Studio (free for Nordic development). This include SPI, I2C, Interrupts, and Watchdog Timer. New 5–2019: I’ve posted some of the high-level code I wrote to simulate an Arduino-like experience with the Nrf5 SDK here. So, I decided to try developing on the Xenon using the Nordic Semi NRF5 SDK, instead of the particle firmware. There’s a section at the end of this article about using Arduino with the Xenon. I have great faith in Particle and expect the firmware to add these features but I have a project waiting for this.Īdafruit is also working on their Arduino for the chips but they don’t yet have the Xenon files in their Arduino port. The firmware doesn’t yet support traditional Bluetooth and it’s missing features like sleep. Unfortunately the Xenon also comes with very incomplete software. The Xenon uses the newer processor (with twice the ram and flash), is FCC certified, and has a 4MB spi flash for extra storage. They have the exact same pinout and mechanics. I waited months for my Xenons in order to replace some Adafruit NRF52 boards.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |