summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
14 daysWIP: fw: Embed app signing into build systembootloaderxengineering
14 dayscmake: kicad: Add missing license headerxengineering
14 daysfw: Customize firmware artifact namesxengineering
14 daysfw: Use custom MCUboot signing keyxengineering
Using the MCUboot default key adds nearly not security at all.
14 daysfw: Build application firmware for bootloaderxengineering
This changes the flash address for which the application firmware is built. Furthermore it adds the MCUboot header as offset to the application firmware. For details see the documentation of the enabled Kconfig flag.
2025-02-23fw: btl: Integrate bootloader buildxengineering
This allows to build the MCUboot bootloader as part of the existing CMake build system. The bootloader is embedded as external project since multiple Zephyr applications in one build are not easily feasible.
2025-02-23fw: Add mbedtls submodulexengineering
This module provides the library for the cryptography required for MCUboot. Later it will likely also be used to secure the full communication with the device.
2025-02-23fw: Add mcuboot submodulexengineering
This provides the source code for the used bootloader.
2025-02-23fw: Update to Zephyr v4.0.0HEADmainxengineering
This is the latest release of the Zephyr real-time operating system.
2025-02-18pcb: Update ROADMAP.mdxengineering
2025-02-18pcb: Add hierarchical labels and connectionsxengineering
2025-02-18pcb: Replace text fields by symbol descriptionsxengineering
This makes it easier to keep the descriptions and the text inside the schematic in sync.
2025-02-18pcb: Set title to `iot-contact`xengineering
2025-02-18pcb: Add missing text descriptionsxengineering
2025-02-18pcb: Rename some signalsxengineering
2025-02-18pcb: J7: Add motor connectorxengineering
2025-02-18pcb: J6: Add AC supply connectorxengineering
2025-02-18pcb: J5: Add door / window opener connectorxengineering
2025-02-15pcb: J4: Add vertical RJ45 connectorxengineering
2025-02-15pcb: J3: Add non-PoE 5V power input headerxengineering
Power over Ethernet (PoE) has the disadvantage that GND is significantly below earth. This requires that GND of a PoE-powered device is never attached to earthed devices. In production use cases this is no problem. The earth lines are isolated. Nevertheless for debugging it is sometimes useful to connect measuring equipment like logic analyzers and oscilloscopes to the board. This is not possible with PoE. Thus an alternative earth-based 5V power input is useful.
2025-02-15pcb: J2: Add UART pin headerxengineering
2025-02-15pcb: Fix connection errors reported by ERCxengineering
2025-02-15pcb: SW1-SW2: Add switches for reboot and wipexengineering
2025-02-15pcb: D1-D3: Add LEDs for PWR, UPD and ACTxengineering
2025-02-15cmake: kicad: Update selected BOM columnsxengineering
2025-02-15pcb: gitignore: Add *auto_saved_files*xengineering
2025-02-15pcb: J1: Add JTAG connectorxengineering
2025-02-15pcb: Update schematic hierarchyxengineering
2025-02-15pcb: Add ROADMAP.mdxengineering
2025-02-14Document where PCB files are placed in buildxengineering
2025-02-14cmake: Add message after schematic exportxengineering
2025-02-14pcb: Rename targets, functions and output filesxengineering
This simplifies the CMake code and the paths inside the build folder.
2025-02-14pcb: Export BOM as CSV with CMakexengineering
2025-02-14pcb: Add CMake and export schematic by defaultxengineering
2025-02-14cmake: Add module with kicad_schematic_to_pdfxengineering
This CMake function integrates converting the schematic to PDF as part of the standard build.
2025-02-14pcb: Add sub-schematicsxengineering
2025-02-14pcb: Add empty KiCad projectxengineering
This is the starting point for the PCB development.
2025-02-14pcb: gitignore: Add *.lckxengineering
2025-02-14pcb: gitignore: Add fp-info-cachexengineering
2025-02-14pcb: gitignore: Add *.kicad_prlxengineering
2025-02-14Add LICENSE.txtxengineering
This license is the primary one for the whole project. Sub-directories might have other licenses like e.g. `fw`.
2025-02-14Update project definitionxengineering
2025-02-14Switch to a global CMake buildxengineering
This allows to easily build everything from the repository root. For now this only covers firmware but later electrical PCB and mechanical case files can be added.
2025-02-14fw: Do not track Python environmentxengineering
Tracking the Python environment with specific dependency versions does not work well. Over time these versions disappear and are not anymore installable via pip. For now the alternative is to let the user setup the environment by interpreting the error output during builds. This is not convenient but the best which is currently possible. This furthermore allows to install Python dependencies via the Linux package manager. With that it is more ergonomic to build since the Python environment does not have to be sourced.
2025-02-11Add symlink to compile_commands.jsonxengineering
The compile_commands.json located in fw/build is symlinked in the repository root to more conveniently open a text editor with LSP client there which is directly prepared for the firmware build.
2025-02-11fw: gitignore: Add build, .cache and log.txtxengineering
2025-02-11fw: Clean up CMakeLists.txtxengineering
2025-02-11fw: Switch to MPL 2.0xengineering
The Mozilla Public License seems to be suitable for this firmware project. See the original license text for details. This commit also adds a `.txt` suffix to the LICENSE file to make the file type more visible to humans and tools.
2025-02-11fw: Move content of `firmware` herexengineering
This makes the name shorter which is especially relevant for Git commit messages.
2024-09-06firmware: Use pip freeze for requirements.txtxengineering
This results in a complete list of required Python dependencies with fixed versions. This ensures that the build works reliably given that the dependencies are still available in referenced versions.