<environment>
- Windows10
- modem fw v1.2.0
- nrf v1.3.0
I try to get mnc and mcc data but no luck. Any help?
#include <zephyr.h> #include <string.h> #include <stdio.h> #include <modem/modem_info.h> #include <modem/lte_lc.h> void main() { int ret; char rx_buf[MODEM_INFO_MAX_RESPONSE_SIZE]; u16_t rx_buf_short; // Connect LTE first printk("LTE Link Connecting ...\n"); ret = lte_lc_init_and_connect(); if(ret < 0){ printk("Error: lte_lc_init_and_connect\n"); return; } else { printk("LTE Link Connected!\n"); } // Init modem info ret = modem_info_init(); if(ret < 0){ printk("Error: modem_info_init\n"); return; } // Get cell ID => this is successful ret = modem_info_string_get(MODEM_INFO_CELLID, rx_buf, MODEM_INFO_MAX_RESPONSE_SIZE); if(ret < 0){ printk("Error: MODEM_INFO_CELLID\n"); return; } else { printk("MODEM_INFO_CELLID = %s\n", rx_buf); } // Get MCC => Fail ret = modem_info_short_get(MODEM_INFO_MCC, &rx_buf_short); if(ret < 0){ printk("Error: MODEM_INFO_MCC\n"); return; } else { printk("MODEM_INFO_MCC = %u\n", rx_buf_short); } // Get MNC => Fail ret = modem_info_short_get(MODEM_INFO_MNC, &rx_buf_short); if(ret < 0){ printk("Error: MODEM_INFO_MNC\n"); return; } else { printk("MODEM_INFO_MNC = %u\n", rx_buf_short); } // Get TAC(tracking area code) => this is successful ret = modem_info_string_get(MODEM_INFO_AREA_CODE, rx_buf, MODEM_INFO_MAX_RESPONSE_SIZE); if(ret < 0){ printk("Error: MODEM_INFO_AREA_CODE\n"); return; } else { printk("MODEM_INFO_AREA_CODE = %s\n", rx_buf); } return; }
I also tried it using modem_info_params_init and modem_info_params_get, but modem_info_params_get causes an error -11.