Forum Replies Created
-
AuthorPosts
-
Thanks, good for reference – the critical aspect of any plastic outdoor box is I understand polycarbonate and those IP65 seals
Keep out the falling rain. Those ants like to get in if they can, so it is a challenge. I really appreciate the detailed guide of what to think about with https://www.envirodiy.org/mayfly-sensor-station-manual/ though I choose my polycarbonate box based on the project.
When building a system, I do try and document it for myself so that I can easily repeat it, and also share it. The Mayfly can fit in a small space ~ NBB-15240 with the uSD facing outwards for easy offloading.
Sometimes though its the instrument wires and dessicant that need routing space, so I’ve also been using the Bud PTQ-11050 and for testing PTQ-11050-C.Still it would be soo nice to have a processor with at least 4 UARTs, an embedded USB host, and a 1M flash, enough ram and timers for totalizing/counting … with a little screen for site provisioning. I’m playing around with the Wio Terminal – https://wiki.seeedstudio.com/Wio-Terminal-Getting-Started/ but how to get the sleep power usage down, and have it take an Xbee format socket with Digi LTE powering, with all the software open source license…. as ever a variety of engineering challenges.
Ahh very nice. I’m sure its worth it to get a standard design for all climates, and able to cope with keeping some sensors warm. Seems like the cost is going to go up dramatically though. Powering is a lot of cost and of course IP65 space is costly (for those batteries!!). I wonder if it is open sourced, or a private contract design. I use a 4.4AH LiIon, which is quite large for the Mayfly, and of course it can only charge at a max of 0.5A/hr – which means the solar panel is only about 3Watts (though easy to oversize to cope with shading) . Thanks for sharing and the references.
I wonder if the AWS interface can be done through some form of @vogelrnws python that runs on the Xbee LTE? JMight be worth looking for something that runs on the raspberryPi in Python for AWS, and then seeing if they could be adapted to Xbee LTE python. (so easy to throw out an idea – but I have no experience with AWS)
@vogelrnws thanks. Would you have an overall schematic of it. Sounds like Solar to +12V. Then guessing +12V battery that is the main power source. Then Teensy3.5 supply 3.5to5.5V, possibly also Xbee LTE boards
https://www.pjrc.com/store/teensy35.html
Probably a carrier board for the Teensy3.4 and LTE board?
@vogelrnws sounds great .. the Teensy 3.5 is a great board and amazing support. If you’ve figured out remote upgrade as well, very noce. I wonder if you would create a separate thread for it ~ perhaps “using the Teensy 3.5”. One of the biggest issues for me is always how to make a system, low power and solar powered.
@zeke-holloman do you want to send me the thingspeak details on my email neilh20@wLLw.net and I’ll try them in my setting. I have a historical thingspeak account which has exceeded its free quota, so I can’t create more devices.
The hologram account should work with the Xbee LTE ( I have an XB3-CA2-UT-001) if setup, and I started with hologram. If it works for getting time, should work for any other connection. If you post the trace can see if its getting good response .
@vogelrnws gosh sounds interesting, especially as you are logging the readings. I couldn’t see the python files – could you provide a link.
https://thingspeak.com/channels/5940 shows a data point at Aug 02 2021 15:17 GMT-0700 Yeah!!
@zeke-holloman, I figured out that the other day I hadn’t changed the apn to the source I was using.
So with your code, my apn and thingspeak API, using tera-term 4.105 with TimeStamp and the following changes I got a good response from thingspeak
#include <ModularSensors.h> //pre 0.30.0 was <LoggerBase.h></div>
The core thingspeak looks like this
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889nh: it got time OK[2021-08-02 15:16:04.029] Setting up file on SD cardnh: zzz sleeping[2021-08-02 15:16:04.173] Data will be saved as logger_2021-08-02.csv[2021-08-02 15:16:04.198] Putting processor to sleep[2021-08-02 15:17:00.586] ------------------------------------------[2021-08-02 15:17:14.269][2021-08-02 15:17:14.269] \/---- Line Saved to SD Card ----\/[2021-08-02 15:17:14.269] 2021-08-02 17:17:00,-9999.0,-9999.00,-9999.0,4.548,-81[2021-08-02 15:17:14.288][2021-08-02 15:17:14.288][2021-08-02 15:17:14.444] +++OK[2021-08-02 15:17:14.557] ATCN[2021-08-02 15:17:14.557] OK[2021-08-02 15:17:14.932] +++OK[2021-08-02 15:17:15.052] ATAP[2021-08-02 15:17:15.073] 0[2021-08-02 15:17:15.073] ATGT[2021-08-02 15:17:15.073] 64[2021-08-02 15:17:15.073] ATCT[2021-08-02 15:17:15.076] 64[2021-08-02 15:17:15.076] ATHS[2021-08-02 15:17:15.076] B08[2021-08-02 15:17:15.076] ATCN[2021-08-02 15:17:15.092] OK[2021-08-02 15:17:15.224] +++OK[2021-08-02 15:17:15.324] ATAI[2021-08-02 15:17:15.355] 0[2021-08-02 15:17:15.355] ATMY[2021-08-02 15:17:15.355] 100.111.10.79[2021-08-02 15:17:15.371] ATCN[2021-08-02 15:17:15.430] OK[2021-08-02 15:17:15.430] Sending data to [ 0 ] mqtt.thingspeak.com[2021-08-02 15:17:15.430] 5 fields will be sent to ThingSpeak <--ThingSpeakPublisher[2021-08-02 15:17:15.430] Topic [ 38 ]: channels/5940/publish/DHCKWXXHZQLHGIAX <--ThingSpeakPublisher[2021-08-02 15:17:15.430] Dumping the TX Buffer <--dataPublisherBase[2021-08-02 15:17:15.430] Message [ 106 ]: created_at=2021-08-02T17:17:00-05:00&field1=-9999.0&field2=-9999.00&field3=-9999.0&field4=4.548&field5=-81 <--ThingSpeakPublisher[2021-08-02 15:17:15.430] Opening MQTT Connection <--ThingSpeakPublisher[2021-08-02 15:17:15.524] +++OK[2021-08-02 15:17:15.640] ATLAmqtt.thingspeak.com[2021-08-02 15:17:17.797] 3.83.181.186[2021-08-02 15:17:17.812] ATIP[2021-08-02 15:17:17.812] 1[2021-08-02 15:17:17.812] ATDL[2021-08-02 15:17:17.828] 132.163.97.6[2021-08-02 15:17:17.844] ATDL3.83.181.186[2021-08-02 15:17:17.859] OK[2021-08-02 15:17:17.859] ATDE[2021-08-02 15:17:17.881] 25[2021-08-02 15:17:17.881] ATDE75b[2021-08-02 15:17:17.897] OK[2021-08-02 15:17:17.897] ATWR[2021-08-02 15:17:17.952] OK[2021-08-02 15:17:17.952] ATAC[2021-08-02 15:17:17.972] OK[2021-08-02 15:17:17.972] ATCI[2021-08-02 15:17:17.981] FF[2021-08-02 15:17:17.981] ATCN[2021-08-02 15:17:17.999] OK[2021-08-02 15:17:17.999] $MQTTÂMSMSZXG6QS4IXEHKG0PK+++OK[2021-08-02 15:17:18.260] ATCI[2021-08-02 15:17:18.282] FF[2021-08-02 15:17:18.282] ATOD[2021-08-02 15:17:18.282] 0.0.0.0[2021-08-02 15:17:18.298] ATCN[2021-08-02 15:17:18.298] OK[2021-08-02 15:17:19.898] MQTT connected after 4483 ms <--ThingSpeakPublisher[2021-08-02 15:17:19.921] 0&channels/5940/publish/DHCKWX0HZQLHGIAXcreated_at=2021-08-02T17:17:00-05:00&field1=-9999.0&field2=-9999.00&field3=-9999.0&field4=4.548&field5=-81+++OK[2021-08-02 15:17:20.304] ATCI[2021-08-02 15:17:20.304] 0[2021-08-02 15:17:20.304] ATOD[2021-08-02 15:17:20.324] 3.83.181.186[2021-08-02 15:17:20.324] ATCN[2021-08-02 15:17:20.338] OK[2021-08-02 15:17:20.338] ThingSpeak topic published! Current state: 0: MQTT_CONNECTED[2021-08-02 15:17:20.357] Disconnecting from MQTT <--ThingSpeakPublisher[2021-08-02 15:17:20.357] à+++OK[2021-08-02 15:17:20.581] ATTM[2021-08-02 15:17:20.597] 64[2021-08-02 15:17:20.597] ATTM64[2021-08-02 15:17:20.613] OK[2021-08-02 15:17:20.613] ATWR[2021-08-02 15:17:20.661] OK[2021-08-02 15:17:20.661] ATAC[2021-08-02 15:17:20.677] OK[2021-08-02 15:17:20.677] ATCN[2021-08-02 15:17:20.691] OK[2021-08-02 15:17:20.691] Disconnected after 347 ms <--ThingSpeakPublisher[2021-08-02 15:17:20.818] +++OKI have a lot more debug, and better scale-ability built into my fork https://github.com/neilh10/ModularSensors but the above worked for me.
Hello @rick-vogel – sounds fascinating & fun to use python in the Xbee. Though for ModularSensors there are layers of software that allow the physical modem to be abstracted so it could be possible to use another LTE when it becomes available (0.30.0 seems to have hooks for a new LTE modem SIM7080G) – through TinyGSM. As a Class package that @srgdamiano has put together its quite comprehensive – though as with all abstractions it has upsides and downsides. I think this is working through what it takes to figure out the control flow, which would be needed whatever route is taken. In my fork (with some LTE interface changes) it has worked.
@zeke-holloman, I’d got pulled off onto something else, now I’ve added the STREAMDEBUGGER_DBG to your “Logging_to_Thingskeak5.ino”and removed my extra code that I had and about to test it – but I have to get another dataplan going to test it – I use https://dataplans.digikey.com/ that has a 50Mbytes/month plans,1234567891011121314151617181920212223242526272829303132333435363738394041424344454647/ ==========================================================================// Wifi/Cellular Modem Options// ==========================================================================/** Start [xbee_cell_transparent] */// For any Digi Cellular XBee's// NOTE: The u-blox based Digi XBee's (3G global and LTE-M global) can be used// in either bypass or transparent mode, each with pros and cons// The Telit based Digi XBees (LTE Cat1) can only use this mode.HardwareSerial& modemSerial = Serial1; // Use hardware serial if possible#if defined STREAMDEBUGGER_DBG#include <StreamDebugger.h>StreamDebugger modemDebugger(modemSerial, STANDARD_SERIAL_OUTPUT);#define modemSerHw modemDebugger#else#define modemSerHw modemSerial#endif // STREAMDEBUGGER_DBG#include <modems/DigiXBeeCellularTransparent.h>const int32_t modemBaud = 9600; // All XBee's use 9600 by default// Modem Pins - Describe the physical pin connection of your modem to your board// NOTE: Use -1 for pins that do not apply// The pin numbers here are for a Digi XBee with a Mayfly and LTE adapter// For options https://github.com/EnviroDIY/LTEbee-Adapter/edit/master/README.mdconst int8_t modemVccPin = -1; // MCU pin controlling modem power// Option: modemVccPin = A5, if Mayfly SJ7 is// connected to the ASSOC pinconst int8_t modemStatusPin = 13; // MCU pin used to read modem status// NOTE: If possible, use the <code>STATUS/SLEEP_not</code> (XBee pin 13) for status, but// the CTS pin can also be used if necessaryconst bool useCTSforStatus = false; // Flag to use the CTS pin for statusconst int8_t modemResetPin = 20; // MCU pin connected to modem reset pinconst int8_t modemSleepRqPin = 23; // MCU pin for modem sleep/wake requestconst int8_t modemLEDPin = redLED; // MCU pin connected an LED to show modem// status// Network connection informationconst char* apn = "hologram"; // APN for GPRS connection// Create the modem objectDigiXBeeCellularTransparent modemXBCT(&modemSerHw, modemVccPin, modemStatusPin,useCTSforStatus, modemResetPin,modemSleepRqPin, apn);// Create an extra reference to the modem by a generic nameDigiXBeeCellularTransparent modem = modemXBCT;/** End [xbee_cell_transparent] */hello @zeke-holloman. Just looking through it, and yes thats my assumption at the moment is that its the cellular side that is not connecting.
There are 2 parts 1) getting internet & time 2) thingspeak.
1) If the cell phone connects for NIST time, then it can connect with the internet, and the cell modem account setting is good.2) if thingspeak then doesn’t connect its something to do with the account ino.
I’m just looking at your posted new file
The STREAMDEBUGGER_DBG is a bit strange, it should really be this
12345678910111213141516171819202122232425// ==========================================================================// Wifi/Cellular Modem Options// ==========================================================================// NOTE: Extra hardware and software serial ports are created in the "Settings// for Additional Serial Ports" sectionHardwareSerial& modemSerial = Serial1; // Use hardware serial if possible#if defined STREAMDEBUGGER_DBG#include <StreamDebugger.h>StreamDebugger modemDebugger(modemSerial, STANDARD_SERIAL_OUTPUT);#define modemSerHw modemDebugger#else#define modemSerHw modemSerial#endif // STREAMDEBUGGER_DBG//#define DigiXBeeCellularTransparent_Module#define DigiXBeeWifi_Module#ifdef DigiXBeeCellularTransparent_Module/** Start [xbee_cell_transparent] */// For any Digi Cellular XBee's// NOTE: The u-blox based Digi XBee's (3G global and LTE-M global) can be used// in either bypass or transparent mode, each with pros and cons// The Telit based Digi XBees (LTE Cat1) can only use this mode.#include <modems/DigiXBeeCellularTransparent.h>const int32_t modemBaud = 9600; // All XBee's use 9600 by defaultThe log you posted with some basic cell phone interface is looking very minimal. Possibly also compile it with
-DMS_DATAPUBLISHERBASE_DEBUG
-DMS_THINGSPEAKPUBLISHER_DEBUG-DSTREAMDEBUGGER_DBG
.
I was thinking of creating a branch off envirodiy (master) – and seeing if it can be referenced for an update to the cell phone interface so it can show more detail. Gotta try it out. -
AuthorPosts