I figured out what the Fields entry and associated Type drop-down are doing. This is simply allocating memory in the form of uint8. Different data types are listed for convenience so the user doesn't have to do the math. In the case of structs, arrays, and other data types where it is impossible to know the memory requirements, the user must manually calculate the length and enter it in the Length entry.
In my case, I have a struct, the actual structure is not defined in the BLE configuration, just the memory requirements. In my structure, the Length is 3. When you want to send the structure in your code, simply cast it as a uint8 pointer.
1 of 1 people found this helpful
A struc in memory is in a general sense just a set aside of a given
chunk. So pointers can effectively treat it as a chunk of bytes, words,
longs, whatever, and operate on it as a whole, rather than specific
Thats one way,. for example, a struc can be handled in FLASH or EE
when a save/restore operation is called for. Rather than an update on
one variable in struc.