README.md (2643B)
1 # XTOTP Generator Firmware 2 3 4 5 # π§ Project xOTP Generator Firmware β Under Construction π§ 6 7 > **Status:** π οΈ This project is currently under active development. 8 > Features, structure, and documentation are subject to change. 9 > The Device (hardware) will be published in the repository taler-xotp_hw.git 10 > The firmware (HAL, BSP, xOTP application, mockup for emulation on GNU/Linux system) will be published in the repository taler-xotp_fw.git 11 --- 12 13 ## π§± Overview 14 15 Welcome to **Project xOTP Generator Firmware** repository! 16 This repository is currently a work in progress. 17 18 ### Structure 19 * **`xotp_app/`:** This folder contains the firmware application, including the controller state machine. 20 The application depends on three third-party libraries: pbmLib, tinytime, and baseXConverter. 21 The controller can operate in two modes: 22 - xOTP Generator Device Firmware β running on top of the hardware BSP (Board Support Package) of the actual xOTP device. 23 - Mockup Mode β running on a simulated BSP for testing and demonstration purposes without requiring the physical hardware. 24 25 When using the mockup BSP, the system emulates the basic hardware functions, allowing development and testing of the firmware in a mocked environment on a GNU/Linux based system. 26 27 * **`bsp_mockup/`:** This folder contains mockup functions of the hardware device allowing to test the *xotp_app* without the need of a physical hardware device. 28 This is manly used for demonstration purposes as well as testing new features. 29 30 * **`bsp_xotp-hw/`:** This folder contains the hardware device interface with its drivers; low level calls and an abstraction of CMSIS based LL and HAL library bindings. 31 It is an encapsulated unit that follows the IOC pattern to decouple the user application and the hardware specific code. 32 33 * **`third_party/`:** 34 35 --- 36 37 ## π§ Roadmap (Planned) 38 39 - [ ] Initial project structure 40 - [ ] Core functionality 41 - [ ] Tests and CI/CD setup 42 - [ ] Documentation 43 - [ ] Public release π 44 45 --- 46 47 ## π€ Contributing 48 49 Weβre not accepting external contributions **yet**, but stay tuned! 50 Once the foundation is ready, weβll open issues and contribution guidelines. 51 52 --- 53 54 ## π¬ Contact 55 56 For questions or collaboration ideas, reach out to: 57 - **Adrian STEINER** β [adrian.steiner@bfh.ch] 58 - **Andreas HABEGGER** β [andreas.habegger@bfh.ch] 59 - **Christian GROTHOFF** β [christian.grothoff@bfh.ch] 60 61 --- 62 63 ## β οΈ Disclaimer 64 65 This project is **under active construction**. Expect frequent updates, breaking changes, and incomplete features. 66 67 --- 68 69 > Made with β€οΈ while building something awesome.