Hi Fola,
There aren't any outstanding issues that we know off which might be causing the problem you are seeing. Albeit inconvenient at the meantime I would suggest taking a look at Param Logging (http://tinyos.cvs.sourceforge.net/viewvc/tinyos/tinyos-2.x-contrib/shimmer/ apps/ParamLogging/) , if you don't require the host time this would meet your needs. Also FYI, we are in the process of completing a more complete logging application (target release is end of this quarter). It is a more complete and straightforward solution which along with other things, include a time sync between different shimmer devices solution, supports the full array of Shimmer sensor boards, allows easy configuration of the different sensors (e.g Accel Range) and etc. Best regards, JC _____ From: [email protected] [mailto:[email protected]] On Behalf Of Fola Alamudun Sent: 28 February 2013 04:29 To: [email protected] Subject: [Shimmer-users] Hosttimelogging GSR and accelerometer xyz. I'm modifying hosttimelogging to include gsr data as well as accelerometer. I seem to be having a problem with chunks of missing data. I started of with a version of hosttimelogging that collects gsr_raw and gsr_res with a timestamp at the beginning of the file. When I add accelerometer x, y, and z, the output i get seems to be missing about 7s of data periodically. Bellow is a snippet of the portion i feel may have a problem: void autorange_gsr() { uint8_t current_active_resistor = active_resistor; if(current_buffer == 0) { active_resistor = call Gsr.controlRange(*(sbuf0 + (dma_blocks*NUM_ADC_CHANS-1)), active_resistor); *(sbuf0 + (dma_blocks*NUM_ADC_CHANS-1)) |= (current_active_resistor << 14); } else { active_resistor = call Gsr.controlRange(*(sbuf1 + (dma_blocks*NUM_ADC_CHANS-1)), active_resistor); *(sbuf1 + (dma_blocks*NUM_ADC_CHANS-1)) |= (current_active_resistor << 14); } } async event void DMA0.transferDone(error_t success) { dma_blocks++; autorange_gsr(); atomic DMA0DA += 8; // flash the green led approx. once every two seconds if(!(dma_blocks%20)) call Leds.led2On(); else call Leds.led2Off(); if((dma_blocks+1) * NUM_ADC_CHANS > 510){ dma_blocks = 0; if(current_buffer == 0){ call DMA0.repeatTransfer((void *)ADC12MEM0_, (void *)sbuf1, NUM_ADC_CHANS); current_buffer = 1; } else { call DMA0.repeatTransfer((void *)ADC12MEM0_, (void *)sbuf0, NUM_ADC_CHANS); current_buffer = 0; } post store_contents(); } } Any help will be greatly appreciated. thanks. "Nothing will benefit human health and increase chances for survival of life on Earth as much as the evolution to a vegetarian diet." ~ Albert Einstein (1879 - 1955). Fola Alamudun Computer Engineering Texas A&M University mobile: 469-995-4088 | email: [email protected]
_______________________________________________ Shimmer-users mailing list [email protected] https://lists.eecs.harvard.edu/mailman/listinfo/shimmer-users
