I recently bought this SAM R34 evaluation board from Tindie with hopes to get to know the processor before doing a custom HW implementation.
I ran into many shortcomings though. With the previous processors I was using Platformio and the Arduino framework.
I found that there are basically four options for programming this chip.
Microchip Studio with the AFS framework. This is the native for the chip. It works, but lacks documentation and has a steep learning curve. It would also cause problems for the software development if I decided to use STM or other platform in the future. As far as I can tell this is the only way (correct me if I’m wrong) to do advanced HW debugging with this chip.
Mbed OS. It works with the Mbed OS, but not with the official build, just this modified one. I could get the software to compile but it wasn’t possible for me to upload it with the Mbed Studio and when I uploaded the binary I didn’t get any results either. Even if the binary upload would work, there is no option for debugging.
The Arduino core for SAM R34 by Wiz-IO. This seems very nice but apparently is only able to upload programs using the EDBG chip found only on the SAM R34 Xplained Pro Evaluation Kit. There are some people that are saying this works with the RAK4260 (which is much closer to the board I have), but I couldn’t setup this.
The BastWAN Arduino core with this UF2 bootloader. I had the most success with this method. It was the only method using which I could compile, flash and debug (though only trough console printouts) my code. I quickly could get a direct LoRa link to work using the example Arduino code found here.The problem came when I tried to use LoRaWAN. I tried using 3 different libraries: TinyLoRa (which I used with the previous HW), Beelan-LoRaWAN and Arduino LMIC. With TinyLoRa, the code acted as if everything was working alright. I even got the very same debug messages (register writes and reads) as with a healthy SX1276 circuit. I received nothing on the TTN console though. I tried both OTAA and ABP and checked all adresses about 10 times. Beelan-LoRaWAN also acts as is if it were transmitting, but there are not register writes and reads happening. Arduino LMIC just bricks the processor and I have to reflash the bootloader using SWD.
Does anyone use any of these frameworks successfully and can give me a hint about what I’m doing wrong? Thanks.