다이빙컴퓨터 DIY로 만들기 프로젝트 - 4

계속 개발을 이어가던 중에, 여러가지 난관에 봉착했음다.
네, 뭐 순탄하길 기대한건 아니었지만요.... 가장 복잡한 문제가 이것이었습니다.
배.터.리. 전 to the 압
ESP32-S3 보드를 이용해서 개발하고 있었는데, 제가 사용한 보드는 5v 정전압을 받아서 작동하는 보드입니다.
즉, USB로 연결해서 사용하면 아주 잘 작동되지만, 3.7v의 리튬배터리를 직결해서 사용할 수 없다는 점이 문제였습니다.
다행이라면, GPS모듈은 또 5v를 사용한다는 점.
그러면, 3.7v배터리를 승압모듈을 써서 5v로 전압을 높여줘서 연결하면 되는 문제이긴 한데,
그러면 또 문제가, 배터리 전압이 5v로 일관되게 들어오기 때문에 보드가 배터리의 양을 가늠을 할 수 없데 됨다.
충전을 해도 충전이 되는지, 배터리가 엥꼬가 되어가도 그러든지 말던지,
그냥 5v가 나오네~ 하면서 돌아가는 문제가 있었죠.
그래서, 배터리에서 또 선을 분기해서, 저항을 연결해서 보드의 다른 핀에 전압감지 로직을 구성해야 하는 문제가 있었단 말이죠?
게다가 보드자체에 충전관련 모듈이 내장되어 있지 않아서, 무선 충전 모듈까지 사용하게 되면 무선 충전 모듈은 5V를 꾸준비 보내주니, 이거 뭐 충전중에 전압감지도 또 복잡하게 꼬이는 문제가 생겼음다.
그래서...... 또 알리를 뒤지면서 여러 보드를 보다가 발 to the 견!

보드 스펙은 ESP32-S3보다 떨어지는 ESP32보드지만, 컬러 TFT스크린이 아예 붙어있는 채로 나오는 보드를 발견했습니다!
아싸!!!!!

짜잔!!!
1. 보드는 더 작아지고, (대신화면도 작아지고...)
2. 총천연색 풀컬러 텔레비죵 뺨치는 컬러 TFT화면도 붙어있고,
3. 전원도 3.7v를 그대로 연결할 수 있으며,
4. 무엇보다도~~! 충전 모듈이 내장되어있어서, 5v도 연결하면, 5v 받아서 3.7v 배터리르 충전함다.!!
한가지 해결안되는 문제는, 5v 입력도 받을 수 있지만, 5v 출력을 내진 못한다는 거...
결국, GPS모듈은 여전히 5v 승압 모듈이 필요하다는게 문제네요.
만들다가, 아무래도 공간이 부족하고, 너무 복잡해진다 싶으면 GPS는 빼버릴까 고민중.
암튼 이 보드는 LILYGO T-Display ESP32 [16MB] [CH9102F] [D0WDQ6-V3] 라는 놈으로서~
여전히 이 놈도 16MB의 메모리를 갖고 있어서, 최소 200로그 이상은 저장이 가능합니다.
원래 더 많이 저장되는데, 다이브 로그가 복잡해질 경우 생각하면 안전 마진으로 200정도로 잠궈놨네요.
보드에 업로드해서 시뮬레이션 돌려보니 잘 돌아간다요~
https://youtube.com/shorts/eEjxq1Eytlg?feature=share
안전을 위해서 알고리즘을 지금 몇번째 검증하고 수정했는지 알 수가 없습니다.
모든 상황을 고려해서, 그에 맞게 코드를 수정하고 수정하고 또 수정하고...
만약 감압을 하다가 상승조류 만나서 몇미터 상승하면 어떻게 하지?
감압을 하다 문제가 생겨 수면으로 상승했다가, 다시 잠수하면 어떻게 처리 하지?
뷜만 알고리즘 구조상, 그냥 곧이곧대로 해석해서 다이빙에 적용해버리면,
NDL넘어버렸을때, 3m에서 몇분 해라. 하는 식으로 최대한 얕은 수심에서 한번에 감압하는 식으로만 계산되는 식이어서,
알고리즘의 계산방식을 기준으로 하되, 감압하는 방식을 커스텀으로 구성해야 했습니다.
덕분에 감압 알고리즘에 대해 많이 배워가고 있습니다. 갑자기 내가 왜 이런 짓을 벌였는지 살짝 현타도 오고...
다이브컴퓨터의 펌웨어와 안드로이드앱을 동시에 진행하다보니,
정말 처리할게 한두가지가 아니네요. 실제 코딩은 AI의 도움을 크게 받고 있음에도,
생각해야할 각종 시나리오들과 검증하고 수정해야할 것들이 계속 생기고 있네요.
그냥 뚝딱! 딸깍! 하면 끝날 줄 알았는데....
그래도 끝이 슬슬 보이는 것 같습니다. 거의 다 끝냈다는게 아니라, 끝이 어디쯤인지 살짝 보인다는 정도(?)랄까?
괜히 다이빙 컴퓨터 회사들 개발 박사님들이 높은 연봉 받아가면서 개발하시는게 아니구나 싶었....
아니.. 난 누가 돈주는 것도 아닌데 왜 이짓을 시작했지?
아 글쓰다 보니 또 현타가....
이제 또, 클로드랑 챗지피티랑 논쟁을 벌이러 가봐야겠.... 아 현타오는데 오늘은 여기까지만 할까...