custom_hwids.py was never executed in the ci pipeline, but the missing script was just a warning. With Plattform I/O Core 6.1.11 missing scripts are errors, so the pipeline fails.
* Add defines for LED, button and serial port
To make supporting different board layouts easier, this introduces some new defines:
For all platforms:
- `KNX_LED` - the programming LED, defaults to `LED_BUILTIN`
- `KNX_BUTTON` - the programming button, defaults to `0`
For Arduino platforms:
- `KNX_DEBUG_SERIAL` - the serial port that is used for debugging, defaults to `Serial`
- `KNX_SERIAL` - the serial port used for communication with the TPUART, default depends on platform
* GD32 flash workaround
Addressing #181
At least some GD32 devices seem to require unlocking the flash twice. As the unlock function exits with `HAL_OK` if the flash is already unlocked, STM32 devices can run the same code without issues.
* Add H8I8O and H8C09 configurations to knx-demo
Addressing #181
These configurations both serve as examples for the use of these boards and other custom boards that don't use the standard pinout.
* Add STM32 unlock target
This copies the brute force unlock approach by @pavkriz into a custom target. With this commit, it is possible to automatically unlock e.g. a H8I8O board without leaving the PlatformIO IDE.
See #181
* * fix for save/restore of userdata
* change declaration of restore() in knx_facade.h to "const uint8_t* restore(const uint8_t* buffer)" to avoid calling default implementation in save_restore.h
* change typedefs to separate SaveCallback and RestoreCallback
* fix BME60 example, knx.setRestoreCallback() needs to use const uint8_t* as well
* fix commitToEeprom for ESP32
* trigger dirty flag for ESP32 to make sure data is committed
* knx-pzem004v30
Add first draft of a pzem-004t power/current/tension/etc.. on your main line (BE CAREFUL WITH VOLTAGE!)
PZEM-004t-v30 wired on a samd21 with the use of Sercom2
Use with slight modification of: https://github.com/mandulaj/PZEM-004T-v30
View issue: https://github.com/mandulaj/PZEM-004T-v30/issues/43
* Rename examples/knx-pzem0004t.xml to examples/knx-pzem004/knx-pzem0004t.xml
* Delete knx-pzem004t.knxprod
* Delete pzem-004t-v30.ino
* Update: 'just move to right directory'
* Update knx-pzem0004t.xml
* Add: ProgMode
* Fix/Update/Add
Add: ResetEnergy function with datetime
Update: led Class
Fix: many typo, errors
* Cleaning
Some strange bug/feature...
Information is transmitted only when the device got time from KNX, I have put
if (timeStatus() == timeSet && resetPeriod != 0)
{
resetEnergyLoop();
}
But don't know if it's enough...
* Create knx-433Dio.ino
* Add Files:
README.md
.xml and knxprod files
* Delete pzem-004t-v30.ino
* Update pzem-004t-v30.ino
* Refactored the knx_facade a bit to make the auto-building of the global knx object and the buttonUp() ISR function opt-in. Also added the ability to quite easily attach another serial (in this case tested with Serial2 of an ESP32).
* Added visual studio code temp files to .gitignore
* Fix for missing build flag for WifiManager in ESP32_ip demo
* Added example in which we DIY build the KNX object and use ESP32's second UART to connect so that you can debug with the first one that's connected to USB.
* Minor platform cleanups to remove compilation warnings.
* ESP32 can't handle the defaulted 8192 byte EPROM. Next to that I needed to begin() the eprom lib in my setup() to get it to work and that requires knowing how much memory KNX will use. This fix makes the default more conservative and moves it's definition to the .h file so that other files can always use it as well.
* After comments from thelsing, inverted the logic. The default global knx object is now opt-out by defining KNX_NO_AUTOMATIC_GLOBAL_INSTANCE. See the knx-demo-diy project for an example.
Minor syntactic cleanups.
* Removed hardwareserial from facade (detail which was not needed)
Placed facade constructors together
Minor syntactic cleanup
* Fixed knx-cc1310 where own button routine was calling now private internal knx facade variable.
Renamed files in knx-demo-diy
Minor syntactic stuff
* Added gitattributes for binary knxprod files
* knx-pzem004v30
Add first draft of a pzem-004t power/current/tension/etc.. on your main line (BE CAREFUL WITH VOLTAGE!)
PZEM-004t-v30 wired on a samd21 with the use of Sercom2
Use with slight modification of: https://github.com/mandulaj/PZEM-004T-v30
View issue: https://github.com/mandulaj/PZEM-004T-v30/issues/43
* Rename examples/knx-pzem0004t.xml to examples/knx-pzem004/knx-pzem0004t.xml
* Delete knx-pzem004t.knxprod
* Delete pzem-004t-v30.ino
* Update: 'just move to right directory'
* Update knx-pzem0004t.xml
* Add: ProgMode
* Fix/Update/Add
Add: ResetEnergy function with datetime
Update: led Class
Fix: many typo, errors
* Initial commit
* Clean up
* Remove display code
* Change cmake build
* Add SimpleLink SDK for CC13xx/CC26xx as submodule
* Remove commented line from build.sh
* Working build
* Remove SDK submodule
* Squashed 'examples/knx-cc1310/coresdk_cc13xx_cc26xx/' content from commit 0d78d32
git-subtree-dir: examples/knx-cc1310/coresdk_cc13xx_cc26xx
git-subtree-split: 0d78d3280357416a5c0388148cda13717c9ffaa5
* Add more comments and enable Power_idleFunc() for NoRTOS variant.
Internal SDK driver functions which have to wait for something
will cause Power_idleFunc to be called instead of doing busy wait.
* Move CC1310 platform init around
* Optimize a bit more in debug build config as the binary does not fit into 128Kb flash otherwise.
* Explicitly list each source/header file in build config. Use linker group to resolve circular dependencies.
* Ignore vscode settings.json
* Increase stacks size
* Only compile CC1310 source code if #define DeviceFamily_CC13X0
* initial commit of CC1310 RF driver with first working RX version
* Better handling of buttonUp() across platforms
* Start cleanup
* continue cleanup
* Fix bau2920 compilation
* Continue cleanup
* Fix compilation in other examples
* Fix compilation
* htons() and ntohs() only for SAMD and STM32, but not for Linux and ESP8266 and ESP32
* htons(9 and ntohs() needed for CC13x0
* Continue cleanup
* Add CC1310 platform to CI
* Fix CI
* Use more recent toolchain from ARM
* Fix travis
* Use Ubuntu Focal
* Fix toolchain for travis
* Fix package name
* Fix toolchain
* Add libstdc++-dev package
* Add newlib packages
* Remove commented commands from CI
* Fix travis
* Fix compilation of knxPython
* Clean up linefeeds
* Fix RX callback
* Move RF CRC16-DNP to bits.cpp
* Fix TX
* Optimization: do not calc CRC for block1 again in rf_data_link_layer
* Make newline optional in printHex
* Cleanup. First working version: ETS5 programming of individual address via KNX/RF coupler.
* Use LEDs and Buttons to control ProgMode and Flash Erase
* Remove settings.json (VScode)
* Add README.md
* Update README.md
* Update README.md
* Fix typo
* Add inital serial port support for Linux platform
* Add missing print implementation for uint64_t and enable mask 07B0 for Linux platform using TPUART
* Create executable per mask
* Add one executable per mask for coupler