Skip to content
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

New board version: Nano 33 BLE Rev2 #9347

Merged
merged 6 commits into from
Jun 19, 2024
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 13 additions & 7 deletions ports/nordic/boards/arduino_nano_33_ble/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
# Arduino Nano 33 BLE and Nano 33 BLE Sense

The [Arduino Nano 33 BLE](https://store.arduino.cc/usa/nano-33-ble-with-headers) and
[Arduino Nano 33 BLE Sense](https://store.arduino.cc/usa/nano-33-ble-sense) and
are built around the NINA B306 module, based on Nordic nRF 52840 and containing
a powerful Cortex M4F. Both include an onboard 9 axis Inertial Measurement Unit (IMU), the LSM9DS1.
The Nano 33 BLE Sense adds an LPS22HB barometric pressure and temperature sensor,
an ADPS-9960 digital proximity, ambient light, RGB, and gensture sensor,
[Arduino Nano 33 BLE Sense](https://store.arduino.cc/usa/nano-33-ble-sense)
are built around the NINA-B306 module, based on the Nordic nRF52840 and containing
a powerful Cortex-M4F. Both include an onboard 9-axis Inertial Measurement Unit (IMU), the LSM9DS1.
The Nano 33 BLE Sense adds an LPS22HB barometric pressure and temperature sensor, an HTS221 humidity sensor,
an APDS-9960 digital proximity, ambient light, RGB, and gesture sensor,
and an MP34DT05 digital microphone.
The [Arduino Nano 33 BLE Sense Rev2](https://store-usa.arduino.cc/products/nano-33-ble-sense-rev2-with-headers)
replaces the LSM9DS1 with a combination of the BMI270 and BMM150, the HTS221 with the HS3003, and the MP34DT05 with the MP34DT06JTR.

Note: the Arduino Nano 33 BLE and BLE Sense do not include a QSPI external
flash. Any Python code will need to be stored on the internal flash
Expand All @@ -15,11 +17,15 @@ filesystem.
I2C pins `board.SCL1` and `board.SDA1` are not exposed and are used for onboard peripherals.
Pin `board.R_PULLUP` must be set to high to enable the `SCL1` and `SDA1` pullups for proper operation.

Pin `board.VDD_ENV` applies power to the LSM9DS1, and must be high for it to be operational.
Pin `board.VDD_ENV` applies power to the IMU, the pressure sensor and the humidity sensor, and must be high for them to be operational.

Pins `board.MIC_PWR`, `board.PDMDIN`, and `board.PDMCLK` are for the Nano 33 BLE Sense onboard microphone.

Pin `board.INT_ADPS` is the interrupt pin from the ADPS-9960.
Pin `board.INT_APDS` is the interrupt pin from the APDS-9960.

Pin `board.INT_BMI_V2` is the interrupt pin from the BMI270. This pin is only present on the BLE Sense Rev2.

Pin `board.INT_LPS_V2` is the interrupt pin from the LPS22. This pin is only present on the BLE Sense Rev2.

Pins `board.RGB_LED_R`, `board.RGB_LED_G`, and `board.RGB_LED_B`
are the red, green and blue LEDS in the onboard RGB LED.
Expand Down
4 changes: 3 additions & 1 deletion ports/nordic/boards/arduino_nano_33_ble/pins.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_RGB_LED_G), MP_ROM_PTR(&pin_P0_16) },
{ MP_ROM_QSTR(MP_QSTR_RGB_LED_B), MP_ROM_PTR(&pin_P0_06) },

// Power line to LSM9DS1.
// Power line to IMU, pressure, temperature and humidity sensors.
{ MP_ROM_QSTR(MP_QSTR_VDD_ENV), MP_ROM_PTR(&pin_P0_22) },

// Pullup voltage for SDA1 and SCL1
Expand All @@ -59,6 +59,8 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_PDMDIN), MP_ROM_PTR(&pin_P0_25) },

{ MP_ROM_QSTR(MP_QSTR_INT_APDS), MP_ROM_PTR(&pin_P0_19) },
{ MP_ROM_QSTR(MP_QSTR_INT_BMI_V2), MP_ROM_PTR(&pin_P0_11) },
{ MP_ROM_QSTR(MP_QSTR_INT_LPS_V2), MP_ROM_PTR(&pin_P0_12) },

{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_P1_03) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_P1_10) },
Expand Down
Loading