• AVR Freaks

Interrupt RN2483 sleep

New Member
  • Total Posts : 6
  • Reward points : 0
  • Joined: 2016/05/18 03:25:58
  • Location: 0
  • Status: offline
2016/05/19 23:22:04 (permalink)

Interrupt RN2483 sleep

The Module Ccommand Reference Users Guide (par. 1.4, page 12) describes how to interrupt the sleep mode of the RN2483:

The baud rate can be changed by triggering the auto-baud detection sequence of the module. To do this, the host system needs to transmit to the module a break condition followed by a 0x55 character at the new baud rate. The auto-baud detection  mechanism can also be triggered during Sleep to wake the module up before the predetermined time has expired.
A break condition is signaled to the module by keeping the UART_RX pin low for longer than the time to transmit a complete character. For example, at the default baud rate of 57600 bps keeping the UART_RX pin low for 938 us is a valid break condition, whereas at 9600 bps this would be interpreted as a 0x00 character. Thus, the break condition needs to be long enough to still be interpreted as such at the baud rate that is currently in use.

I tried to implement this on an TI MSP430 using the Energia (Arduino clone) framework:

[reset, init, OTA, etc]
// Enter sleep mode for 20 seconds
Serial.print("sys sleep 20000\r\n");
// Sleep the MCU for 3 seconds
/* Wakeup the LoRa modem */
// Start break signal on MCU TX pin
digitalWrite(P1_2, LOW);
// Wait a while
// Restart serial communication
// Send magic break character (auto bauding)

// Test RN2483 communication
Serial.print("sys get ver\r\n");
// Read data -> nothing is received

Entering sleep mode on the RN2483 works fine, I see power consumption drop dramatically but the device does not respond after issuing the break command. Is my break implementation correct? Does anyone have a working code snippet? Thanks!
post edited by Styno - 2016/05/20 02:37:54
Jump to:
© 2021 APG vNext Commercial Version 4.5