AirMouse 펌웨어 로드맵
1. 버튼 및 터치패드 인식 구현(완료)
A. 버튼 디바운싱 제어
B. 터치패드 인식 구현
2. 블루투스 연결 및 기본 제어 구현
A. 다중 페어링 버튼 구현(완료)
B. 멀티 페어링
3. IMU 연동, 커서 움직임 구현
A. IMU 값 받아오기 및 보정
B. 블루투스로 IMU 값 전송
4. 전원 관리
A. 배터리 확인 및 host 기기에 값 전달
B. 절전모드 추가 + 조건에 따른 Wake Up 구현
C. 절전시 소모전력 측정 후 하드웨어 디버깅
5. 외부 설정 애플리케이션 연동
Life Equation
요즘은 똑같은 교육을 받고 똑같이 성실하게 직장을 잡아도 거주지 하나 차이 때문에 개개인의 자산 편차가 크게 벌어집니다. 공부만 잘한다고 잘 살 수 있는 세상이라 하기에는 세상이 너무나 복잡해져버렸습니다. 인간 삶의 만족도를 함부로 판단하기는 어렵습니다만, 극히 단순화해서 weight를 의미하는 Wn과 변수 Xn의 곱의 합으로 나타내어 보겠습니다. (이 방정식은 Machine Learning에서의 Cost함수와 형태가 같습니다.) 한국 전쟁 당시의 LE(x)에 존재하는 가중치 W1는 살 수 있을까? 였고 가중치 W2는 배가 부를 수 있을까? 였습니다. 오늘날 이 가중치를 나타내는 Wn은 무척 다양해였습니다.
이렇게 되면 만족도가 계속 올라야만 하는데, 살아봐서 알겠지만 이 만족도는 가파르게 오르다 어느 지점에서 멈추거나 조금씩 내려가고 있습니다. 이 모델에서 모든 변수에 대한 weight의 총합은 언제나 같은데다, 시기에 따라 값이 바뀌기 때문입니다. 이게 뭔가 엉터리다, 맞지 않다 느껴질 수 있습니다. 맞습니다. 애초에 이런 모델이 뭔가 잘못되었다는 깨달음을 얻도록 하기 위해 만든 모델입니다. 우리 모두는 은연중에 이 모델에 따라 살고 있습니다. 이렇게 수식에 맞아 떨어지는 삶을 사는게 사람인지 의문이 듭니다. 이 수식에 맞지 않는 삶을 추구하길 바랍니다.
블루투스 페어링 버튼 구현
아두이노와 달리, ESP-32에서는 task를 다루는 일이 많습니다. 하나의 loop에서 대부분의 것들을 해결하는 아두이노보다 더 난이도가 높은 작업입니다. 블루투스 다중 연결을 지원하는 장치들에는 각각의 연결을 관리하는 페어링 버튼이 하나 존재합니다. 이 페어링 버튼을 통해 기기 간 전환, 페어링을 할 수 있습니다. 오늘은 간단하게 버튼을 제어하는 로직만 구현했습니다. 결과물이 생각보다 허망한데 조금 더 분발해야겠습니다. 더 짧은 기간에 더 많은 성과가 필요합니다.
긴 글 읽어주셔서 감사합니다. ❤️와 광고 클릭으로 고마움을 간단히 표현할 수 있습니다.
개발환경 | Mac OS 15.0 Monterey Beta 5, Python 3.9.6, ESP-IDF v4.3
제품 개발 및 기타 문의 | dokixote@wklabs.io 혹은 오른쪽 아래 채팅을 통해 문의