Data Recorder/Logger - Page 1
Forum section: electronics / testgear

author: luudee
author_rank: Frequent Contributor
timestamp: July 18, 2025, 10:44:17 am
content: Hello Guys and Gals !(I replied in another thread with this message, but I feel its title is too misleading, so I am starting a new thread).I find myself again and again in need to record data. Sometimes for a few seconds, sometimes for a day or more.Sometimes I want to record voltage, sometimes current, and sometimes temperature.I would also like to have a basic UI and SD card storage.I saw some super expensive stuff out there that does one or the other, but it is all overkill for me.So I am thinking of using a CoreS3-SE and adding my own ADC (over SPI) board that can acceptone of multiple input boards for voltage, current, and temperature.https://docs.m5stack.com/en/core/M5CoreS3%20SEAnybody interested in that? Or has anybody done something similar ?Cheers,rudi

author: shabaz
author_rank: Frequent Contributor
timestamp: July 18, 2025, 03:26:25 pm
content: Hi,I think I'd use a Cortex-A running Linux, like Raspberry Pi, unless you really need your data logger to run off batteries for more than a few hours. If you're fine with plugging in a power brick for extended logging, then a Pi running Linux has a lot going for it. It can easily log, log rotate, timestamp and so on, plus can back up to its internal file system as well as (say) USB Flash drive or whatever. Also the network options are a lot more flexible out of the box, so you could temporarily attach your mobile phone to it to view logs, or modify config. Sure you can do all that with an ESP32 but it's more work when Linux supports all that by default.I made myself a little plug-on board that has a 16x2 LCD and a couple of buttons, and that's my basic user interface to start/stop tests. At power-up it displays the IP address if it connects to a network, and then launches a menu app.There are probably nice TFT and button boards ready-made for Pi, the 16x2 is not the best user experience but it served my purpose at the time.You could make custom boards to sandwich in to do data acquisition, or you could connect a USB sound card for audio tests or attach other custom hardware via SPI, USB or whatever the Pi supports that meet your needs. The photo shows an off-the-shelf ADC card inserted in-between. There's actually a custom dual thermocouple board too that is inside the enclosure to simultaneously log temperature.Regarding code, I wrote a little executable to write text to the display, and another one to read the current button status.I can then use a startup script to call the display executable, to display the IP, and then later whatever app is configured for automatic startup will take over and display something else. Can code in C, Python, scripts or anything you wish, they all call the two executable to handle the crude user interface (or use mobile to access a better interface one day perhaps).Anyway the above is just in case something here gives you ideas for your project.

author: HKJ
author_rank: Super Contributor
timestamp: July 18, 2025, 04:16:12 pm
content: One way to do it is to use TestController on a Rasberry PI computer and then connect this module:https://lygte-info.dk/project/TestControllerUserProjects1%20UK.html#10_channel_12bit_ADC_module_by_WATestController can also run on a old laptop computer, if you have one (And it can run on any new Windows/Max/Linux computer).Test controller download:https://lygte-info.dk/project/TestControllerIntro%20UK.htmlEEVBlog thread:https://www.eevblog.com/forum/testgear/program-that-can-log-from-many-multimeters/

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 19, 2025, 01:47:51 am
content: Have you thought about a regular DMM with a serial output? Then you can make a little backpack with a uC and uSD card (For example something like "openlog" ) DMM' with data output start at around EUR 30, and a Brymen for around EUR 80. Then you don't have to mess around with the "precision" analog circuitry and you have something quite reliable and universal, with a lot of ranges.Or buy a meter like the 121GW, which already has an uSD card inside.

author: tautech
author_rank: Super Contributor
timestamp: July 19, 2025, 02:30:56 am
content: Quote from: luudee on July 18, 2025, 10:44:17 amWhy not an off the shelf solution like a bench meter such as one of the SDM3000 or the newer SDM4000A models ?You can script measurements and/or use the Test Controller SW from member HKJ:https://www.eevblog.com/forum/testgear/program-that-can-log-from-many-multimeters/To push that further you can also get these bench meter models in Scanner Card versions that provide up to 16 measurement channels but this feature cannot be added later, you instead must order the -SC model.

author: luudee
author_rank: Frequent Contributor
timestamp: July 19, 2025, 03:51:40 am
content: Wow ! So much feedback !!!Thank you all for all the replies !!! Very much appreciated !!!The reason I was looking at the CoreS3-SE, was because it is a small fully integrated solutionwhich has plenty of IOs to add an ADC, and some additional analog stuff. Plus, it is super lowcost at less than $40 USD. (Price is not a main concern, but it is nice if it can be so super cheap).There also is one that runs linux (CoreMP135):https://docs.m5stack.com/en/core/M5CoreMP135It also comes with 2 x 1 GB Ethernet ports. A bit more pricey at $75 USD, but still affordable.But for me, that doesn't really add any value, as all I want is to dump data (with a time stamp)to an SD card. But I will think about this ...I have a couple of Raspberry Pis here doing various things. I think of them as being ratherclumsy and big. The stuff from MP5Stack, is much smaller, fully integrated with a 340×240 pixeltouch screen, has an SD card and USB interfaces, and has a well-engineered expansion port.And all in a charming enclosure.I wonder how fast of sampling I would be able to do with Linux vs bare metal CoreS3-SE. I'dlike to be able to sample at 1/8 of a second max (fastest sampling rate). Will I be able to dothat with Linux ?I like the idea of scripting my SD3000 (Hi Rob !)At this point I am still thinking about what to do. I will definitely look into scripting my big DMM,but I also want something small that can be easily moved, and yeah, maybe run off a powerbank for a few hours. Besides, it's fun to make something like that.Many thanks,rudi

author: tautech
author_rank: Super Contributor
timestamp: July 19, 2025, 04:15:56 am
content: Quote from: luudee on July 19, 2025, 03:51:40 amHi RudiTest Controller definitions and support for SDM3000 models is pretty good and well honed by now with several contributions from members/followers.As you already have one (I thought you might) there's only the cost of a little time to see if it can meet your needs.HKJ is very helpful in giving advice on how to tune TC to your needs so jump into that thread if you need guidance.

author: shabaz
author_rank: Frequent Contributor
timestamp: July 19, 2025, 02:34:41 pm
content: Quote from: luudee on July 19, 2025, 03:51:40 amHi,Of course : ) If you were going such a route then you'd probably want to decouple the ADCs a little bit, and that's possibly easiest by inserting a little microcontroller to precisely capture at intervals (with a timer interrupt for instance) and buffer the samples, so that you're reading in multiple samples over (say) SPI (and create your own simple protocol to detect if samples have ever been missed).Whether you actually want or need to go the Linux route, only you can know for sure, I don't know your full requirements, or what you're comfortable with, and how much of the system you prefer to create from scratch versus off-the-shelf.Somewhere on the potential requirements line, there may well be a point where it will make more sense to use Linux rather than bare metal, but your project might not be at that point, in which case bare metal may be fine.One could argue that the Linux route is more complicated than a bare-metal microcontroller project since bare-metal wouldn't need a separate microcontroller to buffer, but that could just be trading some simplicity there for more complexity elsewhere (and you'd still need to buffer somewhere in the bare metal system anyway, since you'd be writing to the SD card in larger chunks than a single sample.

author: HKJ
author_rank: Super Contributor
timestamp: July 19, 2025, 03:14:49 pm
content: Quote from: luudee on July 19, 2025, 03:51:40 amTestController can do up to about 100 samples/second, but is often limited by the connected devices to a lower rate.

author: shabaz
author_rank: Frequent Contributor
timestamp: July 19, 2025, 04:08:14 pm
content: I'm guessing this is something partially along the lines of what you're thinking (see attachment).This was a 2-channel ADC board (intended to be stackable if you wanted 4-channels, and possibly more with a future board revision to bring out more address connections) with +-5V inputs and built-in ambient temperature sensor. It was very low-cost(ADS1115 chip and some op-amps, less than $20 BoM probably).It stacked with a Pi Pico and an off-the-shelf display (see photo of the display I used; quite limited due to size/resolution).I aborted this, since it was just a fun project and other things got in the way and I didn't want to spend so much time on it.I find the Raspberry Pi more useful simply because it can be fitted with a high-speed card (I have several off-the-shelf ones from Digilent) plus a custom dual thermocouple board (ADS1118).

author: luudee
author_rank: Frequent Contributor
timestamp: July 20, 2025, 01:45:37 am
content: The reason I like the M5Stack solutions is because they come with an enclosure and are "clean-looking".They are open on the bottom to add an extension PCB. The screen is a touch screen ...I have done some bare-metal programming and would definitely feel more comfortable with that than Linux.I would run the actual capture routing on one core and do the GUI and storage on the other core ...Cheers,rudi