Power mode settings for Simultaneous RFID Reader - M7E Hecto

Hello,

First time posting on this forum, please let me know if I’m posting in the wrong section or if there is missing information.

We are working on a system to read UHF RFID tags when triggered by a PIR sensor. The goal would be to have a few readers with very low idle power consumption, when not scanning for tags. We are using a customised ATmega4809 board with the ability to sleep very efficiently.

With the previous version of the SparkFun Simultaneous RFID Reader board that used ThingMagic M6E Nano, there was the option to put the module in “Maximum saving mode” (see below the section in the old library file):

That was very promising and it worked well in initial tests, but the old version of the boards being discontinued, we moved to the Simultaneous RFID Reader - M7E Hecto.

However, I haven’t found the option to put the board in power saving mode in the new library files.

Is there a reason for this? Is it causing some issue with the new version of the ThingMagic module? Reading the documentation for the ThingMagic M7E Hecto, it looks like the new module still has the ability to be put into different power mode settings (link to the user guide below - the relevant section is “8.10 Power Management”).

Please can you provide advice on this? Thanks in advance for any help.

Xavier

The M7E reacts the same as M6E. It seems that sleep mode was added completely. If you plan to use that case set mode = 4.

I have changed my code to

/* SPECIAL ADD / February 2020 / Update M7E September 2025*

  • Set powerMode :
  • 0 = Full Mode
  • 1 = Minimal saving mode.
  • 2 = Medium saving mode.
  • 3 = Maximum saving mode.
  • 4 = POWER_MODE_SLEEP (M7E only)
  • M6E: PowerMode.SLEEP is not supported when using the USB interface.
  • Using the setting PowerMode.MEDSAVE is the same as SLEEP.
  • M7E : PowerMode.SLEEP – This mode essentially shuts down the digital
  • and analog boards, except to power the bare minimum logic required
  • to wake the processor. This mode may add up to 40 ms of
  • delay from idle to RF on when initiating an RF operation.
  • NOTE :
  • Maximum Saving Mode only supports communications at 9600 baud*/bool RFID::setPowerMode(uint8_t mode){if(mode > 4) return false;

// see above remarks

if (_moduleType == ThingMagic_M6E_NANO && mode == 4) mode = 2;

sendMessage(TMR_SR_OPCODE_SET_POWER_MODE, &mode, sizeof(mode));

// Good response

if (msg[0] == ALL_GOOD) return true;

return false;}

1 Like

Brilliant, thank you very much for your reply!