System Configuration:
- Board: nRF54H20-DK
- SDK Version: v2.7.0
- Toolchain Version: v2.7.0
- Python Version: 3.12.7 (also tried downgrading but no success)
- Operating System: Windows 10, 64-bit
- Connection Setup: Using a C-type data cable via the J3 pin
Issue Details:
While working with the nRF54H20-DK and building/flashing using SDK v2.7.0, I encountered the following issues:
- Code Flashed:
- Code: CAN bus babbling node
- Directory: zephyr/samples/drivers/can/babbling
- Backtrace Error:
#0 0x21007a8c in ?? ()
#1 0x210079d0 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
- Python Import Error:
File "C:\Users\AgalyaGowander\AppData\Local\Programs\Python\Python312\Lib\ctypes\__init__.py", line 8, in <module> from _ctypes import Union, Structure, Array ImportError: Module use of python39.dll conflicts with this version of Python.
- I attempted to downgrade the Python version but faced the same issue.
- Debugger Output:
- Received SIGTRAP with the following:
Thread 2 received signal SIGTRAP, Trace/breakpoint trap.
0x21007a8c in ?? ()
- From the debugger:
-exec x/4xw 0xE000ED2C
0xe000ed2c: 0x00000000 0x00000001 0x51016718 0x51016718
- Instruction Access Violation (IACCVIOL):
- The debugger indicates:
IACCVIOL: Instruction Access Violation
- This suggests an attempt to execute code at an invalid or unaligned memory address.
- Terminal Output Issue:
- Unable to view printk statements in the serial monitor. Two ports are seen, but none are showing the data.
Steps Taken:
- Flashed the code successfully from zephyr/samples/drivers/can/babbling.
- Verified the hardware connection using a C-type cable via J3 pin.
- Tried downgrading Python but encountered the same import error.
- Attempted to troubleshoot using GDB debugger commands such as -exec info registers.
Questions:
- Could the Python import error (conflicting with python39.dll) be related to toolchain compatibility with Python 3.12.7?
- Is there a known issue with SDK v2.7.0 or the nRF54H20-DK causing instruction access violations (IACCVIOL)?
- Could the issue be specific to the CAN bus babbling node sample, or does it indicate a broader problem with the SDK or toolchain?
- What steps can I take to resolve the backtrace and SIGTRAP errors?
- How can I resolve the terminal output issue and get printk statements to show up correctly in the serial monitor?
Any insights, recommendations, or debugging steps would be greatly appreciated!