@@ -177,6 +177,8 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen2() {
177177 return std::make_unique<Screens::Label>(1 , 5 , label);
178178}
179179
180+ extern int mallocFailedCount;
181+ extern int stackOverflowCount;
180182std::unique_ptr<Screen> SystemInfo::CreateScreen3 () {
181183 lv_mem_monitor_t mon;
182184 lv_mem_monitor (&mon);
@@ -188,22 +190,23 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen3() {
188190 " #808080 BLE MAC#\n "
189191 " %02x:%02x:%02x:%02x:%02x:%02x"
190192 " \n "
191- " #808080 LVGL Memory#\n "
192- " #808080 used# %d (%d%%)\n "
193- " #808080 max used# %lu\n "
194- " #808080 frag# %d%%\n "
195- " #808080 free# %d" ,
193+ " \n "
194+ " #808080 Memory heap#\n "
195+ " #808080 Free# %d\n "
196+ " #808080 Min free# %d\n "
197+ " #808080 Alloc err# %d\n "
198+ " #808080 Ovrfl err# %d\n " ,
196199 bleAddr[5 ],
197200 bleAddr[4 ],
198201 bleAddr[3 ],
199202 bleAddr[2 ],
200203 bleAddr[1 ],
201204 bleAddr[0 ],
202- static_cast < int >(mon. total_size - mon. free_size ),
203- mon. used_pct ,
204- mon. max_used ,
205- mon. frag_pct ,
206- static_cast < int >(mon. free_biggest_size ) );
205+ xPortGetFreeHeapSize ( ),
206+ xPortGetMinimumEverFreeHeapSize () ,
207+ mallocFailedCount ,
208+ stackOverflowCount
209+ );
207210 lv_obj_align (label, lv_scr_act (), LV_ALIGN_CENTER, 0 , 0 );
208211 return std::make_unique<Screens::Label>(2 , 5 , label);
209212}
0 commit comments