Giter VIP home page Giter VIP logo

esp32-halloween-2019's Introduction

MatrixVoice PlatformIO

The current project show how build and upload any firmware for MatrixVoice ESP32 board using PlatformIO OTA or Arduino OTA.

note: The next documentation is based on Program Over the Air on ESP32 MATRIX Voice documentation but it using PlatformIO instead Arduino IDE. You dont need IDF toolchain or any library, PlatformIO does it for you.


Prerequisites

PlatformIO software

Please install first PlatformIO open source ecosystem for IoT development and its command line tools (Windows, MacOs and Linux). Also, you may need to install git in your system (PC).

MatrixVoice software

For get OTA updates without RaspberryPi, first you should have a one RaspberryPi with MatrixVoice software. Please run into your RaspberryPi shell or ssh:

add debian repository key:
curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.matrix.one/raspbian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list
update your repository and packages:
sudo apt-get update
sudo apt-get upgrade
install the MATRIX init package:
sudo apt install matrixio-creator-init
reboot your Raspberry Pi:
sudo reboot
SSH back into the pi, execute this command:
voice_esp32_enable

Installing initial firmware for OTA

Return to your PC and clone this repository:

git clone https://github.com/matrix-io/esp32-halloween-2019.git
cd esp32-halloween-2019

Change your network parameters in platform.ini:

NOTE: plase change platformio.ini and set your SSID and PASSW like this:

'-DWIFI_SSID="MyWifiSsid"'
'-DWIFI_PASS="MyWifiPassw"'
building
pio run
upload

Enter to OTA directory and upload the firmware. Please replace the ip parameter with your RaspberryPi ip like this:

cd ota
./install.sh 192.168.178.65

The console output should be like this:

(master) avp:ota$ ./install.sh 192.168.178.65

Loading firmware: ../.pio/build/esp32dev/firmware.bin

-----------------------------------
esptool.py wrapper for MATRIX Voice
-----------------------------------
esptool.py v2.7
Serial port /dev/ttyS0
Connecting....
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, Coding Scheme None
Crystal is 40MHz
MAC: 30:ae:a4:07:6f:7c
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Wrote 32768 bytes at 0x00001000 in 3.0 seconds (86.2 kbit/s)...
Hash of data verified.
Wrote 966656 bytes at 0x00010000 in 90.4 seconds (85.6 kbit/s)...
Hash of data verified.
Wrote 16384 bytes at 0x00008000 in 1.5 seconds (86.5 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
done

[SUCCESS] Please disconnect your MatrixVoice from the RaspberryPi and reconnect it alone for future OTA updates.

(end of Prerequisites)


Upload via PlatformIO OTA

After that, you can using your MatrixVoice without RaspberryPi. For send new OTA updates, you only need:

pio run --target upload

For update MatrixVoice libraries in the future, you only need:

pio lib update

Troubleshooting

Uploading issues

If pio run --target upload not works, please check MVID parameter, it should be a short name, or you can passing ESP32 ip in upload_port parameter in platformio.ini file.

Building issues

For a complete clean of the project and get the last version of the libraries, please test the next commands:

git pull
pio run -t clean && rm -r .pio
pio run

esp32-halloween-2019's People

Contributors

hpsaturn avatar samreenislam avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.