embeded/raspberry pi2020. 6. 17. 18:42

일단은 6V에서 9V로 올리니 모터쪽에 6V가 걸리긴 한데

문제는 두개 동시 구동하면 4V까지 떨어져서 골골골골 -_-

내가 잘못쓰고 있는건가? 방열판도 열이 장난아니고. 이걸 어떻게 해야 하려나?

 

 

 

 

핸드폰에 앱 올리고

 

일단 작동은 하는데, 조금 가지고 노니 배터리가 금세 닳네?

 

골골대길래 전압을 재보니

아까 6.3V 에서 5.7V로 왜이리 빨리 딿아 -ㅁ-?

 

전진 + 우측 눌러보니 5.7V가 4.0V로 전압강하

이러니 골골대지 하...

Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 6. 10. 20:06

무거워서 못 움직임 ㅠㅠ

체중계 올려보니 무게는 안나오지만 체감으로는 500~600g 이상 될것 같은데..

이전에도 Ni-Cd 배터리 1.2V * 5로 작동하던 녀석이라 그런건지

아니면 모터 드라이버 구매한게 전류나 전압강하가 심한건지 힘이 부족해서 구동을 못한다.

 

 

라즈베리 2B + 무선랜 + 보조 배터리 + 1.5V * 4개 + 안드로이드 앱 해서 일단은 종료..

 

소스는 아래 공개.

회로도도 조만간 정리해서 올려야 할 듯.

[링크 : https://github.com/minimonk82/android_rpi_rc]

[링크 : https://github.com/minimonk82/android_rpi_rc]

 

+

전압 강하가 좀 심하다고 그러네.. 다른 보드를 찾아봐야 하나?

대략 2V 정도 강하한다고 한다.

 

[링크 : https://blog.naver.com/chandong83/221309861855]

[링크 : https://blog.naver.com/specialist0/220702544887]

Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 24. 14:07

raspivid 와 몇가지 유틸리티 이용해서 스트리밍 하고

안드로이드에서 h264 스트림을 디코딩해서 출력해주는 녀석.

이걸 이용하면 내가 원하는걸 빨리 만들수 있을듯?

 

[링크 : http://frozen.ca/streaming-raw-h-264-from-a-raspberry-pi/]

[링크 : http://frozen.ca/rpi-camera-viewer-for-android/]

 

[링크 : https://play.google.com/store/apps/details?id=ca.frozen.rpicameraviewer]

Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 16. 10:00

ht_capab 에서 HT40으로 되어있어서 에러가 나던데

일단은 conf 파일 예제에 있던 대로 HT40- 으로 하니 문제없이 작동하긴 한다.

ht_capab=[HT40-][SHORT-GI-20][SHORT-GI-40]

[링크 : https://w1.fi/cgit/hostap/plain/hostapd/hostapd.conf]

 

로그를 분석해보니 HT40이 문제가 아니었군

 5월 16 09:46:44 raspberrypi kernel: WARN::dwc_otg_hcd_urb_dequeue:639: Timed out waiting for FSM NP transfer to complete on 0
 5월 16 09:46:45 raspberrypi kernel: IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
 5월 16 09:46:45 raspberrypi hostapd[1455]: Driver does not support configured HT capability [DSSS_CCK-40]
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: interface state UNINITIALIZED->DISABLED
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: AP-DISABLED
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: Unable to setup interface.
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: interface state DISABLED->DISABLED
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: AP-DISABLED
 5월 16 09:46:45 raspberrypi hostapd[1455]: wlan0: CTRL-EVENT-TERMINATING
 5월 16 09:46:45 raspberrypi hostapd[1455]: hostapd_free_hapd_data: Interface wlan0 wasn't started
 5월 16 09:46:45 raspberrypi hostapd[1455]: nl80211: deinit ifname=wlan0 disabled_11b_rates=0
 5월 16 09:46:45 raspberrypi kernel: WARN::dwc_otg_hcd_urb_dequeue:639: Timed out waiting for FSM NP transfer to complete on 7
 5월 16 09:46:45 raspberrypi systemd[1]: hostapd.service: Control process exited, code=exited, status=1/FAILURE

 

iwlist 명령을 통해서 capability를 볼 수 있는 듯

$ iw list
Wiphy phy0
        max # scan SSIDs: 4
        max scan IEs length: 2257 bytes
        max # sched scan SSIDs: 0
        max # match sets: 0
        max # scan plans: 1
        max scan plan interval: -1
        max scan plan iterations: 0
        Retry short long limit: 2
        Coverage class: 0 (up to 0m)
        Device supports RSN-IBSS.
        Supported Ciphers:
                * WEP40 (00-0f-ac:1)
                * WEP104 (00-0f-ac:5)
                * TKIP (00-0f-ac:2)
                * CCMP-128 (00-0f-ac:4)
                * CCMP-256 (00-0f-ac:10)
                * GCMP-128 (00-0f-ac:8)
                * GCMP-256 (00-0f-ac:9)
        Available Antennas: TX 0 RX 0
        Supported interface modes:
                 * IBSS
                 * managed
                 * AP
                 * AP/VLAN
                 * monitor
                 * mesh point
        Band 1:
                Capabilities: 0x17e
                        HT20/HT40
                        SM Power Save disabled
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        RX STBC 1-stream
                        Max AMSDU length: 3839 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 32767 bytes (exponent: 0x002)
                Minimum RX AMPDU time spacing: 2 usec (0x04)
                HT TX/RX MCS rate indexes supported: 0-7, 32
                Bitrates (non-HT):
                        * 1.0 Mbps
                        * 2.0 Mbps (short preamble supported)
                        * 5.5 Mbps (short preamble supported)
                        * 11.0 Mbps (short preamble supported)
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
                Frequencies:
                        * 2412 MHz [1] (20.0 dBm)
                        * 2417 MHz [2] (20.0 dBm)
                        * 2422 MHz [3] (20.0 dBm)
                        * 2427 MHz [4] (20.0 dBm)
                        * 2432 MHz [5] (20.0 dBm)
                        * 2437 MHz [6] (20.0 dBm)
                        * 2442 MHz [7] (20.0 dBm)
                        * 2447 MHz [8] (20.0 dBm)
                        * 2452 MHz [9] (20.0 dBm)
                        * 2457 MHz [10] (20.0 dBm)
                        * 2462 MHz [11] (20.0 dBm)
                        * 2467 MHz [12] (20.0 dBm) (no IR)
                        * 2472 MHz [13] (20.0 dBm) (no IR)
                        * 2484 MHz [14] (20.0 dBm) (no IR)
        Supported commands:
                 * new_interface
                 * set_interface
                 * new_key
                 * start_ap
                 * new_station
                 * new_mpath
                 * set_mesh_config
                 * set_bss
                 * authenticate
                 * associate
                 * deauthenticate
                 * disassociate
                 * join_ibss
                 * join_mesh
                 * set_tx_bitrate_mask
                 * frame
                 * frame_wait_cancel
                 * set_wiphy_netns
                 * set_channel
                 * set_wds_peer
                 * probe_client
                 * set_noack_map
                 * register_beacons
                 * start_p2p_device
                 * set_mcast_rate
                 * connect
                 * disconnect
                 * set_qos_map
                 * set_multicast_to_unicast
        Supported TX frame types:
                 * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        Supported RX frame types:
                 * IBSS: 0x40 0xb0 0xc0 0xd0
                 * managed: 0x40 0xd0
                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * mesh point: 0xb0 0xc0 0xd0
                 * P2P-client: 0x40 0xd0
                 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * P2P-device: 0x40 0xd0
        software interface modes (can always be added):
                 * AP/VLAN
                 * monitor
        valid interface combinations:
                 * #{ AP, mesh point } <= 8,
                   total <= 8, #channels <= 1
        HT Capability overrides:
                 * MCS: ff ff ff ff ff ff ff ff ff ff
                 * maximum A-MSDU length
                 * supported channel width
                 * short GI for 40 MHz
                 * max A-MPDU length exponent
                 * min MPDU start spacing
        Device supports TX status socket option.
        Device supports HT-IBSS.
        Device supports SAE with AUTHENTICATE command
        Device supports low priority scan.
        Device supports scan flush.
        Device supports AP scan.
        Device supports per-vif TX power setting
        Driver supports full state transitions for AP/GO clients
        Driver supports a userspace MPM
        Device supports configuring vdev MAC-addr on create.
        Supported extended features:
                * [ RRM ]: RRM
                * [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
                * [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
                * [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211

[링크 : https://unix.stackexchange.com/questions/405282/finding-capabilities-of-wifi-driver-device]

'embeded > raspberry pi' 카테고리의 다른 글

라즈베리 RC는 일단 구동에는 실패  (0) 2020.06.10
rpi / android h264 streaming  (0) 2020.05.24
hostapd 802.11n 설정하기 시도중  (0) 2020.05.16
RC카 node.js was 제작 1차 완료  (0) 2020.05.14
node.js raspi-pwm  (0) 2020.05.14
node.js onoff  (0) 2020.05.13
Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 14. 19:18

일단은 대충 예전 기억 되살려서 대충대충 만들었음

 

 

 

무선랜 카드가 하나뿐인걸 라즈베리에 해놔서 PC에서 테스트할 방법이 현재는 없어서

다이소에서 하나 사던가 해야 할 듯 -_ㅠ

 

ip:3000/api/f

ip:3000/api/r

ip:3000/api/s

 

ip:3000/api/wl

ip:3000/api/ws

ip:3000/api/wr

 

으로 명령을 주도록 했고 PWM은 100%로 설정함

코드 복사하기에는 여러개라 귀찮으니 github를 이용하는 걸로 결정

 

이제.. 안드로이드 앱 만들면 되는건가...

 

[링크 : https://github.com/minimonk82/rpi_nodejs_rc/]

'embeded > raspberry pi' 카테고리의 다른 글

rpi / android h264 streaming  (0) 2020.05.24
hostapd 802.11n 설정하기 시도중  (0) 2020.05.16
RC카 node.js was 제작 1차 완료  (0) 2020.05.14
node.js raspi-pwm  (0) 2020.05.14
node.js onoff  (0) 2020.05.13
라즈베리 파이 무선공유기 만들기(비밀번호 없이)  (0) 2020.05.13
Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 14. 10:20

일단 코드가 작동하는건 확인

얘는 핀헤더 번호 - 핀 번호 식으로 붙게 되어있어서 오히려 더 편하다고 해야하려나?

 

const raspi = require('raspi');
const pwm = require('raspi-pwm');
const Gpio = require('onoff').Gpio;

raspi.init(() => {
  const led = new pwm.PWM('P1-33');
  led.write(0.3); // 50% Duty Cycle, aka half brightness
});

var in1 = new Gpio(5, 'out')
var in2 = new Gpio(6, 'out')

in1.writeSync(1)
in2.writeSync(0)

 

[링크 : https://www.npmjs.com/package/raspi-pwm]

'embeded > raspberry pi' 카테고리의 다른 글

hostapd 802.11n 설정하기 시도중  (0) 2020.05.16
RC카 node.js was 제작 1차 완료  (0) 2020.05.14
node.js raspi-pwm  (0) 2020.05.14
node.js onoff  (0) 2020.05.13
라즈베리 파이 무선공유기 만들기(비밀번호 없이)  (0) 2020.05.13
dhcpcd 설정  (0) 2020.05.13
Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 13. 21:50

wiringpi와는 다르게 BCM 쪽의 번호를 써야 하는 차이가 있다.

그리고 onoff 모듈은 pwm은 지원하지 않아서 다른걸 써야 할 듯..

 

아래는 gpio 유틸리티로 설정하는 부분 이고 아래의 포트는

// 초기설정
sudo gpio mode 21 out
sudo gpio mode 22 out
sudo gpio mode 23 pwm

 

node.js onoff 에서는 다음과 같이 다른 번호를 사용하게 된다.

const Gpio = require('onoff').Gpio;

var in1 = new Gpio(5, 'out')
var in2 = new Gpio(6, 'out')
var in0 = new Gpio(13, 'out')

in1.writeSync(1)
in2.writeSync(0)
in0.writeSync(1)

 

 

[링크 : https://www.npmjs.com/package/onoff]

 

 

PWM 지원하는 녀석 이라는데 코드를 막상보면

PWM을 하드웨어로 구현하는게 아니라 타이머를 이용해서 소프트웨어 PWM으로 구현한 듯

const Gpio = require('pigpio').Gpio;
 
const led = new Gpio(17, {mode: Gpio.OUTPUT});
 
let dutyCycle = 0;
 
setInterval(() => {
  led.pwmWrite(dutyCycle);
 
  dutyCycle += 5;
  if (dutyCycle > 255) {
    dutyCycle = 0;
  }
}, 20);


[링크 : https://github.com/fivdi/pigpio]

'embeded > raspberry pi' 카테고리의 다른 글

RC카 node.js was 제작 1차 완료  (0) 2020.05.14
node.js raspi-pwm  (0) 2020.05.14
node.js onoff  (0) 2020.05.13
라즈베리 파이 무선공유기 만들기(비밀번호 없이)  (0) 2020.05.13
dhcpcd 설정  (0) 2020.05.13
라즈베리 파이 iwlist, iwconfig 로 무선접속하기  (0) 2020.05.09
Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 13. 20:23

패키지 설치

$ sudo apt-get install hostapd dnsmasq

 

hostapd 설정

wpa_로 시작하는 것을 주석풀면 WPA-PSK로 암호 '1234567890' 을 사용 AP를 구동한다.

$ cat /etc/hostapd/hostapd.conf
interface=wlan0
hw_mode=g
channel=7
wmm_enabled=0
ignore_broadcast_ssid=0
ssid=NETWORK

macaddr_acl=0
auth_algs=1
#wpa=2
#wpa_passphrase=1234567890
#wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP
#rsn_pairwise=CCMP

 

dnsmasq 설정

dhcpcd 필요한줄 알았는데 dhcpcd 없이 바로 구동된다.

$ cat /etc/dnsmasq.conf

interface=wlan0 

  dhcp-range=192.168.0.11,192.168.0.30,255.255.255.0,24h

 

+

테스트용으로 nginx 설치하고, 핸드폰으로 해당 AP에 접속하고

크롬을 통해 192.168.0.10 으로 접속하니 ngnix 페이지가 정상적으로 뜬다.

$ ifconfig wlan0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.10  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::a73b:b28c:e97:7810  prefixlen 64  scopeid 0x20<link>
        ether 4c:e6:76:90:50:d5  txqueuelen 1000  (Ethernet)
        RX packets 1014  bytes 151616 (148.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 931  bytes 152637 (149.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 13. 18:51

결론만 말하자면

dhcpcd 만으로는 무선 공유기 처럼 만드는건 실패.

dnsmasq가 있어야 한다.

 

+

테스트 해보니 dhcpcd 없이 hostapd + dnsmasq 만으로 ap가 만들어진다.

 

--

 

dhcpcd 패키지 설치해주고

아래의 설정내용을 넣어주면 끝.

 

$ sudo apt-cache search dhcpcd
dhcpcd - DHCP client for automatically configuring IPv4 networking
$ sudo vi /etc/dhcpcd.conf
interface wlan0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8

[링크 : https://wiki.archlinux.org/index.php/dhcpcd]

 

+

기본 설정시 DHCP 잡는 임의 영역 IP인 169.254.71.x로 잡히는데

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 169.254.71.187  netmask 255.255.0.0  broadcast 169.254.255.255

 

dhcpcd.conf의 static_ip_address를 169.254.71.0/24로 설정하니

아래와 같이 carrier lost 뜨면서 되지 않는다.

아마 DHCP 잡는 reserved ip 영역이라 그런게 아닐까 추측됨.

$ systemctl status dhcpcd
● dhcpcd.service - dhcpcd on all interfaces
   Loaded: loaded (/lib/systemd/system/dhcpcd.service; enabled; vendor preset: enabled)
   Active: failed (Result: signal) since Wed 2020-05-13 18:23:15 KST; 5min ago
  Process: 1694 ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -b (code=exited, status=0/SUCCESS)
 Main PID: 1696 (code=killed, signal=SEGV)

 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: carrier acquired
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: IAID 76:90:50:d5
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: adding address fe80::a73b:b28c:e97:7810
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: using static address 169.254.71.187/24
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: adding route to 169.254.71.0/24
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: carrier lost
 5월 13 18:23:14 raspberrypi dhcpcd[1696]: wlan0: deleting address fe80::a73b:b28c:e97:7810
 5월 13 18:23:15 raspberrypi dhcpcd[1696]: wlan0: deleting route to 169.254.71.0/24
 5월 13 18:23:15 raspberrypi systemd[1]: dhcpcd.service: Main process exited, code=killed, status=11/SEGV
 5월 13 18:23:15 raspberrypi systemd[1]: dhcpcd.service: Failed with result 'signal'.

 

$ dmesg
[  542.390642] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[  542.423897] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[  542.451050] WARN::dwc_otg_hcd_urb_dequeue:639: Timed out waiting for FSM NP transfer to complete on 0
[  543.220943] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[  543.922372] WARN::dwc_otg_hcd_urb_dequeue:639: Timed out waiting for FSM NP transfer to complete on 3

 

+

ip 주소를 가져오는 중에서 넘어가질 않네..

인증이 문제인가?

Posted by 구차니

댓글을 달아 주세요

embeded/raspberry pi2020. 5. 9. 22:53

라즈베리 파이 2B / debian 10.3 이미지 사용

buffalo WLI-UC-GNM 802.11n 어댑터 사용

 

 

무선랜 스캔

$ iwlist wlan0 scan

 

무선랜 설정 (무선랜 이름이 iptime 일 경우)

$ sudo iwconfig wlan0 essid "iptime"

 

WPA_PSK 키 설정 (iptime 공유기의 무선랜 암호가 password일 경우)

(단, root 계정으로 하지 않으면 wpa_passphrase 실행 결과를 복사해서 sudo로 conf 파일에 넣어야 함)

wpa_passphrase "iptime" password > /etc/wpa_supplicant/wpa_supplicant.conf

 

무선랜 접속

아래의 명령어가 실행중인 동안에만 유지가 된다.

sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

 

[링크 : https://lhjin.tistory.com/entry/리눅스에서-무선랜WiFi-사용방법]

[링크 : http://webterror.net/?p=783]

 

 

그럼 이제 이걸.. 기본 데몬으로 가능한 방법을 찾으면 되려나?

 

+

wpa_supllicant.conf 파일에 내용이 존재하면 자동으로 그걸 이용해서 접속하도록 되어있다.

reboot 이후 정상적으로 접속되는 것을 확인함

 

[링크 : https://weworkweplay.com/play/automatically-connect-a-raspberry-pi-to-a-wifi-network/]

Posted by 구차니

댓글을 달아 주세요