전파협회 dx과정 1팀입니다

안녕하세요! 운전자를 위한 사각지대 감지 및 알림 서비스를 주제로 프로젝트를 진행한 전파협회 DX 과정 1팀입니다.

추가로 몇가지 질문 사항 및 요청드릴 부분이 있습니다.

  1. D3 보드에서 하드웨어 인코딩/디코딩 하는것이 가능하다고 알고 있으나, 구체적으로 어떻게 해야하는지에 대한 정보가 없습니다. 이와 관련하여 도움을 주시면 감사하겠습니다.
  2. CAN 통신을 하기 위한 모듈 및 AI-P 보드 지급이 언제쯤 가능한지 알고 싶습니다.
    그리고 CAN 모듈이 최대 몇 개까지 지급이 가능한지 궁금합니다.
  3. 카메라 포트가 2레인 하나, 4레인 하나로 알고 있는데 그렇다면 총 두개의 카메라까지 사용이 가능한건가요? 혹시 사용 가능한 카메라 모듈도 지급이 가능할까요… 어렵다면 어떤 모듈을 사용할 수 있는지 정보를 알고 싶습니다.

태그가 활성화 되어 있지 않아 부득이하게 태그를 선택하지 못하고 질문하게 되었습니다.
바쁘신 와중에도 먼길 오셔서 이것저것 알려주시고 좋은 조언들 해주셔서 감사합니다.

안녕하세요. 모우진입니다~

  1. D3 보드에서의 Hardware En/decoding은 동영상을 말하는 거죠?
  2. CAN transiver랑 AI-P 보드는 열심히 준비하고 있습니다.
  3. D3-P보드의 Camera를 위한 MIPI CSI는 2개가 있습니다.
  • 다만, MIPI CSI 4Ch용 포트는 전용 Serdes ( TOPST 에서 MIPI Expansion Board)가 있어야만 합니다.
  • 카메라는 붙이는 데, 시간이 걸릴 것으로 예상되어 D3-P에서 바로 사용 가능한 카메라를 같이 보내드릴께요~

태그는 현재 관리자 등급만 넣을 수 있나봅니다. ㅜㅜ
설정을 바꿔 볼께요~ 알려줘서 고마워요~

답변 감사합니다!

  1. 넵 맞습니다. 동영상 처리 시, D3 보드에서의 Hardware En/decoding 가능 여부가 궁금합니다.

안녕하세요 제공 받은 ffc 케이블 can 트랜시버 사용에 관해 여쭤봅니다.

  1. 제공 받은 vp230 트랜시버와 보유하고 있는 sn65hvd230 (mcp2515+TJA1050) 트랜시버(호환 여부 모름) 모두 dts 노드에 해당 내용이 없어 작성해보고자합니다. 혹시 둘이 호환이 다를지는 일단 테스트해보겠습니다 앞서 궁금한건

  2. 전체 dtb파일로 컴파일 되는 dts에 작성하고자하는데 spidev 자리에 이 트랜시버의 노드를 작성하면 될까요?

~/topst/build-main/tmp/deploy/images/tcc8050-main$
tcc8050-linux-topst-d3-pre-v0.1.dtb

제공받은 vp230 can 트랜시버를 위한 소스코드나, 모듈이 아래에 포함되어있는지도 여쭤봅니다. ffc로 연결하는 vp230 트랜시버의 활성화 방법이 기존에 spi핀과 연결하는 방법과 어떻게 다른지 몰라, dts 작성에 앞서 질문드립니다. 혹시 다른 활성화 방법이 있다면 답변 주시면 감사하겠습니다.

iamyeju@DESKTOP-NGNQNNT:~/topst/build-main/tmp/work/tcc8050_main-telechips-linux/linux-telechips/5.4.159-r0/git/drivers/net/can$ ls
Kconfig c_can flexcan.c janz-ican3.c m_can peak_canfd slcan.c sun4i_can.c vcan.c
Makefile cc770 grcan.c kvaser_pciefd.c mscan rcar softing ti_hecc.c vxcan.c
at91_can.c dev ifi_canfd led.c pch_can.c sja1000 spi usb xilinx_can.c
iamyeju@DESKTOP-NGNQNNT:~/topst/build-main/tmp/work/tcc8050_main-telechips-linux/linux-telechips/5.4.159-r0/git/drivers/net/can/spi$ ls
Kconfig Makefile hi311x.c mcp251x.c

위에 mcp251X 코드를 쓰는 건가요? 해당 코드가 있는지 모르겠습니다

  1. 아래는 menuconfig를 통해 최대한 얻은 모듈인데, 아래에 포함되어있는지도 확인해주시면 감사하겠습니다.

root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/drivers/net/can# ls
cc770 flexcan.ko kvaser_pciefd.ko sja1000 spi vxcan.ko
c_can grcan.ko m_can slcan.ko usb xilinx_can.ko
dev ifi_canfd peak_canfd softing vcan.ko
root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/net/can# ls
can-bcm.ko can-gw.ko can.ko can-raw.ko
root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/drivers/net/can/spi#
hi311x.ko mcp251x.ko

일단 dts에 mcp2515 노드를 작성하여 spi 핀에 직접 연결할 수 있는 sn65hvd230 (mcp2515+TJA1050) can 모듈로 장치파일과 can 인터페이스 활성화는 하였습니다.

[ 0.067723] pl08xdmac 16687000.udma: initialized 2 virtual memcpy channels
[ 85.735290] mcp251x spi0.0: CANCTRL 0x87
[ 85.736005] mcp251x spi0.0 can0: MCP2515 successfully initialized.
root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/drivers/net/can/spi#
root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/drivers/net/can/spi# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether da:3e:be:6a:92:4d brd ff:ff:ff:ff:ff:ff
3: sit0@NONE: mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/sit 0.0.0.0 brd 0.0.0.0
4: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
link/can
root@telechips-tcc8050-main:/lib/modules/5.4.159-tcc/kernel/drivers/net/can/spi#

제공 받은 vp230 트랜시버는 혹시 spi 기능을 어떻게 활성화하는지 궁금합니다.. mcp2515로 잘 되면 이걸로 사용할지도 검토중입니다.

안녕하십니까 TOPST 매니저입니다.

저희가 제공드린 CAN 트랜시버(VP230 칩 기반)에 대한 가이드는 현재 별도로 제공되고 있지 않다는 점 먼저 안내드립니다. 다만, 해당 가이드는 현재 내부적으로 우선순위를 두고 작업 중에 있으며, 최대한 빠르게 정리하여 안내드릴 수 있도록 노력하겠습니다.
아울러, 기존에 사용하고 계시던 타사의 CAN 트랜시버 장비를 저희 보드에 연결하여 사용하시는 것도 가능하다고 판단되며, 해당 내용 또한 저희 테스트 항목에 포함되어 있는 사안입니다.
먼저 사용해보신 후 관련 내용을 공유해주시면, 사용 중 발생할 수 있는 문제점에 대해 저희가 확인하여 안내드릴 수 있도록 하겠습니다.
감사합니다.

안녕하세요, AI-G 보드의 NPU Toolkit 권한 요청 문의드립니다.

이메일은 yoonkyo6842@gmail.com 입니다.

추가로, 제공받은 AI-G 보드 중 하나가 MIPI CSI 포트가 20핀인데(나머지 2개 보드는 15핀)
1번핀 부터 꽂아서 사용이 가능한지도 문의드립니다.

(수정) 아래 사진 첨부드립니다. 밑에 DSI 커넥터가 15핀, 위에 CSI 커넥터는 20핀입니다.

감사합니다.

안녕하세요 보드의 전원 공급 관련하여 여쭤봅니다.

보조배터리를 이용해 D3-P, VCP-G, AI-G 보드에 전원을 공급하려고 합니다!
라즈베리파이4 두 대 이상에 동일한 보조배터리를 연결했을 때는 정상적으로 동작을 확인하였습니다.
그러나 D3-P 보드에 연결했을 때는 전원 표시 LED는 켜지지만, 부팅은 되지 않습니다.

사용한 케이블 및 배터리 사양은 다음과 같습니다.
USB 전원 충전 케이블: 5.5mm-2.1mm 잭, 70cm
보조 배터리 출력: 5V / 3A

Telechips 공식 홈페이지에서는 내경 2.1~2.5 가능하다는 것과 또는 제공한 어댑터 외에는 호환성 문제가 발생할 수 있다는 내용도 확인하였습니다.
보드에 연결가능 한 배터리 팩 사양기준이 있는지와
혹은 적합한 USB - DC5V 호환 케이블이 있다면 케이블교환으로 해결가능한지 문의드립니다. 감사합니다!

안녕하세요 TOPST 매니저입니다.
문의 주신 사항에 대해 답변 드립니다.

  1. Toolkit 관련해서 해당 메일로 권한 드렸습니다. 확인 부탁드립니다.
    https://drive.google.com/file/d/1TkccsxwH5qnMfYsRAhk740VvaWtqHEeY/view?usp=drive_link

  2. CSI 관련 문의 사항은 확인 후 빠른 시일 내에 답변 드리겠습니다.

  3. 내부적으로 USB-DC5V 케이블을 테스트한 이력이 없습니다. 혹시 보조배터리가 아닌 전원 어댑터를 통해 연결하였을때에도 부팅이 되지않으신지 확인 부탁드립니다. 감사합니다.

안녕하세요. TOPST 매니저입니다.
현재 제공해드린 AI-G 보드는 저희 내부 TEST용 보드로 사용되던 보드이며, 잘못 전달되었습니다.
사용이 불가한 보드이므로 교육장 내에서 대표로 한 분을 선정하여 목/금 오전 10시 중 편한 시간대에 텔레칩스로 방문하시면 교환해드리겠습니다.
또한, 방문자 선정 후 해당 메일(eadweard.kim@telechips.com)로 방문 시간대와 각 팀의 요구 사항 전달해 주시면 저희가 준비 해놓도록 하겠습니다.
감사합니다.

확인해주셔서 감사합니다.

추가로, 위 메일로 반납 품목과 요구 사항 전달해드렸습니다.
확인해주시면 감사하겠습니다.

1 Like

안녕하세요. 보내주신 AI-G, VCP-G, D3-P 보드는 모두 잘 수령하였습니다.

다만, 교환 요청드린 D3-P 보드와 함께 동봉하여 보내드린 디버깅 모듈(UART)과 전원 어댑터는 현재 수령한 구성품 중에서 확인되지 않아, D3-P 보드만 2대 수령한 상태입니다. 이에 따라, 디버깅 모듈과 전원 어댑터를 각 2개씩 추가로 보내주실 수 있을지 문의드립니다.

또한, 디버깅 모듈에서 사용하는 USB A to C 케이블이 일부 정상적으로 작동하지 않는 경우가 있었습니다. 혹시 가능하시다면 해당 케이블도 추가로 제공해주실 수 있을지 부탁드립니다.

감사합니다.

안녕하세요 TOPST입니다.
요청하신 품목 확인 후 연락드리겠습니다.
요청하신 품목 다시 한번 확인 부탁드립니다.

  • 5V 전원 어댑터 2EA
  • 디버깅 모듈 2EA
  • USB A to C 케이블 1EA

확인 후 답변 부탁드립니다.
감사합니다.

답변 주셔서 감사합니다.

5V 전원 어댑터와 디버깅 모듈은 명시하신 수량 그대로 발송해주시면 감사하겠습니다.

추가로, USB A to C 케이블은 1개 더 포함하여 총 2EA로 지급받을 수 있을까요?

넵,
USB A to C 케이블 2개 준비해놓도록 하겠습니다.
감사합니다.

안녕하세요,

준비해주신 품목들은 저희 교육 기관 담당자님이 이번주 금요일(8/8)에 직접 본사로 방문하셔서 가져가신다고 하셔서 전달드립니다!

감사합니다.

안녕하세요.

필요하신 물품들 확인하여 금요일에 전달 받으실 수 있도록 하겠습니다.

감사합니다.

안녕하세요.
D3-P 보드 omx h264 하드웨어 디코더 사용 가능 여부 관련 문의드립니다.

현재 USB-webcam(4대이상)으로 소프트웨어 디코더 이용 중인데, 다른 rtsp 송신 등의 cpu 점유율 증가로 하드웨어 디코딩 점검중입니다.

그러나, omx 디코더가 있는것이 확인되지만 omx_h264 디코더를 선택해 gst 스트리밍 실행 시 파이프라인 생성 불가 오류가 뜹니다.

  1. VPU 관련 커널 모듈 활성화를 해야하는지(+dts 수정이 필요한지)

  2. 다른 필요한 .so 파일이 있는지

  3. 혹시 다른 방법이 있는지 문의 드립니다.

    현재 omx 관련 .so 파일 검색 결과

root@telechips-tcc8050-main:~# gst-inspect-1.0 | grep omx
omx:  omxmpeg4videodec: OpenMAX MPEG4 Video Decoder
omx:  omxh264dec: OpenMAX H.264 Video Decoder
omx:  omxmpeg4videoenc: OpenMAX MPEG4 Video Encoder
omx:  omxaacenc: OpenMAX AAC Audio Encoder
omx:  omxmp3dec: OpenMAX MP3 Audio Decoder
omx:  omxmpeg2dec: OpenMAX MPEG2 Video Decoder
root@telechips-tcc8050-main:~

플러그인은 설치되어있는데 → 하드웨어 디코더를 초기화할 수 없는 에러로 보고있습니다..

GST_PLUGIN_PATH=/usr/lib/gstreamer-1.0 gst-inspect-1.0 omx
33mPlugin Details[[0m:
  [[94mName                     [[0m[[0momx[[0m
  [[94mDescription              [[0m[[0mGStreamer OpenMAX Plug-ins[[0m
  [[94mFilename                 [[0m[[0m/usr/lib/gstreamer-1.0/libgstomx.so[[0m
  [[94mVersion                  [[0m[[0m1.16.3[[0m
  [[94mLicense                  [[0m[[0mLGPL[[0m
  [[94mSource module            [[0m[[0mgst-omx[[0m
  [[94mBinary package           [[0m[[0mGStreamer OpenMAX Plug-ins[[0m
  [[94mOrigin URL               [[0m[[0mUnknown package origin[[0m

  [[32momxmpeg4videodec[[0m: [[0mOpenMAX MPEG4 Video Decoder[[0m
  [[32momxh264dec[[0m: [[0mOpenMAX H.264 Video Decoder[[0m
  [[32momxmpeg4videoenc[[0m: [[0mOpenMAX MPEG4 Video Encoder[[0m
  [[32momxaacenc[[0m: [[0mOpenMAX AAC Audio Encoder[[0m
  [[32momxmp3dec[[0m: [[0mOpenMAX MP3 Audio Decoder[[0m
  [[32momxmpeg2dec[[0m: [[0mOpenMAX MPEG2 Video Decoder[[0m

  [[33m6 features[[0m:
  [[95m+--[[0m [[94m6 elements[[0m


아래는 현재 있는 디렉토리입니다. 혹시 저 에러가 어떤게 필요한 것인지 도움주시면 감사하겠습니다.

  /usr/lib/bellagio \
  /usr/lib/omxloaders \
  /usr/lib/libomxil-bellagio* \
  /etc/xdg/gstomx.conf \
root@telechips-tcc8050-main:/usr/lib# ldd gstreamer-1.0/libgstomx.so
        linux-vdso.so.1 (0x0000007f83ea9000)
        libgstvideo-1.0.so.0 => /usr/lib/libgstvideo-1.0.so.0 (0x0000007f83d6a000)
        libgstbase-1.0.so.0 => /usr/lib/libgstbase-1.0.so.0 (0x0000007f83ce4000)
        libgstreamer-1.0.so.0 => /usr/lib/libgstreamer-1.0.so.0 (0x0000007f83b8b000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x0000007f83b1b000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x0000007f839e1000)
        libgstaudio-1.0.so.0 => /usr/lib/libgstaudio-1.0.so.0 (0x0000007f8395f000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x0000007f8394b000)
        libgstallocators-1.0.so.0 => /usr/lib/libgstallocators-1.0.so.0 (0x0000007f83936000)
        libgstgl-1.0.so.0 => /usr/lib/libgstgl-1.0.so.0 (0x0000007f838be000)
        libc.so.6 => /lib/libc.so.6 (0x0000007f83751000)
        /lib/ld-linux-aarch64.so.1 (0x0000007f83e79000)
        libm.so.6 => /lib/libm.so.6 (0x0000007f836a7000)
        liborc-0.4.so.0 => /usr/lib/liborc-0.4.so.0 (0x0000007f83616000)
        libdl.so.2 => /lib/libdl.so.2 (0x0000007f83600000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x0000007f835d0000)
        libffi.so.7 => /usr/lib/libffi.so.7 (0x0000007f835b7000)
        libpcre.so.1 => /usr/lib/libpcre.so.1 (0x0000007f83544000)
        libgsttag-1.0.so.0 => /usr/lib/libgsttag-1.0.so.0 (0x0000007f834f9000)
        libEGL.so.1 => /usr/lib/libEGL.so.1 (0x0000007f834b1000)
        libwayland-client.so.0 => /usr/lib/libwayland-client.so.0 (0x0000007f83491000)
        libwayland-egl.so.1 => /usr/lib/libwayland-egl.so.1 (0x0000007f8347f000)
        libz.so.1 => /lib/libz.so.1 (0x0000007f83458000)
        libgbm.so.1 => /usr/lib/libgbm.so.1 (0x0000007f83436000)
        libglapi.so.0 => /usr/lib/libglapi.so.0 (0x0000007f833b0000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x0000007f83376000)
        libdrm.so.2 => /usr/lib/libdrm.so.2 (0x0000007f83353000)
        libwayland-server.so.0 => /usr/lib/libwayland-server.so.0 (0x0000007f8332e000)
root@telechips-tcc8050-main:/usr/lib#

+추가

drivers/media/platform 에도 v4l2dec 소스코드는 확인되지만, v4l2의 버전보다 gstreamer 플러그인버전이 1.16.3으로 낮아 호환되지 않아 omx를 탐색하고 있었습니다. menucofig에 올라와있는 비디오 드라이버중 v4l2_core 은 있지만 omx의 것은 없는 것으로 보입니다. 소스코드를 얻을 수 있는 SDK 나 다른 오픈소스 로 레시피를 받을 수 있는 방법이 있을까요?