Category Archives: Support

How to Reset or Reboot MOBITEK S80 Modem on an Interval

  1. The reset command “AT+WRST” can be issued in either hyper terminal or QCOM.
  2. When MOBITEK S80 modem is reset/reboot:-
    • the state of QCOM as follows:-
      • “Close Port” button turn to “Open Port”
      • “Send Command” and “Run” buttons are greyed out
      • No command can be send out
    • the state of Red LED status as follows:-
      • stop blinking
      • turn off
      • turn on
      • blinking
      • all the above completed in less than 10 seconds
    • SMS Engine — Enterprise Edition is able to re-initialize the modem

 

TEST RESULT

TEST OBJECTIVE TESTING METHODOLOGY TEST RESULT
Can MOBITEK S80 support schedule reboot? E.g. reboot on 1 p.m. every day? Not applicable
Can MOBITEK S80 reboot every 3 minutes? AT+WRST?

+WRST: 0

OK
AT+WRST=1,”000:03″

OK
AT+WRST?

+WRST: 1,”000:03″,”000:03″

OK

The reset is set to start at “15:46”. By right the port will disconnect at:

  • 15:49
  • 15:52
  • 15:55

The state of QCOM when the modem disconnect:

  • “Close Port” button turn to “Open Port”
  • “Send Command” and “Run” buttons are greyed out
  • No command can be send out

At “15:49” the port closed (below s.c. is taken around 1 minute late).

Open the port again at “15:51”. At “15:52” the port closed (below s.c. is taken around 1 minute late).

Can SMS Engine — Ent. Ed. re-initialise MOBITEK S80 Modem after modem is reset?
  1. Stop the service/engine
  2. Use hyper terminal instead of QCOM ( because during remote support, you will use hyper terminal)
  3. Set the modem to reset every 3 or 5 minutes (AT+WRST=1,”000:03″)
  4. Start the service/enigne
  5. Check the log file, it should show that “GSM modem not connected” every 3 minutes then follow by “Modem ID 1 initialized”.

Not sure how frequent the engine will check for the modem’s connection. The reset duration happen in less than 10 seconds. Probably it missed the checking:

  • between 17:10 – 17:19
    • status missing at 17:13
    • status missing at 17:16
  • between 17:19 – 17:28
    • status missing at 17:22
    • status missing at 17:25

The last 3 “initialized” status show the disconnect interval are 3 minutes.

When modem is reset, what is the status of LED?
  1. Open Hyper Terminal, enter AT+WRST=1,”000:03″ command
  2. Start the engine
  3. Monitor LED status
Red LED status when the modem reset (less than 10 seconds):

  • stop blinking
  • turn off
  • turn on
  • blinking

 

AT+WRST

AT+WRST only has the <MODE>,<DELAY>,<REMAINTIME>:

Issued: AT+WRST=1,"000:03"

Response: +WRST: 1,"000:03","000:03"

  • 1 = enable reset
  • “000:03” = reset every 3 minutes interval
  • “000:03” = countdown for the next reset (3 minutes). this countdown is still active even the port is disconnected.

Means:

  • AT+WRST is not able to do schedule reboot as we can’t specify the schedule time for the reset
  • AT+WRST is able to reset at any interval, i.e.: every 3 minutes
  • need to connect to the port again after every reset
  • the reset setting is always saved in the module even after every reconnection unless “AT+WRST=0” is issued

How to Send MMS Using MOBITEK Q25 Modem

Note:-

  1. The correct AT commands for sending MMS is saved in “X:\Reports by Trainees\Taufiq\A20-T-30-4G Modem (Q25)\MMS\MMS Script.ini”.
  2. The MMS settings (AT+QMMSCFG=”mmsc”, AT+QMMSCFG=”proxy, etc.) cannot be saved using “AT&W”, the settings must be re-set after modem is rebooted.
  3. Must use QCOM instead of Hyper Terminal to upload image file.
  4. When MMS is successfully send, the response is “+QMMSEND: 0,200”

 

AT COMMANDS FOR MMS

Note: This script is located in “X:\Reports by Trainees\Taufiq\A20-T-30-4G Modem (Q25)\MMS\MMS Script.ini”. It must be executed one-by-one because the delay time is not set. Load the script in QCOM to use it. The MMS Settings used is MAXIS’s MMS Settings:

AT COMMAND DESCRIPTION
AT+CPIN? To enter a password or query whether or not the module requires a password.

If the reply is “+CPIN: READY”, meaning the module is not pending for any password.

AT+QICSGP=1,1,”unet”,”maxis”,”wap”,1 Configure parameters of a TCP/IP context.

AT+QICSGP=<contextID>,<context_type>,<APN>,<username>,<password>,<authentication>

AT+QIACT=1 Activate a PDP context.
AT+QIACT? OPTIONAL.

Return the list of the current activated contexts and their IP addresses:

+QIACT: 1,1,1,”100.66.207.181″

+QIACT: <contextID>,<context_state>,<context_type>,<IP_address>

AT+QMMSCFG=”contextid”,1 Set the PDP context ID.
AT+QMMSCFG=”contextid” OPTIONAL.

Query the PDP context ID.

+QMMSCFG: “contextid”,1

AT+QMMSCFG=”mmsc”,”http://172.16.74.100:10021/mmsc” Configure the URL of MMSC.
AT+QMMSCFG=”mmsc” OPTIONAL.

Query the URL of MMSC.

+QMMSCFG: “mmsc”,”http://172.16.74.100:10021/mmsc”

AT+QMMSCFG=”proxy”,”202.75.133.49″,80 Configure the proxy address and port of MMSC
AT+QMMSCFG=”proxy” OPTIONAL.

Query the proxy address and port of MMSC.

+QMMSCFG: “proxy”,”10.0.0.172″,80

AT+QMMSCFG=”sendparam”,6,2,0,0,2,4 Configure the sending parameters.

AT+QMMSCFG=”sendparam”,<valid>,<pri>,<sendrep>,<readrep>,<visible>,<class>

AT+QMMSCFG=”sendparam” OPTIONAL.

Query the sending parameters.

+QMMSCFG: “sendparam”,6,3,0,0,2,4

AT+QMMSEDIT=1,1,”+60174616341″ Add a phone number as a recipient.
AT+QMMSEDIT=1 OPTIONAL.

Query the recipient phone number.

AT+QMMSEDIT=1,1,”+60174616341″

AT+QMMSEDIT=4,1,”Test MMS” Edit the title of the MMS message.
AT+QMMSEDIT=4 OPTIONAL.

Query the title of the MMS message.

+QMMSEDIT: 4,”ASCII”,”Test MMS”

AT+QFUPL=”RAM:MOBITEK.jpg”,58773,60 Upload a file to RAM. The file will be saved as “MOBITEK.jpg” and the maximum size of file is 7708 bytes. 60 indicates timeout value, and 1 indicates ACK mode.

Wait for:

CONNECT

Then select the file to upload and click “Send File”:

The response after the file successfully uploaded:
+QFUPL: 7708,8fd3

AT+QFLST=”RAM:*” OPTIONAL.

Query all files in RAM.

+QFLST: “RAM:MOBITEK.jpg”,7708

AT+QMMSEDIT=5,1,”RAM:MOBITEK.jpg” Add attachments for the MMS message.
AT+QMMSEDIT=5 OPTIONAL.

Query the attachments.

+QMMSEDIT: 5,”RAM:MOBITEK.jpg”

AT+QMMSEND=5000 Send the MMS message.
AT+QFDEL=”RAM:*” Delete the RAM file.

Query all files in RAM.

AT+QFLST=”RAM:*” OPTIONAL.
AT+QMMSEDIT=0 Clear the content of the MMS message.
AT+QMMSEDIT=1 OPTIONAL.

Query the recipient phone number.

AT+QMMSEDIT=4 OPTIONAL.

Query the title of the MMS message.

AT+QMMSEDIT=5 OPTIONAL.

Query the attachments.

 

Enable VT-x in HP Compaq Elite 8300 if VirtualBox Unable to Run or Unable to Save Any Setting

Problem: Oracle VirtualBox does not allow the setting of a virtual machine to be saved as the “OK” button is disabled (grey out).

  1. Unable to save setting in VirtualBox in HP Compaq Elite 8300:-
  2. This error message will appear when running the virtual machine:-
    VT-x is disabled in the BIOS for all CPU modes
    (VERR_VMX_MSR_ALL_VMX_DISABLED

 

Solution: enable VT-x in BIOS of HP Compaq Elite 8300.

  1. Restart the PC, enter F10 to enter BIOS.
  2. Under the “Security tab, use the up and down arrows to select “System Security, and then press Enter.
  3. Use the up and down arrows to select “Virtualization Technology (VTx), then use the left and right arrows to select either “Enabled or “Disabled as desired.

Source: https://support.hp.com/my-en/document/c04760917

How to Rename VB.Net Project

  1. Open the project’s root folder.
  2. In Windows Explorer, right-click on project’s Main solution (.sln) → “Rename”.
  3. Open the project in Visual Basic. In “Solution Explorer”, right-click on project → “Rename”.
  4. In “Solution Explorer”, right-click on project → “Properties” → goto “Application” tab, rename “Assembly name” and “Default namespace” to match the project’s name.
  5. If you wish to also rename the namespace, open one of your class files. Right click the namespace →”Rename…. ” This should search and replace all references to your namespace throughout the project.
  6. Close the project. Delete the old “Solution User Option” (.suo).
  7. In Windows Explorer, right-click on project’s subfolder → “Rename”.
  8. Edit the .sln file and change the path of “.vbproj”.

Source: https://stackoverflow.com/questions/211241/how-can-i-rename-a-project-folder-from-within-visual-studio

Total Records Updated in the Tables of E-Mail Subscribers v. 4.4.8

Upon executing this SQL Statement:-

UPDATE `wp_ig_contacts`
INNER JOIN `wp_ig_lists_contacts` ON `wp_ig_contacts`.`id` = `wp_ig_lists_contacts`.`contact_id`
SET `wp_ig_contacts`.`updated_at` = "2021-07-06", `wp_ig_lists_contacts`.`status` = "unsubscribed"
WHERE `wp_ig_contacts`.`email` IN (SELECT `email` FROM `wp_ig_contacts_returned`)

 

If 1 email address belong to 1 group then 2 records will be updated:-

  • 1 record in table “wp_ig_contacts” will be updated with `updated_at` = "2021-07-06"
  • 1 record in table “wp_ig_lists_contacts” will be updated with `status` = "unsubscribed"

If 1 email address belong to 2 groups then 3 records will be updated:-

  • 1 record in table “wp_ig_contacts” will be updated with `updated_at` = "2021-07-06"
  • 2 records in table “wp_ig_lists_contacts” will be updated with `status` = "unsubscribed"

How to Solve “BadImageFormatException”

Applies to: SMS API v. 9.2 in Visual Studio Community 2019 and Windows Server 2019 64-bit

Problem: when SMS API v9.2 sample program in run in debug mode, Visual Studio Community 2019 always give this error :-

Inner Exception 1:

BadImageFormatException: Could not load file or assembly ‘Interop.MobitekSMSAPI9, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null’ or one of its dependencies.

This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

Solution: change the “Target Framework” of the project to “.NET Framework 4” with these steps:-

  1. Migrate the project “SMS API v. 9.2” to open in Visual Studio 2019.
  2. Open the project. Go to the project “Properties”. In “Application” tab, change the “Target framework” to “.NET Framework 4”.
  3. You will get below warning after changing the “Target framework”. Just click “Yes”.
  4. Close and reopen the project.
  5. Click “Start” button to start debugging the project. Please allow some times for the project to be built.
  6. After the project has completely built, try to click all menus and buttons to see if the problem occur again.