약간의 꼼수를 이용하여 DSPS 프로그램을 Update 하는 방법을 알아냈습니다.
간략하게 말씀드리면 secondary bootloader 와 proximity 프로그램 2개를 멀티로 초기에 SPI FLASH에 올리고
2번 BANK에 DSPS 프로그램을 SUOTA로 Update 하면 DSPS가 동작합니다.
그럼 1번 뱅크에는 처음에 이미 저장된 proximity 프로그램이 있고, 현재 동작은 DSPS 프로그램이 동작하고 있겠죠?
만약 다음번에 DSPS 프로그램을 업데이트 하고 싶으면 어떻게 해야 할지 생각해 봤습니다.
DSPS 프로그램 내에서 DSPS 프로그램이 위치하고 있는 영역의 SPI 영역을 지워버렸더니,
리셋 후, secondary bootloader가 자동으로 BANK1의 proximity 프로그램을 생행을 하는군요.
그렇다고 함은, 다시 SUOTA 앱이 동작하는 것을 의미하죠.
이 때, 다시 BANK2에 DSPS 프로그램을 업데이트 하니까 되더군요.
이렇게 하면 , 어떤 프로그램이라도 특정 영역(BANK2)을 지우는 기능만 있으면 모두 SUOTA를 사용해서 무선 업데이트가 가능하리라 생각이 됩니다.
이상입니다. 조금 더 자세한 설명은 오늘 저녁쯤에 작업해서 업데이트하겠습니다.
댓글 없음:
댓글 쓰기