I want to monitor events that are very short in time (milliseconds) and not predictable. So I think I could dedicate one board to monitoring only and report the event on an external memory. I would have a second board reading the same memory and use the data…
What type of memory would take about no time to be written on and won’t interrupt the writing when it’s read by the second board? To not miss an event… So do you have a specific memory type and hardware model to suggest? Also which Arduino board would be the best for continuous monitoring? Thanks
How frequently do these events occur?
"no time" is a mythical beast. How much time is acceptable?
How much information about each event is to be stored?
Though I've not worked that much with them, I suspect something in the ESP32 line which has a dual core feature with shared memory might be what you want. Implement a queue between the two processors, with one watching for events and queueing them, and the other processing queue contents.
What you've given us so far makes me think you're trying to implement some form of particle or radiation event - beta, gamma, or alpha emission, xray, whatever. Is that the game?
The event could last 10 milliseconds and could repeat 3 to 5 times per second with about 100 milliseconds between each. The data to store is a simple integer per event
Amplitude, (i.e. are you measuring the signal, or just the presence/absence)?
Time of start?
It’s to monitor a iambic morse key. So to monitor a contact that is there for a fraction of a second.
So again, what is it you are recording, then - event time, or duration, or?
I'm probing, because so far I don't see what's "high definition".
Alternance of dit or dah ( . Or -) in time
Lost me. Since you haven't described the application in enough detail in the 10 posts so far, I think this conversation is done. Sorry, but I'm squeezing stones here.
Any Arduino can monitor digital events at that glacial rate, by simply polling an input pin. The only question is how many events do you need to store.
There are Morse code interpreters for Arduino as well, which convert to text.
Only one event at a time
How many of those "simple integer per event" do you wish to store?
Also, how large an integer?
One digit by integer. After 20 integers stored, we could overwrite if it have been read by the other board
Any Arduino should easily handle that task.
But I need to also do other operations that will generate delays. So my idea is to do the operations with delays on another arduino that will read the shared memory. Which type of memory and hardware should I use? (Thanks a lot by the way!)
You worry far too much. The Arduino can process events hundreds to thousands of times faster than the ones you have brought up so far.
If you want serious advice, get serious about planning your project and post the details of all the events and actions the board must take.
Do not expect forum members to drag out the facts one by one, as we have done so far.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.