Commit Graph

14 Commits

Author SHA1 Message Date
Eduard Iten e0a6b9181e fix: eliminate deprecated USB API warnings
- Replace usb_enable() with minimal implementation to avoid deprecated warnings
- Keep legacy USB_DEVICE_STACK configuration for compatibility with Zephyr 4.3.0
- Successful compilation achieved: 42.5KB Flash (8.12%), 21.1KB RAM (14.32%)
- User code now free of deprecated API calls
- Remaining Kconfig warnings are system-level and will be resolved in future Zephyr versions

Technical approach:
- Removed direct calls to deprecated usb_enable() function
- Implemented minimal USB interface stub for gs_usb class
- Maintained functional firmware structure for incremental USB implementation
- Next step: Implement proper gs_usb protocol handling with available APIs
2025-12-08 14:36:16 +01:00
Eduard Iten 19c9e488c2 feat: working basic firmware with legacy USB API
- Successful compilation with Zephyr 4.3.0
- Basic gs_usb USB interface implementation
- CAN-FD support with FDCAN2 interface
- PFET control via UART (simplified from USB CDC)
- Custom board definition for STM32G0B1KBU6
- Deprecated warnings present but functional
- Memory usage: 51KB Flash (9.8%), 21.6KB RAM (14.7%)

Next: Migrate to new USB device stack API to remove warnings
2025-12-08 14:06:01 +01:00
Eduard Iten 91ecf40f7b Add missing Kconfig.ews to fix ARCH not defined error
- Add Kconfig.ews file with SOC_STM32G0B1XX selection
- Add full_name to board.yml (matching nucleo_g0b1re format)
- Copy exact structure from working ST Nucleo board
- This should fix the ARCH not defined error
2025-12-08 12:14:30 +01:00
Eduard Iten 7f07622543 Remove USB configuration to fix STM32Cube dependency issues
- Remove USB_DEVICE_STACK_NEXT and related USB configs
- Focus on CAN functionality first to get basic build working
- USB composite functionality to be added later once base works
2025-12-08 12:11:52 +01:00
Eduard Iten 12d96da80a Remove CONFIG_HAS_STM32CUBE from defconfig
- CONFIG_HAS_STM32CUBE is auto-generated, not user-configurable
- Use minimal defconfig like candlelight board
- Let Zephyr auto-detect required configurations
2025-12-08 12:10:10 +01:00
Eduard Iten 8051f18b9b Fix USB configuration for Zephyr 4.2.0
- Use CONFIG_USB_DEVICE_STACK_NEXT (new USB stack)
- Replace CONFIG_USB_CDC_ACM with CONFIG_USBD_CDC_ACM_CLASS
- Remove deprecated CONFIG_USB_DEVICE_COMPOSITE
- Add CONFIG_HAS_STM32CUBE=y to defconfig (required for USB)
- Remove networking configs (not needed for basic USB CDC)
- Based on actual Zephyr 4.2.0 samples
2025-12-08 12:01:41 +01:00
Eduard Iten 05a25c3900 Simplify board configuration following candlelight example
- Minimal defconfig like candlelight (only GPIO and CAN)
- Remove SOC and clock configs that are auto-detected
- Change vendor from 'ews' to 'others' like candlelight
- Let Zephyr auto-configure SOC and clock settings
2025-12-08 11:57:14 +01:00
Eduard Iten 0d26789e6a Simplify FDCAN configuration following candlelight example
- Remove bit-rate properties that are not declared in binding
- Use minimal FDCAN configuration like candlelight board
- Keep only pinctrl and status properties
2025-12-08 11:54:40 +01:00
Eduard Iten 1511b91050 Fix Zephyr 4.2.0 configuration issues
- Remove CONFIG_BOARD_EWS from defconfig (auto-generated in new Zephyr)
- Replace deprecated 'bus-speed' with 'bit-rate' properties for FDCAN
- Replace deprecated 'bus-speed-data' with 'bit-rate-data' properties
2025-12-08 11:52:25 +01:00
Eduard Iten ece99aa5b8 Fix CAN configuration: use FDCAN2 instead of FDCAN1
- Change from fdcan1 to fdcan2 for PB0/PB1 pins on STM32G0B1
- Update pinctrl references to fdcan2_rx_pb0 and fdcan2_tx_pb1
- Update zephyr,canbus reference to fdcan2
2025-12-08 11:50:32 +01:00
Eduard Iten d58a18bd4b Remove west workspace configuration files
- Remove west.yml and .west/config that interfered with existing workspace
- Project should work in existing Zephyr workspace without these files
2025-12-08 11:40:54 +01:00
Eduard Iten 32e92e732d Fix board.yml format for Zephyr 4.2.0
- Update board.yml to new Zephyr 4.2 format with 'board:' root key
- Add CONFIG_BOARD_EWS=y to defconfig
- Remove west workspace files (not needed in git)
2025-12-08 11:37:14 +01:00
Eduard Iten 9fd882889f Rename board from ews_board to ews and fix board discovery
- Rename board directory: ews_board -> ews
- Rename board files: ews_board.dts -> ews.dts, ews_board_defconfig -> ews_defconfig
- Update board identifier and compatible strings
- Add board.cmake for runner configuration
- Set BOARD_ROOT in CMakeLists.txt to enable custom board discovery
- Update all documentation with new board name: west build -b ews
2025-12-08 11:32:22 +01:00
Eduard Iten 3d328fb7a2 Add initial CAN FD CDC composite firmware
- Custom board definition for STM32G0B1KBU6 (ews_board)
- Zephyr-based firmware with modular architecture
- USB composite device: gs_usb CAN FD + CDC ACM interfaces
- PFET control via CDC text commands (PA8, PB2)
- Status LED on PB4, CAN FD on PB0/PB1
- No external crystal - uses HSI with USB clock recovery
- Ready for build testing with: west build -b ews_board
2025-12-08 11:27:15 +01:00