mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-07 08:19:52 +03:00
added wiki docs
This commit is contained in:
60
docs/Building-firmware.md
Normal file
60
docs/Building-firmware.md
Normal file
@@ -0,0 +1,60 @@
|
||||
### Using the PlatformIO IDE
|
||||
|
||||
- Download [Git](https://git-scm.com/download/win) (install using the default settings)
|
||||
- Download and install [Visual Studio Code](https://code.visualstudio.com/docs/?dv=win) (VSC)
|
||||
- Restart the PC (if using Windows) to apply the new PATH settings. It should now detect Git
|
||||
- Install the VSC extension "PlatformIO IDE"
|
||||
- Git clone this repo with "git clone" from the command palette and using the URL https://github.com/proddy/EMS-ESP.git
|
||||
- Install NodeJS from [here](https://nodejs.org/en/download/).
|
||||
- Test if Node is installed correctly by `node --version` (both v10 and v12 are ok)
|
||||
- Install the modules in the `tools/webfilesbuilder` folder with:
|
||||
```
|
||||
cd tools/webfilesbuilder
|
||||
npm ci
|
||||
```
|
||||
- Check you can build the web files by typing `node node_modules/gulp/bin/gulp.js` from the `webfilesbuilder` folder.
|
||||
- Finally use the build targets in PlatformIO's to build & upload.
|
||||
|
||||
If you seeing fatal errors in the npm install and came from an earlier build then you'll may need to refresh the library, like
|
||||
1. Remove the local `node_modules`
|
||||
2. Clean npm cache by `npm cache verify`
|
||||
3. Update the global npm by `sudo npm ci -g npm`
|
||||
4. Reinstall the local `node_modules` by `npm ci`
|
||||
|
||||
### Using Linux CLI
|
||||
|
||||
- Install python:
|
||||
```sh
|
||||
sudo apt install python-pip
|
||||
```
|
||||
- Install PlatformIO (see https://docs.platformio.org/en/latest/installation.html):
|
||||
```sh
|
||||
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/develop/scripts/get-platformio.py)"
|
||||
```
|
||||
- Edit `~/.profile` and add: `export PATH=$PATH:~/.platformio/penv/bin` to the end, then `exit`, and start a new shell
|
||||
- Update platformio and its libraries
|
||||
```sh
|
||||
platformio platform update
|
||||
platformio lib update
|
||||
```
|
||||
- Grab the EMS-ESP source code:
|
||||
```sh
|
||||
git clone https://github.com/proddy/EMS-ESP.git
|
||||
```
|
||||
(use `git clone --branch=dev https://github.com/proddy/EMS-ESP.git` for dev builds)
|
||||
- Install NodeJS. See instructions [here](https://tecadmin.net/install-latest-nodejs-npm-on-ubuntu/).
|
||||
- Install the EMS-ESP's web builder components
|
||||
```sh
|
||||
cd EMS-ESP/tools/webfilesbuilder
|
||||
npm ci
|
||||
cd ../..
|
||||
```
|
||||
- Build the firmware image:
|
||||
```sh
|
||||
pio run
|
||||
```
|
||||
- Upload to firmware image. This uses OTA as default. Change `platformio.ini` if using USB
|
||||
```sh
|
||||
pio run -t upload
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user