I have a Q2501B (firmware 6.50a) which has been running for some time now. When I tried to modify some settings of the device (which are stored in flash) I noticed that the adl_flhWrite command failed with error -22 (ADL_FLH_RET_ERR_NO_ENOUGH_IDS). I have allocated 200 objects with adl_flhSubscribe. Some objects now give error -22 when I try to write to them, e.g. #2, #4. Other ID’s still work like #3.
In the FAQ on the main site I found this:
So I guess the garbage collector could be the problem, but they don’t mention how it should be fixed.
Has anyone had a similar problem and knows the solution?
I’ve faced this issue too.
In my case the problem was the size of the object I was willing to write: If it is greater than 30KB, adl_flhWrite will return the code -22 (ADL_FLH_RET_ERR_NO_ENOUGH_IDS).
The limit is clearly stated in the documentation of the function. What it is not clear to me is the meaning of the result code, I would expect an ADL_FLH_RET_ERR_MEM_FULL instead (or even a new one, more specific).