| 
 | 1 | +.. zephyr:board:: arduino_portenta_c33  | 
 | 2 | +
  | 
 | 3 | +Overview  | 
 | 4 | +********  | 
 | 5 | + | 
 | 6 | +The Portenta C33 is a powerful System-on-Module based on the Renesas RA6M5  | 
 | 7 | +microcontroller group, which utilizes the high-performance Arm® Cortex®-M33  | 
 | 8 | +core. The Portenta C33 shares the same form factor as the Portenta H7 and is  | 
 | 9 | +backward compatible with it, making it fully compatible with all Portenta  | 
 | 10 | +family shields and carriers through its High-Density connectors.  | 
 | 11 | + | 
 | 12 | +Hardware  | 
 | 13 | +********  | 
 | 14 | + | 
 | 15 | +- Renesas RA6M5 ARM Cortex-M33 processor at 200 MHz  | 
 | 16 | +- 24 MHz crystal oscillator  | 
 | 17 | +- 32.768 kHz crystal oscillator for RTC  | 
 | 18 | +- 2 MB flash memory and 512 KiB of RAM  | 
 | 19 | +- 16 MB external QSPI flash  | 
 | 20 | +- One RGB user LED  | 
 | 21 | +- One reset button  | 
 | 22 | +- NXP SE050 secure element  | 
 | 23 | +- Onboard 10/100 Ethernet PHY  | 
 | 24 | +- WiFi + Bluetooth via ESP32-C3 running `esp-hosted`_ firmware  | 
 | 25 | +- Battery charger  | 
 | 26 | +- MKR header connector exposing standard peripherals (UART, SPI, I2C, ADC, PWM)  | 
 | 27 | +- 160 pins high density Portenta connectors exposing SD, CAN, I2S, SWD interfaces  | 
 | 28 | + | 
 | 29 | +Supported Features  | 
 | 30 | +==================  | 
 | 31 | + | 
 | 32 | +.. zephyr:board-supported-hw::  | 
 | 33 | +
  | 
 | 34 | +Connections and IOs  | 
 | 35 | +===================  | 
 | 36 | + | 
 | 37 | +The `Arduino store`_ has detailed information about board connections. Download  | 
 | 38 | +the `Arduino Portenta C33 Schematic`_ for more details.  | 
 | 39 | + | 
 | 40 | +Serial Port  | 
 | 41 | +===========  | 
 | 42 | + | 
 | 43 | +The Portenta C33 exposes 4 serial ports with hardware flow control.  | 
 | 44 | + | 
 | 45 | +PWM  | 
 | 46 | +===  | 
 | 47 | + | 
 | 48 | +The Portenta C33 exposes 10 dedicated independent PWM pins.  | 
 | 49 | + | 
 | 50 | +USB Device Port  | 
 | 51 | +===============  | 
 | 52 | + | 
 | 53 | +The RA6M5 MCU has an high speed USB device port that can be used to communicate  | 
 | 54 | +with a host PC.  See the :zephyr:code-sample-category:`usb` sample applications for  | 
 | 55 | +more, such as the :zephyr:code-sample:`usb-cdc-acm` sample which sets up a virtual  | 
 | 56 | +serial port that echos characters back to the host PC.  | 
 | 57 | +A second full speed USB interface is exposed on the high density connectors.  | 
 | 58 | + | 
 | 59 | +DAC  | 
 | 60 | +===  | 
 | 61 | + | 
 | 62 | +The RA6M5 MCU has two DACs with 12 bits of resolution. On the  | 
 | 63 | +Arduino Portenta C33, the DACs are available on pins A5 and A6.  | 
 | 64 | + | 
 | 65 | +Programming and Debugging  | 
 | 66 | +*************************  | 
 | 67 | + | 
 | 68 | +.. zephyr:board-supported-runners::  | 
 | 69 | +
  | 
 | 70 | +The Arduino Portenta C33 ships with a DFU compatible bootloader. The  | 
 | 71 | +bootloader can be entered by quickly tapping the reset button twice.  | 
 | 72 | + | 
 | 73 | +Flashing  | 
 | 74 | +========  | 
 | 75 | + | 
 | 76 | +#. Build the Zephyr kernel and the :zephyr:code-sample:`hello_world` sample application:  | 
 | 77 | + | 
 | 78 | +   .. zephyr-app-commands::  | 
 | 79 | +      :zephyr-app: samples/hello_world  | 
 | 80 | +      :board: arduino_portenta_c33  | 
 | 81 | +      :goals: build  | 
 | 82 | +      :compact:  | 
 | 83 | + | 
 | 84 | +#. Connect the Portenta C33 to your host computer using USB  | 
 | 85 | + | 
 | 86 | +#. Connect a 3.3 V USB to serial adapter to the board and to the  | 
 | 87 | +   host.  See the `Serial Port`_ section above for the board's pin  | 
 | 88 | +   connections.  | 
 | 89 | + | 
 | 90 | +#. Run your favorite terminal program to listen for output. Under Linux the  | 
 | 91 | +   terminal should be :code:`/dev/ttyACM0`. For example:  | 
 | 92 | + | 
 | 93 | +   .. code-block:: console  | 
 | 94 | +
  | 
 | 95 | +      $ minicom -D /dev/ttyACM0 -o  | 
 | 96 | +
  | 
 | 97 | +   The -o option tells minicom not to send the modem initialization  | 
 | 98 | +   string. Connection should be configured as follows:  | 
 | 99 | + | 
 | 100 | +   - Speed: 115200  | 
 | 101 | +   - Data: 8 bits  | 
 | 102 | +   - Parity: None  | 
 | 103 | +   - Stop bits: 1  | 
 | 104 | + | 
 | 105 | +#. Tap the reset button twice quickly to enter bootloader mode  | 
 | 106 | + | 
 | 107 | +#. Flash the image:  | 
 | 108 | + | 
 | 109 | +   .. zephyr-app-commands::  | 
 | 110 | +      :zephyr-app: samples/hello_world  | 
 | 111 | +      :board: arduino_portenta_c33  | 
 | 112 | +      :goals: flash  | 
 | 113 | +      :compact:  | 
 | 114 | + | 
 | 115 | +   You should see "Hello World! arduino_portenta_c33" in your terminal.  | 
 | 116 | + | 
 | 117 | +References  | 
 | 118 | +**********  | 
 | 119 | + | 
 | 120 | +.. target-notes::  | 
 | 121 | + | 
 | 122 | +.. _Arduino Store:  | 
 | 123 | +    https://store.arduino.cc/products/portenta-c33  | 
 | 124 | + | 
 | 125 | +.. _Arduino Portenta C33 Schematic:  | 
 | 126 | +    http://docs.arduino.cc/resources/schematics/ABX00074-schematics.pdf  | 
 | 127 | + | 
 | 128 | +.. _esp-hosted:  | 
 | 129 | +    https://github.com/espressif/esp-hosted  | 
0 commit comments