쓸일이 생기지 않길..

 

[링크 : https://github.com/rscada/libmodbus]

[링크 : https://hpoption.tistory.com/893]

'프로그램 사용 > libmodbus' 카테고리의 다른 글

libmodbus 예제 프로그램  (0) 2022.05.04
libmodbus tcp 예제  (0) 2022.05.04
libmodbus  (0) 2022.05.03
modbus tcp 테스트 툴  (0) 2022.05.03
modbus 프로토콜  (0) 2015.09.16
Posted by 구차니

ssh를 통해 원격명령어 실행하려는데 watch의 경우 실행이 되지 않아 찾아보니

-t 옵션을 주어 pseudo-tty 할당하도록 하면 실행이 된다.

 

ssh -t

[링크 : https://stackoverflow.com/questions/47936491/using-watch-with-ssh]

Posted by 구차니

호스트의 키가 변경되면 ssh 로그인시 경고를 날리는데

-y 같이 해당 옵션을 무조건 yes로 무시하는게 없나 찾아보는 중

$ ssh 192.168.53.144
The authenticity of host '192.168.53.144 (192.168.53.144)' can't be established.
ECDSA key fingerprint is SHA256:
Are you sure you want to continue connecting (yes/no)?

 

개인적으로는 옵션으로 처리가능한게 깔끔해서 좋음.

$ ssh 192.168.53.144 -o StrictHostKeyChecking=no
Warning: Permanently added '192.168.53.144' (ECDSA) to the list of known hosts.
pi@192.168.53.144's password:

[링크 : https://info-lab.tistory.com/254]

Posted by 구차니
프로그램 사용/kinect2022. 4. 23. 21:32

kinect for window 중고로 구매예정이라

라즈배리 파이나 라눅스애서 사용이 가능한지 검색중

 

[링크 : http://openkinect.org/]

[링크 : https://github.com/OpenKinect/libfreenect]

[링크 : https://m.blog.naver.com/sharonlog/12020745]

 

 

'프로그램 사용 > kinect' 카테고리의 다른 글

kinect + rpi + ros = slam  (0) 2022.04.27
azure kinect  (0) 2022.04.27
kinect 360  (0) 2022.04.27
kinect for windows on ubuntu  (0) 2022.04.26
kinect for window 도착 그리고 윈도우10에서 시도  (0) 2022.04.26
Posted by 구차니

 

ffmpeg -framerate 30 -i Image%08d.jpg -crf 23 Output.mp4

[링크 : https://stackoverflow.com/questions/3002601/converting-avi-frames-to-jpgs-on-linux]

 

ffmpeg -i in.avi -vsync cfr -r 1 -f image2 'img-%03d.jpeg'

[링크 : https://ffmpeg.org/ffmpeg-formats.html#Examples-8]

Posted by 구차니

아.. 설정은 가능하구나.

 

$ sudo vim /etc/sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

[링크 : https://techglimpse.com/allow-sftp-disallow-ssh-ubuntu/]

'프로그램 사용 > ssh scp sftp' 카테고리의 다른 글

ssh 슈도 터미널 실행  (0) 2022.04.25
ssh Are you sure you want to continue connecting (yes/no)?  (0) 2022.04.25
ssh 압축전송하기  (0) 2021.12.14
ssh 원격 명령어 실행  (0) 2021.09.29
reverse ssh  (0) 2021.01.03
Posted by 구차니

윈도우용 라벨링 프로그램 찾다가 발견

[링크 : https://github.com/developer0hye/Yolo_Label]

'프로그램 사용 > yolo_tensorflow' 카테고리의 다른 글

tensorflow keras dataset  (0) 2024.01.02
tensorflow lite / mnist 학습  (0) 2024.01.02
tflite bazel rpi3b+  (0) 2022.01.27
bazel cross compile  (0) 2022.01.27
bazel clean  (0) 2021.10.19
Posted by 구차니
프로그램 사용/wayland2022. 3. 18. 11:35

해당 명령을 입력한 콘솔로 출력된다. (시리얼, ssh 에서 각각 해 봄)

 

export WAYLAND_DEBUG=1

[링크 : https://wiki.st.com/stm32mpu/wiki/How_to_debug_Weston]

'프로그램 사용 > wayland' 카테고리의 다른 글

libwayland  (0) 2022.06.27
weston desktop-shell output destory  (0) 2022.06.08
weston drm atomic  (0) 2022.03.17
wayvnc 실행 실패  (0) 2022.02.17
wayland-scanner  (0) 2022.02.16
Posted by 구차니
프로그램 사용/wayland2022. 3. 17. 16:39

테스트 중 아래와 같은 에러가 보여서 atomic이 먼가 찾아보는데..

[11:49:06.216] atomic: couldn't commit new state: Invalid argument
[11:49:06.217] repaint-flush failed: Invalid argument

 

말그대로.. 데이터의 atomic이 깨졌다는 건가..

At the other end there's struct drm_plane, representing a scanout engine that reads pixel data from memory represented by a struct drm_framebuffer and provides it to the display hardware.

[링크 : https://lwn.net/Articles/653071/]

 

backend-drm/kms.c 에서 해당 에러를 출력한다.

'프로그램 사용 > wayland' 카테고리의 다른 글

weston desktop-shell output destory  (0) 2022.06.08
weston debug message  (0) 2022.03.18
wayvnc 실행 실패  (0) 2022.02.17
wayland-scanner  (0) 2022.02.16
wayland wl_fixed_t 변수  (0) 2022.02.07
Posted by 구차니
프로그램 사용/gcc2022. 3. 17. 12:05

weston 소스를 보는데 희한한(?) 문자열 선언이 보여서 확인

static const char * const connector_type_names[] = {
[DRM_MODE_CONNECTOR_Unknown]     = "Unknown",
[DRM_MODE_CONNECTOR_VGA]         = "VGA",
[DRM_MODE_CONNECTOR_DVII]        = "DVI-I",
[DRM_MODE_CONNECTOR_DVID]        = "DVI-D",
[DRM_MODE_CONNECTOR_DVIA]        = "DVI-A",
[DRM_MODE_CONNECTOR_Composite]   = "Composite",
[DRM_MODE_CONNECTOR_SVIDEO]      = "SVIDEO",
[DRM_MODE_CONNECTOR_LVDS]        = "LVDS",
[DRM_MODE_CONNECTOR_Component]   = "Component",
[DRM_MODE_CONNECTOR_9PinDIN]     = "DIN",
[DRM_MODE_CONNECTOR_DisplayPort] = "DP",
[DRM_MODE_CONNECTOR_HDMIA]       = "HDMI-A",
[DRM_MODE_CONNECTOR_HDMIB]       = "HDMI-B",
[DRM_MODE_CONNECTOR_TV]          = "TV",
[DRM_MODE_CONNECTOR_eDP]         = "eDP",
[DRM_MODE_CONNECTOR_VIRTUAL]     = "Virtual",
[DRM_MODE_CONNECTOR_DSI]         = "DSI",
[DRM_MODE_CONNECTOR_DPI]         = "DPI",
};

 

느낌은 알겠는데.. 도대체 어디서 정의된 문법이냐...

$ cat str.c
#include <stdio.h>

static const char * const connector_type_names[] = {
        [0]     = "Unknown",
        [1]         = "VGA",
        [2]        = "DVI-I",
        [3]        = "DVI-D",
        [4]        = "DVI-A",
        [5]   = "Composite",
        [6]      = "SVIDEO",
        [7]        = "LVDS",
        [8]   = "Component",
        [9]     = "DIN",
        [10] = "DP",
        [11]       = "HDMI-A",
        [12]       = "HDMI-B",
        [13]          = "TV",
        [14]         = "eDP",
        [15]     = "Virtual",
        [16]         = "DSI",
        [17]         = "DPI",
};

void main()
{
        for(int i = 0; i < 10; i++)
                printf("%s\n",connector_type_names[i]);
}

$ gcc str.c
$ ./a.out
Unknown
VGA
DVI-I
DVI-D
DVI-A
Composite
SVIDEO
LVDS
Component
DIN

 

 

$ cat str.c
#include <stdio.h>

static const char * const connector_type_names[] = {
        [2]     = "Unknown",
        [1]         = "VGA",
        [0]        = "DVI-I",
        [3]        = "DVI-D",
        [4]        = "DVI-A",
        [5]   = "Composite",
        [6]      = "SVIDEO",
        [7]        = "LVDS",
        [8]   = "Component",
        [9]     = "DIN",
        [10] = "DP",
        [11]       = "HDMI-A",
        [12]       = "HDMI-B",
        [13]          = "TV",
        [14]         = "eDP",
        [15]     = "Virtual",
        [16]         = "DSI",
        [17]         = "DPI",
};

void main()
{
        for(int i = 0; i < 10; i++)
                printf("%s\n",connector_type_names[i]);
}

$ gcc str.c
$ ./a.out
DVI-I
VGA
Unknown
DVI-D
DVI-A
Composite
SVIDEO
LVDS
Component
DIN

 

 

+

ISO C99, GNU C90 에서 지원하는 듯.

In ISO C99 you can give the elements in any order, specifying the array indices or structure field names they apply to, and GNU C allows this as an extension in C90 mode as well. This extension is not implemented in GNU C++.
To specify an array index, write ‘[index] =’ before the element value. For example,

int a[6] = { [4] = 29, [2] = 15 };

[링크 : https://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html]

 

$ gcc -std=c89 str.c
str.c: In function ‘main’:
str.c:26:2: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
  for(int i = 0; i < 10; i++)
  ^~~
str.c:26:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code

$ gcc -std=c90 str.c
str.c: In function ‘main’:
str.c:26:2: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
  for(int i = 0; i < 10; i++)
  ^~~
str.c:26:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code

$ gcc -std=c99 str.c

'프로그램 사용 > gcc' 카테고리의 다른 글

gcc fstack-protector-strong  (0) 2022.12.06
gcc vectorization 실패  (0) 2022.06.02
static link  (0) 2022.02.07
구조체 타입과 변수명은 구분된다?  (0) 2021.11.18
gcc unsigned to signed upcast 테스트  (0) 2021.07.08
Posted by 구차니