-
Notifications
You must be signed in to change notification settings - Fork 3k
[draft] Add Arduino Nicla Sense ME support #15510
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
multiplemonomials
wants to merge
198
commits into
ARMmbed:master
from
mbed-ce:dev/arduino-nicla-sense-me
Closed
[draft] Add Arduino Nicla Sense ME support #15510
multiplemonomials
wants to merge
198
commits into
ARMmbed:master
from
mbed-ce:dev/arduino-nicla-sense-me
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…he existing create_distro function for this.
… command line directly. Fixes some issues with build commands on my machine, and makes it a lot easier to view the make VERBOSE=1 output.
- Fix some logic errors in top level cmakelists related to building greentea tests - Fix mbed_create_distro() for OBJECT libraries
…fused about them. They weren't really needed anyway for the CMake build.
…a tests use cmake upload methods
* Start on STM32 DMA SPI * Update all objects.hs, add interrupt function * Initial DMA code should be ready to test out... * Fix SPI interrupt-mode IRQ handlers, add SPI::transfer_and_wait * Fix CMake error when building for STM32WL processors * Now builds on all STM devices! * Properly support STM32U5 / DMA IP v3 * Start on STM32F4 support, fix hardfault on IP v1 and v3 due to incorrect indexing * Fix Rx-only transfers, add abort code, fix incorrect channel assignments for DMA IP v1 devices * Start on STM32H7 SPI DMA * Fixes for H7: Correctly manage data cache, keep SPI ISR enabled * Implement DMA SPI header constants for all remaining STM32 families. Also add support for freeing DMA channels * Try and fix build on STM32G0 * Fix build on STM32G0 * Add SPI_32BIT_WORDS label, start on fixing SPI docs * SPI: Implement reference counting so that DMA channels get freed properly * Fix issue where SPI data could get corrupted (by TI mode turning on) depending on memory layout (if your spis pointer & 0x10 was nonzero) * Mark DMA channels as unallocated when SPI bus is freed * Simplify spi_abort_asynch() * Fix some rebase issues, fix failing to allocate DMA channel on STM32U5 * Fix DMA getting stuck on STM32F4, F7, and F2
* Fix STM32 I2C v2 async transfer not doing a repeated start * Clarify docs
… SPI issues on STM32H7 (#199) * Handle cache alignment in DMA SPI driver * Fix build on cache-less devices * Fix a couple things I missed * Run formatter, improve CacheAlignedBuffer docs * Add missing license identifiers to source files * Make CacheAlignedBuffer heap-allocatable, try and add exclusion for Nordic license in scancode_evaluate.py * Formatting, docs, revert accidental change * Update code blocks to pass spell checker
add lfsv2 to storage/kvstore/kv_config link libs
* Enable RPi Pico's optimized ROM floating point routines * Add license header
…I_IOT2A (#204) * Fix issues with new async SPI changes that broke compiling for B_U585I_IOT2A * Few more incorrect nullptrs * Fix style
* Various changes for Arduino core support * Apply Arduino Mbed TLS patches * Apply linker script patch, add missing CXX standard * Fix SDBlockDevice compile error, fix "no rule to make mbed-target-config.h" * Fix missing source file for RPi Pico * Fix missing licenses
…#203) * Attempt to increase RPi Pico PWM range and resolution to the max supported * Fix copyright for pwmout_api.c * Fix ADC implementation so it works! Fixes incorrect return type, adds +1 to top_count, fixes missing pwm_config_set_wrap() call. * Revert printf change in this PR
* Add upload methods for NUCLEO_H723ZG * Oops fix comment * Also fix another comment
Protection against using python version older than python3+
…cleanups (#210) * RTC related cleanups, including not resetting the RTC time from gettimeofday() * Update readme about STM32 clocking * Oops, fix git issue
* Definition added for hse and msi pll * Updating rom and ram size * Adding target MCU_STM32U575xG
* Fix USB instructions for Ubuntu, fix greentea compile failure for devices without TRNG * Don't compile device key without COMPONENT_FLASHIAP * Fix some upload issues for LPC1768 * Oops don't commit cmake variants * Don't build connectivity-netsocket-tls without TRNG support
* Update FindSTLINKTools.cmake for STM32CubeCLT STM32CubeCLT * correction * line 7 reverted * Lines 28-29 rewritten to lowercase letters * Update for Linux * Change file name for Windows * revert back components names * change file name also for Linux
* Start on documenting features and components * Missed some renames * Go through all cellular and 802.15.4 modules * Fix build * Fix style * Update copyright year
… get non-public targets (#247) * Add a way to get target attributes for non public targets * Document all WiFi and LoRa modules * Fix some errors * Fix another CMake error
#250) * Update app.cmake Add possibility to use upload config also for custom targes * Update app.cmake
* Use a virtual environment for Python packages by default * Install python3-venv in CI * Don't use sudo * Oops missed a "STATUS" * Fix second build dir not using venv
* Fix NUCLEO_H743ZI clock config not enabling overdrive mode * Update most STM32H7 devices to new clocking configuration * Fix ADC clock for old chip revs * Fix CAN clock, finish clocking for 280MHz devices * Fix a few typos and such * A few more targets.json tweaks * Fix comma
…263) * Fix STM32H7 LPUART clock source incorrect for higher baudrates * Add comment
…265) * Various updates to support targets & drivers site generation * Add regression test for python code, add links to README * Don't need to duplicate device_name * Fix typo and some extra commas * Rephrase docs
* Fix some issues with building on K64F, add K64F upload methods * Add Mbed upload method * Fix pin validate test * Also install json5 * Fix incorrect COMPONENT_SD config
Contributor
Author
|
Oh gosh dang it I clicked the wrong repo, sorry! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary of changes
This PR adds support for Arduino Nicla Sense ME. Arduino sent me a free test unit a while back so figured I may as well give it a shot. This one ended up actually being pretty easy to work with because, unlike most Arduinos, it has a standard Mbed CMSIS-DAP interface chip on it, no weird bootloader hijinks needed. Basically just had to add the PinNames.h, the CMake file, and the targets.json definition.
Impact of changes
Migration actions required
Documentation
TODO
Pull request type
Test results
I ran the full set of Greentea tests on the nicla and they all passed except for test-mbed-hal-trng. This one is failing because they didn't connect the MCU reset line to the CMSIS DAP interface, so it can't reset the CPU when it tries to. Not sure what the best way to fix this is at this point...
Reviewers