NilRTOS - A Fast Tiny Preemptive RTOS

For example it works here with:

struct FifoItem_t {
  uint16_t usec : 16;        // Low 16-bit of time in usec.
  uint16_t value0 : 10;  // ADC value.
  uint16_t value1 : 10;  // ADC value.
  uint16_t value2 : 10;  // ADC value.
  uint16_t value3 : 10;  // ADC value.
  uint16_t value4 : 10;  // ADC value.
  uint8_t error : 6;   // Overrun count since last point.
};

fifo_size 100, intervalTicks=2, no analogreference, no overrun for 30secs

PS: not sure we can do this (the original struct causing troubles):

struct FifoItem_t {
  uint16_t usec;        // Low 16-bit of time in usec. 
  unsigned value : 10;  // ADC value.
  unsigned error : 6;   // Overrun count since last point.
};

within a struct - mixing int and bitfields - maybe within an union? ..

5ch.jpg