Marc Barker Digs Out Undocumented Commands for the Neoway M590, Finds 2mA Low-Power Mode
Digging around in the inner workings of the M590, Marc Barker has uncovered some very handy undocumented commands.
Designer and electronics hobbyist Marc Barker has been poking around the low-cost Neoway M590 GPRS cellular radio module, with a view to digging out features that for some reason aren't publicized by its creator β including a hidden low-power mode drawing just 2mA.
"If you're in country where 2G is still supported, the Neoway M590 is dirt-cheap (around $1 or less) and in terms of bang-for-buck you just can't go wrong with it," writes Barker of what attracted him to playing with the module in the first place. "This project is finding what the M590 is capable of. What's for sure it can do far more than what the manufacturer says it does in their documents. Try out these fun undocumented commands and see for yourself."
Impressively, Barker has already been able to pull out a considerable amount of hidden functionality not mentioned in the product's documentation. While some are more basic β like the command AT+CSGT=1, used to set a boot-up welcome message, or AT+CMEE=2 for verbose error messages β others have considerable potential for improving the device's functionality in a range of projects.
"[The module] can go into low-power mode (while still online) to about 2.0mA and be woken up using the DTR line or incoming call," Barker writes of one such hidden function. "That's a LONG time running off a single LiPo cell. It can connect to a server with TCP, or in other words establish a live real time connection.
"[It] can do Internet DNS lookup of a domain name, uses the resulting IP address to connect to a FTP server and then sends or downloads files including viewing server directory contents. It can answer a voice-type call and send and receive DTMF tones through the connection. It can see the incoming call's number before answering."
Other tricks Barker has been able to winkle out of the module include AT+CIND? to report details including battery charge levels, AT+CGED? for detailed GSM diagnostics data, and even a system for sending a simple trigger command to an M590 without being charged: "Call the M590 number as a regular voice call. The M590 says "RING" on its TXD port, plus the calling number (if you enabled it)," Barker explains. "Send command ATH, call is rejected. Now you have a trigger for a software function without being charged for call. Such as reporting back operating status to the number that just called it."
A full list of thus-far discovered previously-undocumented commands, and some guides for using them, can be found on Barker's project page.