hi…i’m using rak-2245 gateway for 433mhz…
i am using rak gateway os in pi 3b+… from node to chirpstack server the data is receiving…
but i am working on reverse communication…
ie. from server to node , data is receiving in gateway but its not going to node (sx1276).
If you use the firmware provided by rak, can you tell me the version number of the gateway firmware you are using? You can use the command "gateway-version" to check the version
If you are not using rak firmware, can you provide the version number of chirpstack? You can use the command "dpkg -l | grep chirpstack" to check the version.
@Benix_10
Modify device-profile configuration.
I don’t understand the meaning of “factory-preset frequencies”, I set the “Channel Frequency” of EU433 here。
Maximum payload with respect to the datarate index. Cannot operate with repeater.
*/
static const uint8_t MaxPayloadOfDatarateEU433[] = { 51, 51, 51, 115, 242, 242, 242, 242 };
/*!
Maximum payload with respect to the datarate index. Can operate with repeater.
*/
static const uint8_t MaxPayloadOfDatarateRepeaterEU433[] = { 51, 51, 51, 115, 222, 222, 222, 222 };
/*!
\brief The function gets a value of a specific phy attribute.
\param [IN] getPhy Pointer to the function parameters.
\retval Returns a structure containing the PHY parameter. /
PhyParam_t RegionEU433GetPhyParam( GetPhyParams_t getPhy );
/*!
\brief Updates the last TX done parameters of the current channel.
\param [IN] txDone Pointer to the function parameters. /
void RegionEU433SetBandTxDone( SetBandTxDoneParams_t txDone );
/*!
\brief Initializes the channels masks and the channels.
\param [IN] type Sets the initialization type.
*/
void RegionEU433InitDefaults( InitType_t type );
/*!
\brief Verifies a parameter.
\param [IN] verify Pointer to the function parameters.
\param [IN] type Sets the initialization type.
\retval Returns true, if the parameter is valid. /
bool RegionEU433Verify( VerifyParams_t verify, PhyAttribute_t phyAttribute );
/*!
\brief The function parses the input buffer and sets up the channels of the
CF list.
\param [IN] applyCFList Pointer to the function parameters. /
void RegionEU433ApplyCFList( ApplyCFListParams_t applyCFList );
/*!
\brief Sets a channels mask.
\param [IN] chanMaskSet Pointer to the function parameters.
\retval Returns true, if the channels mask could be set. /
bool RegionEU433ChanMaskSet( ChanMaskSetParams_t chanMaskSet );
/*!
\brief Calculates the next datarate to set, when ADR is on or off.
\param [IN] adrNext Pointer to the function parameters.
\param [OUT] drOut The calculated datarate for the next TX.
\param [OUT] txPowOut The TX power for the next TX.
\param [OUT] adrAckCounter The calculated ADR acknowledgement counter.
\retval Returns true, if an ADR request should be performed. /
bool RegionEU433AdrNext( AdrNextParams_t adrNext, int8_t* drOut, int8_t* txPowOut, uint32_t* adrAckCounter );
/*!
Computes the Rx window timeout and offset.
\param [IN] datarate Rx window datarate index to be used
\param [IN] minRxSymbols Minimum required number of symbols to detect an Rx frame.
\param [IN] rxError System maximum timing error of the receiver. In milliseconds
The receiver will turn on in a [-rxError : +rxError] ms
\param [IN] rxConfig Pointer to the function parameters.
\param [OUT] datarate The datarate index which was set.
\retval Returns true, if the configuration was applied successfully. /
bool RegionEU433RxConfig( RxConfigParams_t rxConfig, int8_t* datarate );
/*!
\brief TX configuration.
\param [IN] txConfig Pointer to the function parameters.
\param [OUT] txPower The tx power index which was set.
\param [OUT] txTimeOnAir The time-on-air of the frame.
\retval Returns true, if the configuration was applied successfully. /
bool RegionEU433TxConfig( TxConfigParams_t txConfig, int8_t* txPower, TimerTime_t* txTimeOnAir );
/*!
\brief The function processes a Link ADR Request.
\param [IN] linkAdrReq Pointer to the function parameters.
\retval Returns the status of the operation, according to the LoRaMAC specification. /
uint8_t RegionEU433LinkAdrReq( LinkAdrReqParams_t linkAdrReq, int8_t* drOut, int8_t* txPowOut, uint8_t* nbRepOut, uint8_t* nbBytesParsed );
/*!
\brief The function processes a RX Parameter Setup Request.
\param [IN] rxParamSetupReq Pointer to the function parameters.
\retval Returns the status of the operation, according to the LoRaMAC specification. /
uint8_t RegionEU433RxParamSetupReq( RxParamSetupReqParams_t rxParamSetupReq );
/*!
\brief The function processes a Channel Request.
\param [IN] newChannelReq Pointer to the function parameters.
\retval Returns the status of the operation, according to the LoRaMAC specification. /
uint8_t RegionEU433NewChannelReq( NewChannelReqParams_t newChannelReq );
/*!
\brief The function processes a TX ParamSetup Request.
\param [IN] txParamSetupReq Pointer to the function parameters.
\retval Returns the status of the operation, according to the LoRaMAC specification.
Returns -1, if the functionality is not implemented. In this case, the end node
\brief The function processes a DlChannel Request.
\param [IN] dlChannelReq Pointer to the function parameters.
\retval Returns the status of the operation, according to the LoRaMAC specification. /
uint8_t RegionEU433DlChannelReq( DlChannelReqParams_t dlChannelReq );
/*!
\brief Alternates the datarate of the channel for the join request.
\param [IN] currentDr Current datarate.
\retval Datarate to apply.
*/
int8_t RegionEU433AlternateDr( int8_t currentDr );
/*!
\brief Calculates the back-off time.
\param [IN] calcBackOff Pointer to the function parameters. /
void RegionEU433CalcBackOff( CalcBackOffParams_t calcBackOff );
/*!
\brief Searches and set the next random available channel
\param [OUT] channel Next channel to use for TX.
\param [OUT] time Time to wait for the next transmission according to the duty
cycle.
\param [OUT] aggregatedTimeOff Updates the aggregated time off.
\retval Function status [1: OK, 0: Unable to find a channel on the current datarate] /
LoRaMacStatus_t RegionEU433NextChannel( NextChanParams_t nextChanParams, uint8_t* channel, TimerTime_t* time, TimerTime_t* aggregatedTimeOff );
/*!
\brief Adds a channel.
\param [IN] channelAdd Pointer to the function parameters.
\retval Status of the operation. /
LoRaMacStatus_t RegionEU433ChannelAdd( ChannelAddParams_t channelAdd );
/*!
\brief Removes a channel.
\param [IN] channelRemove Pointer to the function parameters.
\retval Returns true, if the channel was removed successfully. /
bool RegionEU433ChannelsRemove( ChannelRemoveParams_t channelRemove );
/*!
\brief Sets the radio into continuous wave mode.
\param [IN] continuousWave Pointer to the function parameters. /
void RegionEU433SetContinuousWave( ContinuousWaveParams_t continuousWave );
/*!
\brief Computes new datarate according to the given offset
\param [IN] downlinkDwellTime Downlink dwell time configuration. 0: No limit, 1: 400ms
You can manually end the chirpstack-ns service, and then start the chirpstack-ns service to the foreground.
1.sudo systemctl stop chirpstack-network-server.service
2./usr/bin/chirpstack-network-server -c /etc/chirpstack-network-server/chirpstack-network-server.toml
Then send data to the node on the web side. If the gateway does not receive txpk, please send me all logs of chirpstack-ns,Includes printing started by chirpstack-ns.