1*3e41d09dSXin LI 2*3e41d09dSXin LI#------------------------------------------------------------------------------ 3*3e41d09dSXin LI# $File: vacuum-cleaner,v 1.1 2015/11/14 13:38:35 christos Exp $ 4*3e41d09dSXin LI# vacuum cleaner magic by Thomas M. Ott (ThMO) 5*3e41d09dSXin LI# 6*3e41d09dSXin LI# navigation map for LG robot vacuum cleaner models VR62xx, VR64xx, VR63xx 7*3e41d09dSXin LI# file: MAPDATAyyyymmddhhmmss_xxxxxx_cc.blk 8*3e41d09dSXin LI# -> yyyymmdd: year, month, day of cleaning 9*3e41d09dSXin LI# -> hhmmss: hour, minute, second of cleaning 10*3e41d09dSXin LI# -> xxxxxx: 6 digits 11*3e41d09dSXin LI# -> cc: cleaning runs counter 12*3e41d09dSXin LI# size: 136044 bytes 13*3e41d09dSXin LI# 14*3e41d09dSXin LI# struct maphdr { 15*3e41d09dSXin LI# int32_t map_cnt; /* 0: single map */ 16*3e41d09dSXin LI# int32_t min_ceil; /* 4: 100 mm == 10 cm == min. ceil */ 17*3e41d09dSXin LI# int32_t max_ceil; /* 8: 10000 mm == 100 m == max. ceil */ 18*3e41d09dSXin LI# int32_t max_climb; /* 12: 50 mm = 5 cm == max. height to climb */ 19*3e41d09dSXin LI# int32_t unknown; /* 16: 50000 ??? */ 20*3e41d09dSXin LI# int32_t cell_bytes; /* 20: # of bytes for cells per block */ 21*3e41d09dSXin LI# int32_t block_max; /* 24: 1000 == max. # of blocks */ 22*3e41d09dSXin LI# int32_t route_max; /* 28: 1000 == max. # of routes */ 23*3e41d09dSXin LI# int32_t used_blocks; /* 32: 5/45/33/... == # of block entries used! */ 24*3e41d09dSXin LI# int32_t cell_dim; /* 36: 10 == cell dimension */ 25*3e41d09dSXin LI# int32_t clock_tick; /* 40: 100 == clock ticks */ 26*3e41d09dSXin LI# #if 0 27*3e41d09dSXin LI# struct { /* 44: 1000 blocks for 10x10 cells */ 28*3e41d09dSXin LI# int32_t yoffset; 29*3e41d09dSXin LI# int32_t xoffset; 30*3e41d09dSXin LI# int32_t posxy; 31*3e41d09dSXin LI# int32_t timecode; 32*3e41d09dSXin LI# } blocks[ 1000]; 33*3e41d09dSXin LI# char cells[ 1000* 100]; /* 16044: 1000 10x10 cells */ 34*3e41d09dSXin LI# int16_t routes[ 1000* 10]; /* 116044: 1000 10-routes */ 35*3e41d09dSXin LI# #endif 36*3e41d09dSXin LI# }; 37*3e41d09dSXin LI 38*3e41d09dSXin LI0 lelong =1 39*3e41d09dSXin LI>4 lelong =100 40*3e41d09dSXin LI>>8 lelong =10000 41*3e41d09dSXin LI>>>12 lelong =50 42*3e41d09dSXin LI>>>>16 lelong =50000 43*3e41d09dSXin LI>>>>>20 lelong =100 44*3e41d09dSXin LI>>>>>>24 lelong =1000 45*3e41d09dSXin LI>>>>>>>28 lelong =1000 46*3e41d09dSXin LI>>>>>>>>36 lelong =10 47*3e41d09dSXin LI>>>>>>>>>40 lelong =100 48*3e41d09dSXin LI>>>>>>>>>>32 lelong x LG robot VR6[234]xx %dm^2 navigation 49*3e41d09dSXin LI>>>>>>>>>>136040 lelong =-1 reuse map data 50*3e41d09dSXin LI>>>>>>>>>>136040 lelong =0 map data 51*3e41d09dSXin LI>>>>>>>>>>136040 lelong >0 spurious map data 52*3e41d09dSXin LI>>>>>>>>>>136040 lelong <-1 spurious map data 53*3e41d09dSXin LI 54*3e41d09dSXin LI 55