Raspberry Pi 3 Model B+에 amazon-dash 설치

목적


  • 옛날 사고 있던 Amazon Dash Button을 발굴했다.
  • Raspberry Pi도 있으므로 뭔가하고 싶다.

  • 운영 환경


  • Raspbian
  • Version 9.4
  • 커널 버전 4.14

  • Raspberry Pi 3 Model B+
  • Nekmo/amazon-dash v1.3.0

  • 사전 준비



    Mac에서 Raspberry Pi 3 Model B+에 SSH로 연결

    절차



    Amazon Dash Button 설정



    amazon.co.jp의 Dash Button 설정에서,

    다음 설정을 위해 Wi-Fi 비밀번호를 저장하려는 경우 확인란을 선택합니다. ~

    까지 설정하고 제품을 선택 화면 오른쪽 상단의 x 버튼을 탭하여 설정을 종료




    Dash Button 기기를 사용하여 재주문할 제품을 선택합니다. ~

    로부터의 순서는 설정하지 않는다, 설정하면 버튼을 눌렀을 때에 주문되게 되어 버린다.

    Amazon Dash Button에서 알림을 감지하는 OSS 설치 및 구성



    Amazon Dash Button에서 알림을 검색하기 위해 Nekmo/amazon-dash 설치

    pip 설치



  • Python 3.4 미만이므로 pip를 별도로 설치
    $ python -V
    Python 2.7.13
    

  • 패키지 최신화 수행
    $ sudo apt-get update
    $ sudo apt-get upgrade
    〜省略〜
    Do you want to continue? [Y/n] y
    〜省略〜
    

  • pip 설치
    $ sudo apt-get install python-pip
    〜省略〜
    Do you want to continue? [Y/n] y
    〜省略〜
    

  • 설치 후 pip를 업데이트하면 뭔가 오류가 발생합니다.
    $ sudo pip install --upgrade pip
    $ pip
    Traceback (most recent call last):
      File "/usr/bin/pip", line 9, in <module>
        from pip import main
    ImportError: cannot import name main
    

  • 삭제하면 움직이게 된다. . 수수께끼. .
    $ sudo apt-get remove python-pip
    pip -V
    pip 18.1 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
    

  • Nekmo/amazon-dash 설치 및 구성



  • pip에서 amazon-dash 설치
    $ sudo pip install amazon-dash
    $ amazon-dash --version
    You are running Amazon-dash v1.3.0 using Python 2.7.13.
    This is the latest release
    Installation path: /usr/local/lib/python2.7/dist-packages/amazon_dash
    Current path: /home/pi
    

  • 스크립트 실행
    $ sudo python -m amazon_dash.install
    Executing all install scripts for Amazon-Dash
    [OK] config has been installed successfully
    [OK] systemd service has been installed successfully
    

  • Amazon Dash Button의 MAC 주소 감지 (아래 명령 실행 후 Amazon Dash Button 버튼을 누릅니다)
    $ sudo amazon-dash discovery
    $ xx:xx:xx:xx:xx:xx (Amazon Device)
    

  • 구성을 편집하고 검색한 Amazon Dash Button 설정을 추가합니다.
    $ sudo nano /etc/amazon-dash.yml
    

    amazon-dash.yml
    # amazon-dash.yml
    # ---------------
    settings:
      delay: 10
    devices:
      xx:xx:xx:xx:xx:xx:
        name: Hello World
        user: pi
        cmd: echo "Hello World" >> HelloWorld.log
        cwd: /home/pi
    


  • 서비스 시작 및 자동 시작 설정
    $ sudo systemctl start amazon-dash
    $ sudo systemctl enable amazon-dash
    Created symlink /etc/systemd/system/multi-user.target.wants/amazon-dash.service → /lib/systemd/system/amazon-dash.service.
    
  • Amazon Dash Button 버튼을 누르십시오

  • 설정이 작동하는지 확인
    $ cat HelloWorld.log
    Hello World
    

  • 잡다


  • Amazon Dash Button 설정에 스마트폰이 필요한 것을 알았다.

  • Nekmo/amazon-dash을 사용할 때 docker를 사용하려고했지만 Raspberry Pi 3B +에서 Docker Hub에서 떨어 뜨린 이미지를 사용하면 ARM의 영향이나 standard_init_linux.go:190: exec user process caused "exec format error”가 나오므로 그대로는 사용할 수 없습니다. 에 있는 Docker 파일로부터 자전으로 빌드하려고 했지만, 의존하고 있는 python:3.7-alpine의 이미지도 자전으로 빌드하지 않으면 안 되는 것 같아, 이번은 포기했다.
  • Amazon Dash Button 탭시, "Dash Button의 상품을 선택해 주세요"라고 기재된 앱 통지와 메일 통지가 옵니다만, 메일 통지를 오프로 하는 방법을 모른다. .

  • Nekmo/amazon-dash

    참고


  • Amazon Dash Button을 단순한 IoT 버튼으로 사용
  • 좋은 웹페이지 즐겨찾기