Welcome to EnviroDIY, a community for do-it-yourself environmental science and monitoring. EnviroDIY is part of WikiWatershed, an initiative of Stroud Water Research Center designed to help people advance knowledge and stewardship of fresh water.
New to EnviroDIY? Start here

Arduino NB-IoT for ISCO autosampler

Home Forums Infrastructure and Equipment Arduino NB-IoT for ISCO autosampler

Viewing 4 reply threads
  • Author
    • #17500

      Hi all,

      I’m new to this community and am currently trying to figure out how best to connect an ISCO 6712 autosampler to an Arduino-based narrowband Internet-of-Things (NB-IoT) module. The aim is to create a node network of 4 autosamplers which will trigger simultaneously during events based on a water level threshold measured using the Solinst level sensor, and to upload live level data automatically via IoT and provide alerts for when the sampler has been triggered. I’ve dabbled in Arduino programming previously, but nothing quite at this scale! The field site is on a remote peatland in Co. Sligo, Ireland, so that’s why I’m hoping to solve my telemetry issues using NB-IoT. I haven’t purchased any NB-IoT kit yet as I’m still figuring out how best to set this up, so open to suggestions (e.g. Arduino MKR NB 1500, Portenta CAT.M1/NB IoT GNSS Shield, Arduino Edge Control). I realise my question may be quite broad at this stage and am grateful for any advice you can give me!


      Question 1: Trigger via ISCO vs Arduino

      I am still debating whether to connect and trigger the ISCO directly from the Solinst level sensor via SDI-12 communication or connect the sensor to the Arduino which in turn would trigger the ISCO based on a level threshold. This decision may be settled based on the Arduino telemetry setup, but I’d greatly appreciate any advice on this!


      Question 2: Connection between ISCO and Arduino

      How do I physically connect an ISCO 6712 to an Arduino and how can I setup the Arduino to communicate with the ISCO? I know this topic has been touched on here before based on Mayfly (https://www.envirodiy.org/topic/wingshield-for-modbus-communication-with-isco-signature/). Maybe @srgdamiano would have further advice? I would basically want to offload any level data recorded onto the ISCO datalogger directly onto the Arduino, to avoid the ISCO data storage filling up, and use the Arduino mainly as a telemetry device (alert us when sampler has been triggered, upload level data to the cloud and allow remote triggering of the ISCO when necessary).


      Thanks in advance for any guidance!


    • #17501


        I use Campbell dataloggers (CR800) to collect and send data from ISCO auto samplers to a database. The Campbell datalogger program also has the capability to accumulate stormwater flow data and initiate flow paced sample collection with the samplers via a SampleRequest command. I haven’t connected an ISCO 6712 to an Arduino but I’m interested to know if you know how to enable an ISCO program remotely because I haven’t discovered a way to do this. My approach has been to have the sample program on a separate datalogger that controls when the sampler samples based on sample requests from the datalogger.

      • #17505

          @hannahlb if I understand you – you have 4 geographically distributed ISCO samplers (say more than 100m apart) and you would like to trigger them  when a threshold is exceeded from a Solinst level sensor.  The trigger would be communicated via messages on the telemetry NB-iot?

          Probably the best way to think about it is in stages

          1) figure if this can be just done from one controller – both Solinst and ISCO

          2) Then when you have got it working with one controller, can you communicate that through an mqtt message over NBIot to a remote server

          3) then have the three or four other remotes subscribe through mqtt NB Iot  to the notification.

          While this could be sketched on a whiteboard quite easily – ModularSensors only does north bound (one way into the cloud) comms through an mqtt host.

          However, looking at the ISCO 6712 manual, the issue may be how to trigger the ISCO 6712 to start.  If there is an external connection it could work. Or program it to run just once when powered up – and then manage the power application as the trigger.  Another way might be to stimulate an SDI-12 instrument – create a dummy instrument as a trigger method.   All of it is probably a lot of software work, which can take a lot of time and also trial and error having extra equipment.



        • #17527
          Laura DeCicco

            @hannahlb I’m also quite new to this community and I think I’m interested in setting up a very similar application. Specifically 2 and 3 in @neilh20 ‘s response sound like what I’ve been googling. If you’ve got it working, I’d love to hear how you set it up/sketch examples, etc.

          • #17532

              While browsing something else, I came across this ISCO 3700 references – no idea if its workable



          Viewing 4 reply threads
          • You must be logged in to reply to this topic.