taler-xotp_fw

xOTP generator firmware
Log | Files | Refs | Submodules | README

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.