Skip to content

Releases: RAKWireless/RAK-STM32-RUI

RUI3 SDK release 3.4.2

25 May 08:53
Compare
Choose a tag to compare

[3.4.2] - 2022-05-18

Added

Changed

  • RUI-345: TX1 used as recovery pin causes problems on RAK3172/RAK4631 if a module is used that uses RX1/TX1
    • Add a new way to enter DFU mode: double clicking on reset button.
    • Remove button DFU mechanism that is triggered by UART1 TX pin.
  • Enable NFC.
  • Use single bank DFU instead of dual bank DFU to prevent factory default & user data being erased.

Fixed

  • RUI-377: AT+SLEEP command not working if AT+PRECV=0 is used.
  • RUI-347: [RUI API]If join network fails, the join packet is not sent again, even if api.lorawan.join is called again.
  • Fix I/O interrupt for RAK3172
  • RUI-405: Arduino BSP to support right code size after compilation
  • RUI-391: Arduino BSP reports wrong code size after compilation
  • Fix BLE crash after single clicking reset button.
  • Fix an issue that RAK12007 could not be displayed
  • Fix AT command permission of non-writable AT commands.

[3.4.1] - 2022-05-14

Added

  • Add RUI3-Sensor-Node example.

Changed

  • The maximum clock of SPI master is changed from 8MHz to 32MHz.
  • Change RUI BLE API name from api.ble.customer.xxx to api.ble.custom.xxx because "customer" is typo.
  • Force RUI sleep API to go back to sleep on any interrupt until the specified time period passed by.

Fixed

  • Fix erasing user config accidentally by RAK3172 bootloader.
  • RUI-377: AT+SLEEP command not working if AT+PRECV=0 is used.
  • RUI-372: Missing dtostrf declaration
  • RUI-239: [Dev]Refine the checksum mechanism of user configuration for RAK4631
  • RUI-371: RAK3172 Battery Measurement without AT+CLIVER command issue

[3.4.0] - 2022-05-08

Added

  • Support AS923-2/AS923-3/AS923-4.

Changed

  • If AT+PRECV=65534 is typed, the device will be set as RX mode until AT+PRECV=0 is typed.
  • If api.lorawan.precv(65534) is called, the device will be set as RX mode until api.lorawan.precv(0) is called.
  • If AT+PRECV=65533 is typed, the device will be set as RX mode, but still can do TX without typing AT+PRECV=0.
  • If api.lorawan.precv(65533) is called, the device will be set as RX mode, but still can do TX without calling api.lorawan.precv(0).
  • Enhance LoRa/LoRaWAN examples.
  • Temporarily disable NFC feature for RAK4630.

Fixed

  • Fix Arduino compatibility issues about I2C/SPI/UART/GPIO.
  • For RAK4630, fix AT+SLEEP crash issue.
  • Fix small input value issue of AT+SLEEP/api.system.sleep.all()/api.system.sleep.cpu()
  • RUI-239: [Dev]Refine the checksum mechanism of user configuration for RAK4631
  • RUI-334: BLE disconnect issue when over DFU upgrades
  • Workaround api.system.battery.get() by looking up a mapping table.

[3.3.1] - 2022-05-03

Added

Changed

  • Don't do GPIO de-initialization when sleeping.

Fixed

  • For RAK4631, delay 20 ms before calling pm_init().

[3.3.0] - 2022-04-29

Added

  • Support NFC when RUI3 SDK is used to customize firmware.
  • Add api.ble.stop().
  • Add api.system.timer.create()/api.system.timer.start()/api.system.timer.stop().

Changed

Fixed

  • Bug #838: ble stop, crash

RUI3 SDK release 3.2.0

25 Mar 08:29
Compare
Choose a tag to compare

[3.2.0] - 2022-03-24

Added

  • Support RAK3372.
  • Integrate low power UART with AT+SLEEP.
  • Support AT+ALIAS
  • Support AT command permission change.
  • AT+CHS supports EU868.
  • Add AT+CW command.
  • Add api.system.flash.get()/api.system.flash.set().

Changed

  • Add low power mode for RAK3372.
  • Enable LoRa class B for RAK3372.
  • Enhance AT+CERTIF command for LCT.
  • AT command format change:
    • Don't use space in the output response format
    • No data type in the async event.
    • Use ":" for in/output format and "," to dived different groups or sub-groups
    • command name must show at the begging of every response.
    • remove the redundancy such as space and string, which is not the value.
    • make every response in a single line.
  • Rewrite Arduino Interrupt example.
  • Change Serial2 to be Serial for RAK3172-E example.
  • Remove BLE dependent code from System Powersave example.
  • Enhance power-consumption of Smart Farm example.
  • For RAK3172, use RAM2 to avoid RAM shortage.
  • Remove the wrong design about wakeup source pin.
  • Assign WB_IO1 as another wakeup source for System Powersave example.
  • Optimize the power consumption of Smart Farm example.
  • Update variant.h for RAK4630/RAK3172/RAK3172-SiP
  • For RAK4631, Rewrite GPIO driver as event based driver.
  • For RAK4631, Add workaround in UDRV Powersave for Smart Farm example.
  • Use a compilation flag to turn off Transparent Mode.
  • Remove 5s delay in all the examples.
  • Remove LED operation in Smart Farm example.
  • Refine Smart Farm example to avoid program stuck in some condition.
  • For RAK4630, add one more UART console for it.
  • For RAK4630, disable NFC by default.
  • Remove RF test related RUI API.
  • Add AT command max length restriction.
  • Simplify the BLE UART example.
  • Disable FS related RUI API by default.
  • Add example annotation. Indentation modification.

Fixed

  • Bug #663: US915 at+chs join process and return AT_ERROR
  • Bug #667: RAK4631 US915/AU915 AT+CHS: Single Channel Mode doesn't work
  • Bug #668: [RAK3172] [DailyBuild.44] DUT uplnik in unexpected channels (US915)
  • Bug #670: [RAK3172] [DailyBuild.44] DUT response to confirmed downlink messages from unknown NS
  • Bug #639: RX2 and RXC abnormal in DR 10~13
  • Bug #645: DUT use confirmed uplink message type to response [Fpending = 1] and [Confirmed downlink] events.
  • Bug #675: [RAK3172] [DailyBuild.49] After change RX2 frequency by "RXParamSetupReq", downlinks via RXC will be failed.
  • Bug #669: [RAK3172] [DailyBuild.44] During processing continuous confirmed downlink, +BC: FAILED (259) message appears
  • Fix Smart_Farm example:
    • Fix the wrong usage of api.lorawan.rx2dl.get() because of unit change.
    • Remove BLE dependent code from Smart Farm example, so it can be compiled successfully on RAK3172-E.
  • Fix typo and refine RAKUnifiedApi.h.
  • Fix RAK3372 I2C can't change frequency.
  • Bug #678: [RAK3172][DailyBuild.60] Downlink via RX_B didn't work.
  • Bug #512: AnalogRead() return should be 0~1023
  • Fix timer bug inside LoRaMacNode
  • Bug #680: [RAK3172][DailyBuild.60] In class B, while uplink event engaging into beacon reserved period, DUT console return 'AT_ERROR'.
  • Bug #671: [RAK3172] [DailyBuild.44] Can't pass LCTT test cases
  • Bug #541: After manually enter DFU Mode, uploading firmware failed
  • Bug #681: [RAK3172] [beta 1] API mode的payload長度超過13bytes無法接收
  • Bug #682: [RAK3172] [beta 1] Sometimes, the response handler was not invoked
  • For RAK4630, rewrite UDRV/UHAL RTC to support wakeup by LoRa.
  • For RAK3172, fix UHAL ADC bug that causes flash cannot be accessed anymore.
  • For RAK3172, fix the crash caused by long at command input
  • Bug #634: "JOIN FAILED (3)" appeared in continuous join events
  • For RAK4630, fix LoRa downlink cannot work anymore if api.system.setup() is called.
  • Fix can't print floating point issue for Arduino IDE.
  • Fix hard-coding in all examples.
  • Fix variant.h according to RAK5005-O page of online document center.
  • For RAK4630, fix RX sensitivity issue by powering on antenna switch.
  • Bug #622: AT+BFREQ command return unexpected beacon frequency
  • For RAK4630, reduce the power consumption by disable LoRa interrupt.
  • Fix multi-line input problem.
  • Fix the ambiguity caused by the default value of api.system.sleep().
  • Fix AT Command buffer size for RAK3172.
  • Bug #708: BLE Uart cant modify ADV_NAME
  • Bug #713: BLE ADV name have error code
  • Bug #714: BLE System crash
  • Fix SDK can't be decompressed for Visual Studio.
  • Bug #728: [HW:RAK3172] Unexpected power consumption result after remove CH340 from DUT
  • Bug #683: AU915 CLASSA OTAA AT+CHS with AT_ERROR issue
  • Fix NFC examples can't compile on Arduino IDE
  • Bug #727: [HW:RAK3172SIP] Use Serial with Arduino IDE to do FW upgrade (rc1.76 to rc1.76), after re-powering join procedure shows TX timeout message
  • Fix Custom ATCMD example's ATCMD permission.
  • Bug #700: NFC received lack NLEN(2Bytes) and not type 4/2 tag(t2t/t4t) config?
  • Bug #736: [HW:RAK3172][api.system.sleep.setup()] wake-up from powersaving mode, system will stop if there is any input from serial_1.
  • Bug #749: [HW:RAK3172][Arduino Example: Arduino_Interrupt] attachInterrupt() fail
  • Bug #750: [HW:RAK3172][Arduino Example: Arduino_Interrupt] board crashe when use IO2
  • Bug #742: arduino export binary can't run
  • Bug #696: Arduino IDE export Hex file no bootload
  • Bug #737: [HW:RAK3172][Serial.lock()] we can only lock a serial which is in AT CMD mode, but doxygen does not show it.
  • Bug #738: [HW:RAK3172][Serial.lock()] when we lock a serial port, both two serial ports will be locked, and we can unlock both of them from either serial ports
  • Bug #745: [HW:RAK4631] System_Powersave crash
  • Bug #660: US915 CLASS C with ABP mode when disable gateway frame-counter issue
  • Bug #730: [Document error][Serial.readBytesUntil()] Serial.begin(11500, CUSTOM_MODE)
  • Bug #731: [Document error][Serial.readBytesUntil()] if (Serial.available > 0) {
  • Bug #732: [HW:RAK3172][Serial.readBytesUntil()] Get inputs form win11 teraterm, the API returns without matching either the terminator character or the length.
  • Bug #695: RuiV3 release not support NFC
  • Fix all the wrong usage of fallback handler in UHAL UART.
  • Fix RF test related AT+CW/AT+TRSSI/AT+TTONE/AT+TTX/AT+TRX/AT+TCONF/AT+TTH/AT+TOFF.
  • Fix AT+PWORD when password length is less than 8.
  • Fix AT+PRECV in API mode: Check network working mode before executing commands.
  • Fix unable to exit P2P receiving mode normally.
  • Bug #769: [ATCMD]2.16_AT+ALIAS: 'AT+ALIAS=中' will cause 'AT_ERROR' and empty previous value.
  • Bug #778: [ATCMD]6.8_AT+LPSEND : out of range input of “” and “” field, expected return is “AT_PARAM_ERROR”, but get “OK
  • Bug #779: [ATCMD]6.9_AT+RETY : out of range input than the upper bound, expected return id “AT_PARAM_ERROR”, but get “AT_ERROR”
  • Bug #784: [ATCMD]7.8_AT+RX1DL: The value range of AT+RX1DL (AT+RX2DL) in ATCMD DOC is 114 (215), however, the LoRaWAN SPEC defines the range = 115 (216).
  • Bug #767: The serial port defaults to CUSTOM_MODE in Arduino, but not in RUI
  • Bug #742: arduino export binary can't run
  • Bug #696: Arduino IDE export Hex file no bootload
  • Bug #747: [HW:RAK3172][Arduino Example: Arduino_Advance_IO] Compile error
  • Bug #748: [HW:RAK3172][Arduino Example: Arduino_Digital] Compile error
  • Bug #751: [HW:RAK3172][Arduino Example: Arduino_Serial] Serial is not re-enabled after executing Serial.end(). Unable to upload later.
  • Bug #752: [HW:RAK3172][Arduino Example: Arduino_Time] delayMicroseconds() cause the board to crash
  • Bug #753: [HW:RAK3172][Arduino Example: LoRaWan_P2P] Board crash when run example
  • Bug #763: [HW:RAK4631][Arduino Example: System_FS] Com port disappear
  • Bug #755: [HW:RAK3172][Arduino Example: System_ATCMD_Permission] API CHANGE_ATCMD_PERM can not use in AT+DEVADDR, AT+NETID, AT+HWID
  • Bug #740: LoRa & BLE system crash
  • Bug #764: Serial.readString function compile error
  • Bug #754: [HW:RAK3172][Arduino Example: System_Serial_Lock] api.system.pword.set(password) is not working
  • Bug #775: [ATCMD]4.3_AT+BAUD: Perform 'AT+BAUD=921600', then perform 'ATZ', DUT operate in [Baud Rate 115200] after 'ATZ', however, 'AT+BAUD=?' will return 921600.
  • Bug #782: [ATCMD]7.1_AT+ADR: Input 'ATZ' -> wait 10 seconds -> Input 'ADR=? -> wait 200ms -> Input 'AT+ADR=1' will return 'AT_ERROR'
  • Fix FSK mode parameter range
  • Bug #773: [ATCMD]4.2_AT+PWORD: 'AT+PWORD=中' will cause 'AT_ERROR'.
  • Bug #757: P2P AT+PBR & AT+PFDEV AT_PARAM_ERROR and SW stuck issue
  • Bug #778: [ATCMD]6.8_AT+LPSEND : out of range input of “” and “” field, expected return is “AT_PARAM_ERROR”, but get “OK”
  • Bug #808: [RAK4631] AT+NWM=0 Fail
  • Bug #793: [RAK4631] AT+NWM=0 Fail
  • Bug #772: [ATCMD]4.1_AT+LOCK: After lock ATCMD port by 'AT+LOCK=', then re-power DUT, DUT would be in un-locked status.
  • Fix using wrong linker script problem for Arduino IDE.
  • Fix the hang issue of Smart Farm example that is built by Arduino IDE.
  • Fix naming inconsistency of UART_MODE.