본문 바로가기

강좌26

[openwrt 공유기] 와이파이 접속시 로그인 또는 버튼 눌러야 인터넷 되게 만드는 띄우는 방법 (captive portal) 안녕하세요. 제가 몇 달 전에 openwrt를 지원하는 공유기를 당근마켓에서 데려왔습니다. 무려 4달 전이고, HomeAssistant 카페 saranl 님이 샤오미 공유기 mini를 4천원에 데려와서 openwrt를 올렸다는 글에, 저도 한번 시도해보고 싶어졌습니다. 그때 저는 샤오미 공유기 3를 5천원에 데려왔었고, 바로 openwrt 펌웨어를 올렸습니다. openwrt 사이트에 방법은 잘 나와있습니다. (펌웨어 다운그레이드 후에 로그인 후 보이는 토큰값 가지고 ssh 서버를 여는 방식입니다. 그 후에 x-wrt를 올려줬습니다.) https://openwrt.org/toh/xiaomi/mir3 openwrt의 장점이라면, 공유기 설정에서 많은 것을 건드릴 수가 있고, openwrt가 리눅스 기반이다 .. 2022. 7. 31.
ebyte e32-TTL-100 무선 통신 모듈 사용법 무선 센서를 개발하게 되어서 무선으로 값 전송방법을 찾다가 e32 모듈을 찾게되어서 이 모듈을 사용해보게 되었습니다. 테스트해본 결과.. 실내에서도 커버리지는 꽤 넓습니다. 건물내에 수신단을 놓고, 복도에서 송신단을 보조배터리에 연결해서 들고다녀도 수신단으로 신호가 전송됩니다. 1층올라가서도 안정적으로 신호가 전송됩니다. 1층 반정도 올라가면 신호가 약간씩 끊김이 있습니다. 실내에서는 실외보다 거리가 짧기는합니다. 탁 트인 공간에서 테스트해보면 좋은 결과가 있지 않을까 생각합니다.. 이론상으로는 약 3km이니깐요. 본격적으로 라즈베리파이에서 사용하는 방법을 알려드리겠습니다. 사용된 것 라즈베리파이3 X 2 마이크로 SD카드 32기가 X 2 E32-TTL-100 모듈 X 2 보조배터리 20000mah X .. 2022. 5. 14.
라즈베리파이3,4 시리얼 통신 활성화 방법 1. /boot/config.txt 아래에 내용 추가 sudo nano /boot/config.txt ---추가할 내용--- enable_uart=1 dtoverlay=disable-bt ---내용끝--- 저장: 컨트롤 X -> Y -> 엔터 2. 시리얼콘솔 중지 sudo nano /boot/cmdline.txt ---제거할 내용--- console=serial0,115200 ---내용 끝--- 저장: 컨트롤 X -> Y -> 엔터 3. 블루투스 중지 sudo systemctl stop hciuart 4. 재부팅 sudo reboot 5. 확인 방법 ls -l /dev 입력 내리다보면 serial0 -> ttyAMA0 으로 변경되어 있어야함 추가팁 - 시리얼 통신 속도를 9600으로 변경 sudo stt.. 2022. 5. 13.
구글 홈 미니에서 코로나 국내 확진 정보 요청하는 방법입니다. 수정내역: 21-02-10: RESTORE FROM ZIP을 IMPORT FROM ZIP으로 수정했습니다. 오타가 있었는데 제보해주셨습니다. 구글 홈에서 국내 코로나 현황에 대한 답변을 듣는 방법이 아직까지 존재하지 않는 것 같습니다. 그래서 이걸 답변을 들을 수 있게 만들면 어떨까해서 한번 개발해보게되었습니다. 구글 dialogflow를 찾아보니까 답변을 원하는대로 들을 수가 있더라고요. 바로 챗봇의 원리를 이용한 겁니다. 구글 홈의 미세미세와 비슷하다고 보면 될 것 같습니다. 현재까지는 그냥 브리핑으로 끝나지만, 추후에는 오늘, 어제, 누적 등의 명령어도 추가해볼 생각입니다. 우선 구글 Dialogflow 페이지에 접속합니다. https://dialogflow.cloud.google.com/#/get.. 2022. 2. 9.
mongo DB 사용자 계정 관리 명령어 먼저 admin 데이터베이스로 진입합니다. use admin; 새로운 관리자 계정을 추가 방법입니다. db.createUser({user: "test", pwd: "test", roles:["root"]}); => 아이디 test 패스워드 test 라는 계정을 추가합니다. 전체 유저를 확인하려면 show users; 를 입력합니다. 저의 경우에 admin과 test라는 계정을 등록해서 총 두 개의 계정이 있는 것을 확인할 수 있습니다. 계정을 삭제하려면 db.dropUser('test'); => 아이디가 test인 계정을 삭제합니다. true가 떴다면 성공적으로 없어진 것입니다. 다음은 사용자 계정 암호 변경 방법입니다. db.changeUserPassword("test", "testQQ"); => 첫 .. 2021. 11. 12.
리눅스 도커 빠르게 설치하는 명령어 curl -fsSL https://get.docker.com/ | sudo sh 완전 쉽습니다! 하나만 입력하면 바로 설치가 됩니다. 2021. 11. 12.
mongo DB 데이터 삽입, 수정, 삭제 방법 mysql에서의 테이블이 mongo DB에서는 컬렉션이라고 할 수 있고 mysql에서의 컬럼이 mongo DB에서는 필드라고 할 수 있습니다. 또한, mysql에서의 Row가 mongo DB에서는 Document 라고 할 수 있습니다. 이번 글에서는 저번 강좌에 이어서 mongo DB에서 컬렉션 생성 후 데이터를 삽입해보겠습니다. 먼저 사용할 db를 선택해야겠죠. 없는 db라면 자동으로 만들어줍니다~ test라는 db에 접속합니다. use test; 먼저 컬렉션 생성 방법은 db.createCollection('userinfo'); 를 입력하시면 됩니다. 위의 명령어를 입력하여서 userinfo라는 컬렉션을 생성을 하였습니다. 생성된 컬렉션을 확인하려면 show collections; 를 입력하세요. 생.. 2021. 11. 11.
도커를 이용한 mongo DB 설치 및 사용 방법 오늘은 도커로 mongo DB 설치와 기본적인 사용 방법에 대해서 알아보겠습니다. 윈도우 클라이언트 프로그램을 통해 접속까지 해볼 예정입니다. [테스트 환경: aws lightsail 2GB RAM, 서울 데이터센터, 우분투 20.04 LTS] mongo DB의 장점은 분산 처리가 가능하며 네트워크 장애 발생 시에도 자동으로 복구하는 기능을 가지고 있습니다. 그래서 대용량 데이터에서도 빠르게 원하는 데이터를 찾을 수 있다는 장점을 가지고 있습니다. 여태까지는 mysql만 사용해왔지만, 이번에 mongo DB도 처음으로 입문해보려고 합니다. 앞으로 파이썬과 php, 그리고 java에서 mongo DB에 접속하여서 데이터를 읽고, 쓰는 방법에 대해서도 강좌를 올려보겠습니다. php 예제로는 웹사이트와 연동하.. 2021. 11. 11.
우분투에서 nginx 웹서버 설치 및 SSL 인증서 발급받기 안녕하세요. 오늘은 우분투 서버에 웹서버를 설치하고 SSL 인증서를 발급받는 방법에 대해서 알아보겠습니다. 저의 환경은 aws lightsail 2GB램, 우분투 20.04입니다. 먼저 nginx를 설치하는 명령어는 아래와 같습니다. 1. apt install nginx http://서버ip 로 접속하면 다음과 같은 창을 볼 수 있습니다. 접속이 안된다면 http의 기본 포트인 TCP/80 포트포워딩을 했는지와 리눅스 방화벽에 등록했는지 확인해주세요. KT 공유기 포트포워딩 => https://blog.projectdh.link/4 여기까지 하면 웹서버 설치는 바로 끝났습니다만, 주소 옆에 주의 요함이라고 표시가 되어 있을 겁니다. 저 뜻은 https 프로토콜이 아닌 http 프로토콜을 사용하고 있거나 .. 2021. 11. 4.
라즈베리파이 부팅시 자동으로 명령어 실행 방법 1. sudo nano /etc/xdg/lxsession/LXDE-pi/autostart 2. 아래의 줄을 추가 @lxterminal -e python3 /home/pi/auto.py python3 /home/pi/auto.py 대신에 실행할 명령어를 적으시면 됩니다! 2021. 10. 26.