2017-04-05 01:40 PM - last edited on 2023-08-16 02:37 AM by Amelie ACKERMANN
Posted on April 05, 2017 at 22:40
LoRa Discovery Kit
STM32L072 and LoRa Discovery Kit featuring Open LoRa module by Murata using STM32L072CZY6TR MCU
http://www.st.com/en/evaluation-tools/b-l072z-lrwan1.html
Features
The AT_Slave example (creates AT modem via ST-LINK VCP) is about 41KB in size
2018-04-21 02:46 AM
Up,
it gets a little away from the topic but you can find a great project loraserver totally free and with a good support, in my point of view this is a great opportunity to develop his own loraserver, it allows to handle and understand the behavior of all end-nodes available on his network
Thank you @Brocaar
2018-06-12 02:40 PM
Great post and thread! Hoping someone an point me to where in the Discovery example code for End Node the US 915 HYBRID sub band channel frequencies are defined? I have successfully connected with a gateway that utilizes Band0, however, I mainly run on TTN and need to make work on Band1 channels 8-15. Any help pointing me to documentation on this item would be greatly appreciated.
2018-06-12 03:30 PM
The build model is set in the Compiler's Command Line Defines, in Keil this is under the C/C++ configuration/options tab.
\STM32CubeExpansion_LRWAN_V1.1.1\Middlewares\Third_Party\Lora\Mac\region\RegionUS915-Hybrid.c
\STM32CubeExpansion_LRWAN_V1.1.1\Middlewares\Third_Party\Lora\Mac\region\RegionUS915-Hybrid.h
/*!
* LoRaMAC channels*/static ChannelParams_t Channels[US915_HYBRID_MAX_NB_CHANNELS];/*!
* LoRaMac bands*/static Band_t Bands[US915_HYBRID_MAX_NB_BANDS] ={ US915_HYBRID_BAND0};/*!
* LoRaMac channels mask*/static uint16_t ChannelsMask[CHANNELS_MASK_SIZE];/*!
* LoRaMac channels remaining*/static uint16_t ChannelsMaskRemaining[CHANNELS_MASK_SIZE];/*!
* LoRaMac channels default mask*/static uint16_t ChannelsDefaultMask[CHANNELS_MASK_SIZE];2018-06-12 11:52 PM
Hello Clive,
You mean, you have ported the end-node code (STM32CubeExpansion_LRWAN_V1.1.x) to the Grasshoper board?
you also talk about TCXO, but this oscillator is only used with sigfox (UNB) protocol right?
Another question plz,
The 5 dBi antennas regarding the end-node or the gateway? Could you give us a link about this antenna?
Ok, I read this (from hackaday.io so Grasshoper project):
Traditional tool chains can still be used for programming via the exposed SWD port using ST-Link and Keil, IAR, Crossworks, or GCC/Eclipse, if desired, but programming via the Arduino IDE is the intent.
Thank you so much
2018-06-13 06:19 AM
The Murata part isn't hard to migrate, I moved my application from the DISCO to the Grasshopper, dealing with the pin specific differences.
The TCXO is used by the Murata for LoRa, it is more expensive than a crystal, and it's there to provide tight frequency and increase the sensitivity of the receiver. The Murata module should be able to loop back the clock to run the STM32L0, rather than HSI/MSI, the wiring of OSC_OUT on the Grasshopper provided issues, the behaviour of the L0 with HSE_BYPASS at 32 MHz was also a problem, if think it's an errata, but didn't seem to get much traction, so just reported it as something I observed so others seeing the same wouldn't waste man-days chasing it.
The antenna's were an eBay special, I don't have a part♯, I used them a the base, and rover. They helped more on the rover side, which was a vehicle, and allowed me to cable/mount in a manner that broke the roof-line.
I did manage to demonstrate 14Km LoS with the base using the stock antenna, beaconing a signal, and a rover with the 5 dBi.
2018-06-13 07:50 AM
Ok, I saw that TXCO_OUT and VDD_TCXO was directly connected to OSC_IN and OSC_OUT, so I have to manage this part directly in my program with RCC management
Do you know if it's possible to delete properly this conection in order to use HSI instead TCXO as clock source?
Here a brief configuration of RCC:
Thank you.
2018-06-13 08:51 AM
Most of the examples use the MSI to clock the L0, the default usage of the TCXO is for the radio, where it matters. I'd imagine one reason to use it on the L0 is to reduce start time, and skip the PLL.
Might be hard to get 8 MHz HSE, would need to fiddle with board jumpers or solder-bridges on DISCO
2018-06-13 09:17 AM
ISTR that the TCXO is quite power hungry.
In many use cases, minimising power consumption is key - so you'd only want the TCXO on when you actually need it.
Which is probably also the reason for using MSI for the L0 ...
2018-06-13 12:14 PM
LoRa Discovery Kit
No doubt, one would also need to go over the stack so it turns it on/off properly.
In some of my uses cases it is important the radio is listening, and not in one of several states where it will completely miss the transmissions.
I'd be interested if you perceive any other use cases where clocking the L0 with the 32 MHz TCXO would be useful.
2020-06-03 12:50 PM
In later board examples it becomes apparent that the PA4/PA5 pins need to loop externally to connect DBG_SX1276_DIO5/DIO4 if you want to use those as interrupt signalling sources.
They are free for ADC, DAC or general usage.
I use USART1/USART2 in my application. I can use PA0 UART4_TX as a debug/telemetry output channel, and SWDIO/SWCLK can be used as a UART also via LPUART1 on PA13/PA14