Skip to content

Restoring Dynamic CAN message passthrough in VI

Christopher Peplin edited this page Jul 15, 2014 · 1 revision

could be made dynamic again by calling malloc for each entry. need to compare CPU performance with map version

compiling with LOG_STATS uses too much memory

can't fit more than 125 on each bus without overflowing static memory ~80 on
each bus leaves ample room for runtime, empirically (on lpc1768 with 32k). No it is way less

if we are error checking on our calls to malloc, where else does it fail? it
still crashed even if i stopped calling cJSON_Create.

switch to malloc but watch the count of messages (limit to 75). only add
definitions is bus has frequency control. see if we can move bus out of message
definition, that's a lot of duplicated 4 bytes. document the limitation of 75
for unfiltered raw.

could rethink canutil structs after phasing out the way we predefined buses,
messages and signals. make everything dynamic.