Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a8fe52fa0e | ||
|
|
eb4da9d637 | ||
|
|
a4c0c71e54 | ||
|
|
fcfc596506 | ||
|
|
59ce7ee44d |
@@ -31,5 +31,24 @@ Das sind die verwendeten Libraries [1]:
|
||||
| https://github.com/mcci-catena/SHT1x.git | be7042c | Tue, 20 Sep 2011 13:56:23 +1000 |
|
||||
|
||||
|
||||
Patch arduino-lmic, so initial SF10 is used initially:
|
||||
|
||||
`
|
||||
[joerg@cinnamon src]$ git diff
|
||||
diff --git a/src/lmic/lmic_bandplan_eu868.h b/src/lmic/lmic_bandplan_eu868.h
|
||||
index efff7d5..74efb37 100644
|
||||
--- a/src/lmic/lmic_bandplan_eu868.h
|
||||
+++ b/src/lmic/lmic_bandplan_eu868.h
|
||||
@@ -61,7 +61,7 @@ LMICeu868_isValidBeacon1(const uint8_t *d) {
|
||||
#undef LMICbandplan_isFSK
|
||||
#define LMICbandplan_isFSK() (/* RX datarate */LMIC.dndr == EU868_DR_FSK)
|
||||
|
||||
-#define LMICbandplan_getInitialDrJoin() (EU868_DR_SF7)
|
||||
+#define LMICbandplan_getInitialDrJoin() (EU868_DR_SF10)
|
||||
|
||||
void LMICeu868_setBcnRxParams(void);
|
||||
#define LMICbandplan_setBcnRxParams() LMICeu868_setBcnRxParams()
|
||||
`
|
||||
|
||||
`[1]:
|
||||
[joerg@cinnamon libraries]$ for i in Adafruit_BME280_Library Adafruit_Sensor arduino-lmic arduino-lorawan Catena-Arduino-Platform Catena-mcciadk MCCI_FRAM_I2C Q2-HX711-Arduino-Library SparkFun_Qwiic_Scale_NAU7802_Arduino_Library OneWire SHT1x ; do cd $i; echo "| $(git remote -v |grep fetch |awk '{print $2}' |tr '\n' ' ') | $(git log --pretty=format:'%h | %cD ' -n 1) |" ; cd ..; done`
|
||||
|
||||
+31
-11
@@ -704,6 +704,14 @@ void StartNewIteration() {
|
||||
gCatena.SafePrintf("looks like we timed out waiting for sending to finish...\n", wait_time);
|
||||
}
|
||||
LMIC_clrTxData();
|
||||
// we sleep 10 seconds...
|
||||
start_time = millis();
|
||||
while ((millis() - start_time) < 10000)
|
||||
{
|
||||
gCatena.poll();
|
||||
yield();
|
||||
}
|
||||
|
||||
send_in_progress = false;
|
||||
}
|
||||
wait_time = (uint32_t)((millis() - start_time) / 1000);
|
||||
@@ -755,6 +763,7 @@ void StartNewIteration() {
|
||||
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("LMIC.opmode just before Sleeping: %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
}
|
||||
|
||||
if (!fUsbPower) {
|
||||
@@ -765,6 +774,7 @@ void StartNewIteration() {
|
||||
|
||||
}
|
||||
else {
|
||||
if (! stop_iterations) {
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("light sleep; os_setTimedCallback for startNewIterationCb in %d...seconds\n", sleep_time_sec);
|
||||
}
|
||||
@@ -773,6 +783,7 @@ void StartNewIteration() {
|
||||
os_getTime() + sec2osticks(sleep_time_sec),
|
||||
startNewIterationCb);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void startSendingUplink(bool firstTime)
|
||||
@@ -803,15 +814,33 @@ void startSendingUplink(bool firstTime)
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("SendBuffer firstTime\n");
|
||||
}
|
||||
gLoRaWAN.SendBuffer((uint8_t*)&lora_data_first, sizeof(LORA_data_first), sendBufferDoneCb, NULL, fConfirmed, kUplinkPort);
|
||||
if (gLoRaWAN.SendBuffer((uint8_t*)&lora_data_first, sizeof(LORA_data_first), sendBufferDoneCb, NULL, fConfirmed, kUplinkPort)) {
|
||||
package_counter++;
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("LMIC.opmode just after SendBuffer (successful): %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
}
|
||||
}
|
||||
else {
|
||||
gCatena.SafePrintf("LMIC.opmode just before SendBuffer (failed): %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
}
|
||||
} else {
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("LMIC.opmode just before SendBuffer: %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
gCatena.SafePrintf("SendBuffer not firstTime\n");
|
||||
}
|
||||
gLoRaWAN.SendBuffer((uint8_t*)&lora_data, sizeof(LORA_data), sendBufferDoneCb, NULL, fConfirmed, kUplinkPort);
|
||||
if (gLoRaWAN.SendBuffer((uint8_t*)&lora_data, sizeof(LORA_data), sendBufferDoneCb, NULL, fConfirmed, kUplinkPort)) {
|
||||
package_counter++;
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("LMIC.opmode just after SendBuffer (successful): %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
}
|
||||
} else {
|
||||
gCatena.SafePrintf("LMIC.opmode just before SendBuffer (failed): %#x\n", LMIC.opmode);
|
||||
gCatena.SafePrintf("LMIC.globalDutyRate: %d, LMIC.globalDutyAvail: %d\n", LMIC.globalDutyRate, LMIC.globalDutyAvail );
|
||||
}
|
||||
}
|
||||
|
||||
ClearLoraData();
|
||||
@@ -890,15 +919,6 @@ void doSleepAlert(const bool fDeepSleep)
|
||||
}
|
||||
}
|
||||
|
||||
// we wait an extra five seconds...
|
||||
//uint32_t tNow = millis();
|
||||
//while (uint32_t(millis() - tNow) < 5000)
|
||||
//{
|
||||
// gCatena.poll();
|
||||
// yield();
|
||||
//}
|
||||
|
||||
|
||||
if (config_data.debug_level > 0) {
|
||||
gCatena.SafePrintf("Now it is safe to go to sleep\n");
|
||||
}
|
||||
|
||||
+1
-1
@@ -56,7 +56,7 @@ enum {
|
||||
|
|
||||
\****************************************************************************/
|
||||
|
||||
static const int32_t fwVersion = 20200601;
|
||||
static const int32_t fwVersion = 20200603;
|
||||
|
||||
static const byte INIT_PACKAGE_INTERVAL = 100; // send an init package every 100 packages;
|
||||
static const byte MAX_VALUES_TO_SEND = 8;
|
||||
|
||||
Reference in New Issue
Block a user