Tcc_ipc_micom 생성되지 않음

안녕하세요, D3-G 보드에서 CPU간 IPC 통신 테스트를 진행하고자 하였습니다.

TOPST에서 제공된 Ubuntu 이미지 (D3G-ubuntu-22.04-topst-gnome_desktop-v1.2.0-r01) 를 구웠고,CAN 송신을 IPC_Example.py로 시도할 때 /dev/tcc_ipc_micom 가 생성되어 있지 않아 진행이 어려운 상태입니다.

버전 차이인가 싶어 제공된 강의 문서를 바탕으로 다른 OS 이미지( D3G-ubuntu-22.04-topst-weston_desktop-v1.0.0) 구워봤으나 같은 문제가 발생하였습니다.
해당 디바이스 파일을 어떻게 생성하는지에 대해서 여쭙고 싶습니다
감사합니다

안녕하세요, TOPST매니저입니다.
IPC_MICOM은 커널 옵션에서 활성화 후 이미지 빌드 시에 생성되게 됩니다.
커널 옵션 활성화 방법

  1. D3-G Yocto 머신 선택
  2. bitbake virtual/kernel -c menuconfig
  3. Device driver → TCC IPC Driver 활성화 → 저장 후 quit
  4. bitbake telechips-topst-image
  5. 이미지 재생성 후 굽기 or 커널 이미지만 굽기
    로 진행하시면 됩니다.
    커널 이미지만 구우실 경우 powershell에서 다음과 같이 명령어 입력하시면 됩니다.
    .\fwdn.exe --fwdn .\fwdn\fwdn.json --write {커널 이미지} --storage emmc --area user --part boot

우선 ipc가 포함된 이미지 전달드립니다.
https://topst-downloads.s3.ap-northeast-2.amazonaws.com/Education/fabless/d3g_ubuntu-22.04-gnome-edu-v1.3.0.zip 해당 링크의 이미지로 구우실 경우 바로 CAN통신 사용 가능하십니다.

감사합니다.

답변 감사드립니다, 매니저님.
올려주신 링크가 접속이 안되는데 주소 한번만 확인 부탁드리겠습니다
감사합니다

수정하여 재 업로드 하였습니다.
확인 부탁드립니다.

링크 접속 확인되었습니다.
주신 이미지로 다시 시도해보겠습니다!
감사드립니다.

1 Like

안녕하세요, 이전에 올려주신 이미지를 구우니 정상적으로 IPC 디바이스 파일이 생성되었습니다.
추가적인 질문이 있는데, 올려주신 d3g_ubuntu-22.04-gnome-edu-v1.3.0 디렉토리 안에 fwdn_r5.bat 을 실행하였음에도
R5 펌웨어가 플래시되지 않은 것 같습니다.
부팅이 되지 않습니다 (터미널 로그가 뜨지 않습니다)
serial 케이블도 잘 연결하였는데 혹시 제가 놓친 부분이 있는지 확인해시면 감사드리겠습니다
참고한 자료는 다음과 같습니다 Education/LectureNote/(텔레칩스)SDV 아키텍처 기반 자율주행 교육 자료 1일차.pdf at edu/motrex · topst-development/Education · GitHub
(fwdn은 터미널에서 실행하지는 않았습니다)

감사합니다

안녕하세요.
R5 펌웨어가 구워지지 않을 경우에는 보드가 부팅이 되지 않습니다. 제생각에는 정상적으로 설치가 된 것 같습니다. 시리얼 케이블 연결한 이미지와 터미널 환경을 열기 위한 설정 값들을 첨부해주시면 빠르게 확인 후 답변드리겠습니다.

IMG.pdf (19.4 MB)
이미지 여러장을 pdf 로 첨부드립니다

감사합니다

추가적으로, 부팅 시 로그도 첨부드립니다. 감사합니다

log.txt (7.8 KB)

R5 터미널창에서 아무 키도 입력이 안되고 있는 상황인가요?
A72에 사용한 UART 케이블과 교체하여 확인 한번 부탁드립니다.
감사합니다.

UART케이블 교체 하여 진행해보았고 포트도 다른 포트로 변경해보았으나
A72만 터미널 로그가 뜨고 R5 터미널에서는 아무 키도 입력이 되고 있지 않습니다..
보드에 문제가 있는 것일까요..?

감사합니다 -

/home/topst/fabless_education/Step0 내부의 IPC_Example.py 가 있는 디렉터리내부에서 sudo python3 IPC_Example.py snd --canID 0x101 --sndDataHex 01로 테스트 한번 진행해보시고 r5로그 확인 부탁드립니다.

IMG.pdf (3.0 MB)

IPC_Example.py 루트가 끝나지 않는 것을 보아 R5 랑 신호를 못받는 것 같습니다

보드 뒷면 이미지 사진 찍어서 첨부 부탁드립니다.

IMG.pdf (3.0 MB)
이미지 확장자가 첨부가 자꾸 안되어 pdf로 드려봅니다. 죄송합니다

R5를 사용하기 위해서는 bootmode를 snor모드로 변경해야합니다.


위 이미지와 같이 3개의 레지스터를 옮기는 작업이 필요하며 이 작업이 진행된 후에 r5 이미지 fwdn과 ipc통신이 가능합니다.

직접 납땜 작업이 어려우실 경우 저희측으로 보드를 보내주시면 작업 도와드리겠습니다.

답변 감사드립니다.

외람된 질문이지만,

혹시 해당 펌웨어(R5)가 없으면 어떤 것을 수행 할 수 없는지,

펌웨어가 없어도 다른 기능은 돌려 볼 수 있는지 여쭤보고 싶습니다. (제가 이해한 바로는 CAN 통신은 아예 불가하다고 판단되는데 맞을까요?)

CAN 통신은 R5에 올라가는 FREE RTOS를 통해 수행됩니다. A72코어에서 R5로 명령을 내리고 이를 RTOS가 CAN 포트를 통해 메시지를 던지게 됩니다.
때문에 R5 펌웨어가 존재하지 않을 경우에는 CAN 통신 사용이 불가합니다.
감사합니다.

답변 감사드립니다.
그렇다면,CAN 통신 없이 Ethernet이나 UART 통신으로 ECU ( | LED or 모터 등) 컨트롤 할 수 있는 레벨은 구현이 가능한 것일까요?
학교측에 전달 해야되는 내용이라, 간단한 질문을 드려 죄송합니다.

넵,
또한 d3에도 gpio나 spi, pwm핀등이 나와있어서 활용 가능합니다.
감사합니다.