I have a couple Muons, mostly working fine, been making a basic temp/humid sensor with them to test all the connectivity options. I want to eventually make them communicate over LoRaWAN.
I have spend a few days trying to get the blueprint to work, along with my own code and other simple examples.
I keep getting a couple things happening: the KG200Z to do much of anything. It will not appear on i2x, nor can I talk to it via UART.
The Muon is in m1e and works fine otherwise - ethernet, wifi, etc... all work fine.
Is there some physical thing I need to do to enable this KG200Z? Is there some confict I am inadvetanty stepping into with another device? All my other i2c devices are on different addresses and I can use them, so I know i2c is working.
I am kind of stumped...
Use I2C Scanner firmware to see if the chip is visible. It should be at address 0x61.
On power-up, the KG200Z is not connected to the I2C bus, but the blueprint should enable it.
- 3V3_AUX power must be enabled in order to power up the chip. That's done from app.cpp.
- The chip reset and bus select pins are controlled by the MCP23S17. This is in lib/lorawan/src/LoRaWAN.cpp
Make sure you haven't disabled any of this code accidentally.
The test timed out. The -160 timeout persists, indicating the KG200Z isn't responding. Checking if 3V3_AUX needs to be HIGH earlier or if there's a timing issue. In setup(), 3V3_AUX is set HIGH, so it should already be HIGH when we call lorawanBeginIfReady(). Verifying we're not toggling it unnecessarily:
3V3_AUX is already HIGH from setup(). The -160 timeout suggests the KG200Z isn't responding. Since the blueprint works, checking if Serial1 needs initialization or if there's a timing issue. Summary:
Test Results:
-
Keys set successfully (JoinEUI and AppKey)
-
testLorawan: -160 (timeout - KG200Z not responding)
-
lorawanJoin: -3 (begin failed)
Current Status:
The code matches the blueprint:
-
Uses std::move(conf)
-
Uses defaultDevEui()
-
Calls process() immediately after begin()
-
No delays after setting 3V3_AUX HIGH
-
Library matches (no 100ms delay)
Just to be sure I asked copilot to make sure I didn't do something to the blueprint. But it seems it is the same as my code.
What might I be doing wrong or not have setup right. This is a muon in an m1e on usb-c power. It is using Ethernet as well, which I am now wondering if that is the issue? Can I use both at once?