Thanks for the comment, I saw the design you linked too, but as you say no code.
I am keen to keep such a program within a standard Arduino environment, and for me the least painfull way of doing that is perhaps a LMIC fork that does not expect the compiler to fix the datatype miss-matches.
I thought of trying to make the changes starting from a known working example, so I loaded up the Dragino TTN Mapper and whilst that sends LoRa packets through the gateway I have here it does not appear to be sending a join request.
One of the difficulties I am having is locating some documentation that explains what happens when nodes communicate with a Gateway, what packets are sent and received during the different join requests and normal data gathering and their respective formats.
I am not 100% sure because I did this clone a year ago, but likely I took this repo as a reference source and can’t remind if I had any difficulties of building it either for ESP8266 or ESP32 Arduino Core.
There is also a branch there that is known to run well on Raspberry Pi in command line environment.
That library produces the same missmatch as the other LMIC library I was using.
It shows as a compiler warning;
warning: invalid conversion from ‘uint8_t {aka unsigned char}’ to ‘xref2u1_t {aka unsigned char*}’ [-fpermissive]
I am not saying the ‘fix’ is difficult and you could claim that its only a warning and the compiler can make the ‘fix’ for you. But that is only the case if for the hardware you are using the -fpermissive flag is set, and it is not for ESP32 and ATMEAG1284. Not difficult to add the --fpermissive but it does involve a manual edit of a text file. Fixing the core issue seems to make more sense to me.
Just curious, when/where do you get this warning?:
– In Arduino IDE or PlatformIO?
– Using arduino-esp32 or esp32-idf?
– Do you get the warning only with Dragino TTN Mapper or also with the standard LMIC TTN examples?
I’ve been working with the M5Stack platform (ESP32-based) and just shared with you my work so far. I think it could be a great platform for all sorts of moving nodes, including a TTNMapper node.
I was wondering where the error occurs because I had not seen it with the LMIC TTN examples.
So the error occurs ‘only’ with the TTN Mapper programs(?).
Because they use LMIC-Arduino features that are not used by the LMIC TTN examples?
Looking at your v2.1 picture, I don’t see any wiring for the DIO pins like on earlier TTGO v2 or v1 devices.
Does that mean LMIC code will work without any wiring on the TTGO v2.1 or is it something specific to paxcounter?
You can use my ESP32 Paxcounter software, it has GPS support now. Just disable the counter features, then you have a ESP32 device ready to use for ttnmapper.
Well, I have a TTGO v2.1, I have flashed paxcounter v1.3.81 with PlatformIO, I choose the correct env_default = ttgov21 target in platformio.ini. I am getting an error when the device starts:
Well, we need a tool here, not a toy.
So, use PlatformIO, not Arduino IDE.
But, of course, you can taylor all the source files and libs by hand to your Arduino IDE and flash the ESP32 this way. That should work, but requires some work. With PlatformIO it’s less than 10 clicks.