Skip to content

Latest commit

 

History

History
105 lines (72 loc) · 5.78 KB

Contributing.md

File metadata and controls

105 lines (72 loc) · 5.78 KB

Contributing Guidelines

IMPORTANT Information

All new development changes should be done as pull requests against the beta branch.

The default master branch is only used as a source reference for the currently active (enrolled) firmware version.

Reporting bugs

Before creating bug reports, please check this list as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible in literal form (e.g. copy, don't interpret).

Note: If you find a Closed issue that seems like it is the same thing that you're experiencing, open a new issue and include a link to the original issue in the body of your new one.

Before Submitting A Bug Report

  • Check the FAQs on luftdaten.info for a list of common questions and problems.
  • Perform a cursory search to see if the problem has already been reported. If it has and the issue is still open, add a comment to the existing issue instead of opening a new one.

Build Instrutions

Recommended Build using PlatformIO

Current revisions of airRohr firmware are being tested and released by using PlatformIO Core. The included platformio.ini file is used to install and update all required dependencies into the correct and required version. While the dependencies are listed here in more detail, the authoritative versions and references are in the platformio.ini file.

PlatformIO provides many IDE integrations.

Build using Arduino IDE

As a fall back it should be possible to build the firmware via the Arduino IDE. This method is only a fallback over the PlatformIO. Any submission to the repository must pass building and work with a PlatformIO based build.

Settings needed:

Configuration Settings in Arduino IDE:

  • Board: NodeMCU 1.0 (ESP-12E Module)
  • CPU Frequency: 160MHz
  • Flash Size: 4M (3M SPIFFS)
  • Debug Port: Disabled
  • Debug Level: NoAssert-NDEBUG
  • lwIP Variant: v2.0 Lower memory
  • VTables. Flash
  • Erase Flash: Only Sketch

Libraries used from ESP8266 Arduino:

  • Wire (GNU Lesser General Public License v2.1)
  • FS (GNU Lesser Public License >=2.1)
  • ESP8266WiFi (GNU Lesser Public License >=2.1)
  • ESP8266WebServer (GNU Lesser Public License >=2.1)
  • ESP8266HTTPClient (GNU Lesser Public License >=2.1)
  • DNSServer (GNU Lesser Public License >=2.1)

Additional Libraries needed for building:

Source Layout

Dateiname Beschreibung
airrohr-firmware.ino Sourcecode der eigentlichen Firmware
ext_def.h grundsätzliche Konfiguration der Parameter (WLAN, Sensoren, APIs)
html-content.h allgemeine HTML-Sourcen und Bilder für HTML- und Text-Ausgaben
intl_xx.h Dateien mit übersetzten Texten für die Internationalisierung, 'xx' ist der 2 letter ISO code der 'Sprache'
intl_template.h Vorlage für Übersetzungen
astyle.rc Formatierungsvorlage für Astyle
ppd42ns-wificonfig-ppd-sds-dht.spiffs.bin Binary mit leerem Dateisystem, zum Löschen der Konfiguration, siehe Anleitung im Wiki

Translations

For new translations copy the file intl_template.h and rename it to intl_xx.h, where xx is the ISO-3166-2 two letter country code. This file contains all strings used for output seen by normal users. Only debug output is remaining EN by default.

Please take look at the existing translations and try to adhere and improve consistency accross and within the particular translation.

TODOs