5 ms·
> Nordic makes some good products and godawful software. the SDK for their NRF52/3/4 is pure madness, i haven't even managed to set up the toolchain, documenta
by monegator 1y ago
> Nordic makes some good products
and godawful software. the SDK for their NRF52/3/4 is pure madness, i haven't even managed to set up the toolchain, documentation always out of date.
They used to have another toolchain for the older parts, but good luck setting it up now.
- 5ADBEEF 1y agoI don’t think most have this experience. Zephyr is the future.
- joezydeco 1y agoI've had bad experiences with Zephyr in the past. It's been half-baked and passed around from company to company for ages. Be Linux or don't be Linux, but don't be halfway between the two. I have a lot more hope for PX5.
- machinehum 1y agoI actually disagree. We have lower power bare metal systems, think AVR/STM stuff (in the 1Mhz to 50Mhz range with 128K or less of RAM) here FreeRTOS, no freeRTOS, custom driver code and some basic application code makes sense. For simple to very complex systems. Then there's 1Ghz+ stuff with an MMU and 2GB+ RAM. Linux makes sense here. Companies are now making chips 200Mhz+, 4MB RAM, with no MMU. This is precisely where Zephyr excels, you want a full networking stack? Switch that on. A file system, easy. Driver for some more complex thing? Maybe an SDIO radio? boomboom
- vbezhenar 1y agonRF52820 is 256 KB Flash and 32 KB RAM chip. Actually it's around 150 KB flash, because you need space for 120KB softdevice blob (and some RAM too). And it's perfectly enough for many devices. They want developers to use Zephyr for this chip.
- flyingcircus3 1y agoSegger Embedded Studio is a complete solution. One installer. You might need to pick an older version to go with an old SDK version, but its very straightforward.
- blutack 1y agoI'm sorry you've had a bad experience but I don't agree, I prefer it to the ST, TI and definitely the Microchip tooling. It's CLI first, like the Espressif and Pico tooling which is a big plus for some and not for others. Also, no mandatory login walls for toolchains and datasheets gets them a lot of goodwill in my book.
- monegator 1y agoI'm proficient with many MCU families. Microchip tooling: download, double click, install, just works. Zero need for any framework, good bare metal support. a C project is an actual C project. Granted, if you use that MCC piece of shit you're in for a bad time, but going bare metal require zero effort, a single include file if you need to access peripherals, and you actually have documentation to do so. ST tooling: sort of almost just works, more effort but you can still go bare metal with relative ease. Current nordic: it's actually a zephir project, thousands of files to generate and compile. No options to go bare metal. (used to be possible with the older SDK, or so they tell me. Too bad i can't seem to be able to let a project compile with the old SDK, or set up the IDE for intellisense with the new SDK, but i haven't had enough time yet.) Bonus: Espressif. At least their VSCode integration really just works. The peripherals are frustrating and severely bugged though and there can be supply chain issues, and that's the reason i'm looking at nordic for some BLE-enabled project, because the ESP32 parts won't cut it for this or that reason (usually the basic yet still bugged peripherals). But i'm willing to put up with microchip's BLE modules again (i evaluated them several times over the years, always a disaster. But not the newer based on PIC32MZ, and the price have come down to be reasonable.) if the only option with nordic is the zephir monstruosity.
- eschneider 1y agoI mean, you _can_ go bare metal with Nordic chips, but you'd definitely be swimming against the current. I'm not a fan of Zephyr, but it really wasn't that much trouble to put together a docker image that would let me spin up whatever version of the SDK I needed and then just build from the docker. Quite tolerable.
- vbezhenar 1y ago
- mystified5016 1y agoI spent so much time trying to get the SDK working for NRF52 that I genuinely just gave up and redesigned our whole product to use an ESP32 instead of the NRF plus other uC. I think that is genuinely the reason espressif is eating everyone's lunch. All the old players in the IC business have such inexcusably bad SDKs that the acceptably designed and documented ESP-IDF framework just makes the most sense to use. Why would I spend six weeks fighting with Nordic SDKs with their weird system-wide installation when ESP-IDF can be set up in five minutes isolated to your user directory? Seriously, it takes longer to find the correct Nordic SDK installer than it does to git clone, idf.py install, ./export.sh And Nordic's weird documentation web portal is just egregiously bad. Espressif puts it in a static HTML page with a selector for the framework version. It's simple, elegant, and fast. I did like using the NRF52 once it was finally behaving, but the ESP is just so easy.
- vbezhenar 1y agoI've found old SDK actually not that bad. Documentation is not great, but sources are available and it's just mostly C code with some hairy macros, but it's manageable. After few weeks I became quite proficient. I don't like their suggested approach "copy&paste example you like and tinker it", I never do that, so I had to untangle their Makefiles, I had to research their defines (app_config.h, what's a monstrosity), I had to write my own linker scripts, but in the end I have my application under control and it's all standard gcc toolchain, no fancy stuff.
- Avamander 1y ago> I don't like their suggested approach "copy&paste example you like and tinker it", I never do that, so I had to untangle their Makefiles, I had to research their defines (app_config.h, what's a monstrosity), I had to write my own linker scripts, but in the end I have my application under control and it's all standard gcc toolchain, no fancy stuff. Sounds very similar to ST.