If you have a project that was working on the MatrixPortal M4 and you would like it to work on the newer hardware, most of the features should work without needing to do a lot of modification. The path to updating your project will differ a bit depending on whether it was done using Arduino or CircuitPython.
In most cases, you will not need to update your hardware configuration, but there is one particular case where you may have to. If you were using DAC Audio output, this is no longer supported by the ESP32-S3. Instead it uses I2S audio output, so that part of your circuit would need to be changed.
Some of the other differences that may require code changes include:
- The WiFi is no longer a coprocessor, but is integrated into the ESP32-S3 itself.
- The flash memory is no longer a separate chip, which may have required a separate library in Arduino.
- The ESP32-S3 has A LOT more flash memory and RAM, so if you were limited by these on the MatrixPortal M4, you no longer need to worry.
- The ESP32-S3 pins are much more flexible and most of them are capable of DigitalIO and analog input in addition to any other special functions. This includes the TXO and RXI pins.
If your project uses CircuitPython and the MatrixPortal library, most of the changes should carry over automatically. If you are accessing some of the lower level functions directly, you may need to change the instantiation if it is expecting to access the WiFi coprocessor directly.
If your project uses Arduino, you will likely need to change pin numbers as some of the pin names have changed.
Text editor powered by tinymce.