OVMS3/README.MD

99 lines
3.8 KiB
Text
Raw Normal View History

2022-04-05 22:37:39 +00:00
# OVMS3 Fork
I forked OVMS3 Original project to work on a vehicle integration for my Renault Zoe Phase 2.
Orignal project: https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3
## Firmware-Version
The fork is fixed at Version 3.3.002 with their provided modified ESP-IDF
## To-Do List
2022-04-08 22:58:08 +00:00
- [X] Integrate my server to assistant and server recommendation and add CA as well
2022-04-05 23:12:45 +00:00
- [ ] Integrate PIDs for reading values like odometer, battery cell voltage and so on, via OBD connector (because of gateway read-only)
- [ ] Accessing CAN bus after gateway to get full access to controllers use all available CAN bus interfaces OVMS hardware has
- [ ] Get more useful PIDs with direct access of CAN busses
- [ ] Try to control things like wake-up, charge control
- [ ] Implement own control routines like stopping charge after certain soc, try to control Cabine heaters to heat while charging (use debug commands to enable them)
2022-04-05 22:37:39 +00:00
## Releases
Successful build will be uploaded to my own ovms-server at https://ovms.bit-cloud.de/firmware or under Releases tab so self host them
2022-04-08 22:58:08 +00:00
## Build prerequisites
If you have a freshly installed Debian or Ubuntu based operating system, you can install prerequisites with following commands. On other distributions you need to install these with your package manager
```
apt install git build-essential pyhton3 python3-pip python ncurses-dev flex bison gperf dos2unix
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
sudo python2.7 get-pip.py
```
2022-04-05 22:37:39 +00:00
## Build
2022-04-05 23:12:45 +00:00
Clone my repository and init submodules
2022-04-05 22:37:39 +00:00
```
2022-04-05 23:12:45 +00:00
git clone https://git.bit-cloud.de/carsten.schmiemann/OVMS3.git
cd OVMS3/
git submodule init
git submodule update
2022-04-05 22:37:39 +00:00
```
Install provided ESP IoT Development Framework
```
cd OVMS.V3-idf/
./install.sh
```
2022-04-05 23:12:45 +00:00
If you have trouble to install because another version of the IDF installed, delete the entire folder and try step above again
```
rm -rf ~/.espressif
```
Enable IDF (everytime you open a shell and want to compile project)
2022-04-05 22:37:39 +00:00
```
cd OVMS.V3-idf/
source export.sh
```
2022-04-05 23:12:45 +00:00
Go to OVMS Folder copy sdkconfig for your hardware and build firmware
In this example for hardware 3.1 and above. You can customize it via make menuconfig
2022-04-05 22:37:39 +00:00
```
cd OVMS.V3/
2022-04-05 23:12:45 +00:00
cp support/sdkconfig.default.hw31 sdkconfig
2022-04-05 22:37:39 +00:00
make -jX
```
X = number of cpu cores to speed up build process
2022-04-05 23:12:45 +00:00
Then upload built firmware to your webserver and flash it via OTA function in OVMS webinterface.
> Hint: If you build your first time, you need to execute make multiple times, because of downloading dependencies.
2022-04-05 22:37:39 +00:00
## Security concerns
The OVMS3 project use an outdated and modified IDF, there are many security problems with them. Major problem is missing firewall so your webinterface and services like SSH is open to public ip of 3G/LTE interface. Most providers use an CG-NAT, but this is no a reliable protection at all.
Many of used libraries are outdated too. For example mongoose webserver has a lot of security problems fixed with newer versions.
I cannot fix these issues because I am not an experienced C programmer, I will focus on my vehicle integration.
2022-04-05 23:12:45 +00:00
I hope original project maintainers will fix them in the future, I know it is not an easy task because there a lot of changes in the IDF and dependencies.
## OVMS Server
I use my own OVMS server, because I love privacy. So there are no push available only E-Mail for notifications.
You can use it too if you want, just register a account and vehicle at https://ovms.bit-cloud.de and point your OVMS module at https://ovms-server.bit-cloud.de Port 6870 with TLS enabled.
You need to insert my CA into your OVMS3, because I cannot proxy it with nginx and letsencrypt certificates so I used self signed certs.
Create a file called ovms-ca at /store/trustedca with bult in editor in the webinterface. (Create folder if not exist)
Paste content of ovms-ca.crt file to it and save it.
The go to the web shell or ssh and typ in
```
tls trust reload
```