Guralp Systems Limited
MAN-MIN-0001 - Güralp Minimus - Technical Manual
Section Index: 7.1 Reset all settings during boot phase

Chapter 7. Advanced troubleshooting

In the unlikely event of the user experiencing problems with the operation of the Minimus, a diagnostics tool is available via the GNSS connector. This connector provides a serial console which can be accessed using a terminal emulator.

The user should first plug in the serial adapter to the GNSS connector, which is then attached to a 9-pin COM port on your PC/laptop (if a 9-pin COM port is not available, a serial-to-USB converter should be used instead and connected to an available USB port. Güralp recommend converters based on the FTDI chip-set.)

A connection is then made using a terminal emulator, such as minicom under Linux or PuTTY under Windows. The appropriate COM port should be entered as the "Serial line", and the "Speed" should be set to 115200.

Next, select “Serial” from the bottom of the Category menu in the left-hand pane and check that the settings match those shown in the screen-shot below.

Finally click the button and a terminal window will open, connected to the console of the Minimus.

In the event of any operational issues, the Güralp Support Team may request you to interact with the console in order to diagnose and fix problems.

7.1 Reset all settings during boot phase

The Minimus can be reset to its factory settings during its boot-up stage. This is useful in cases where the user is not able to communicate with the Minimus via a network connection, where the unit is not responsive, or where it does not appear in the Discovery software’s scan results.

To carry out a full system reset, connect to the terminal port via a serial connection (as described in Section 7). During the middle part of the boot phase, when the text @GURALP SYSTEMS and the firmware version number is displayed, key + . This causes all settings (except Username, Password and Bluetooth PIN) to revert to their factory default values, and the Minimus will re-boot. It may be necessary to enter this key combination several times.

A typical boot log is shown below, identifying the stages where + will cause the Minimus to reset and re-boot.

Do not press any buttons during the first phase of boot-up:

Rebooting system, please wait...

00000101

0000c1c1▒RomBOOT

SCKC_CR = 0xA, CKGR_MOR = 0x100FF0A, CKGR_PLLAR = 0x20FDD101, PMC_MCKR = 0x1122, PIO_PDSR = 0xF13F7C65

SCKC_CR = 0xA, CKGR_MOR = 0x100FF0A, CKGR_PLLAR = 0x21403F01, PMC_MCKR = 0x1302, PIO_PDSR = 0xF13F7C65

AT91Bootstrap v3.8.10-1.guralp

NAND: ONFI flash detected

NAND: Manufacturer ID: 0x2C Chip ID: 0xDA

NAND: Page Bytes: 2048, Spare Bytes: 64

NAND: ECC Correctability Bits: 4, ECC Sector Bytes: 512

NAND: Disable On-Die ECC

NAND: Initialize PMECC params, cap: 4, sector: 512

NAND: Image: Copy 0x92000 bytes from 0xE000 to 0x2FA0E000

NAND: Done to load image

SCKC_CR = 0xA, CKGR_MOR = 0x100FF02, CKGR_PLLAR = 0x21403F01, PMC_MCKR = 0x1302, PIO_PDSR = 0xF23F7C65

U-Boot v2019.10-1.guralp

CPU: SAMA5D36

External clock: 12.288 MHz

CPU clock: 497.664 MHz

Master clock: 165.888 MHz

DRAM: 256 MiB

NAND: 256 MiB

MMC: Atmel mci: 0, Atmel mci: 1

Loading Environment from NAND... OK

In: serial

Out: serial

Err: serial

Net: eth0: ethernet@f0028000

word at 0xffffea20 (0x06) != word at 0x23000008 (0x07)

Total of 0 word(s) were the same

PHY 0x07: OUI = 0x0885, Model = 0x22, Rev = 0x02, 10baseT, HDX

Hit any key to stop autoboot: 0

NAND read: device 0 offset 0x5C0000, size 0x360000

3538944 bytes read: OK

Uncompressed size: 5008508 = 0x4C6C7C

crc32 for 21000000 ... 214c6c7b ==> 6f7d4b5e

Total of 2 word(s) were the same

word at 0xffffea20 (0x06) != word at 0x23000008 (0x07)

Total of 0 word(s) were the same

## Starting application at 0x00300000 ...

(boot)Crash Info###

Number of crash left=0

(boot)Last crash time:1970-01-01T00:00:00.000

Board type set to: Minimus

Recognised external clock: 12288000 Hz

SCKC_CR = 0xA, CKGR_MOR = 0x100FF02, CKGR_PLLAR = 0x21403F01, PMC_MCKR = 0x1302, MCK = 165888000 Hz

@GURALP SYSTEMS

Once the “@GURALP SYSTEMS” banner has been printed, keying + (at least once) will cause all settings (except Username, Password and Bluetooth PIN) to revert to their default values and cause the Minimus to reboot.

v2.0-7548 by teamcity on 14:28:48 07-Nov-2019

Vecbase: 300000 CPUid: 410fc051 Cache: c5187d

PMT init

Unsafe to change DBGU clock while running

mux start SP 300fb4

FPU start

VFP Id=41023051

0.00 | -> init_dbgprint

0.00 | -> init_cmdutils

0.00 | -> init_pmt_dlg

0.00 | -> init_memdlg

0.00 | -> malloc_debug

0.00 | -> start_timer_interrupts

0.01 | -> rtc_init

RTC Time: 2019-11-08T14:23:11 UTC

0.01 | -> uart_start_ints

0.01 | -> init_arm_parse

0.01 | -> t_init_task_utils

0.01 | -> gpio_init

##### NORMAL INITIALISATION MODE #####

0.01 | -> unit_test_init

0.01 | -> init_devio

0.01 | -> init_usart

0.01 | -> init_devio_cmds

0.01 | -> rpc_init

0.01 | -> ram_init

0.01 | -> ram_exchange_init

0.01 | -> system_update_init

If your key-strokes have been recognised, Ctrl+R will be printed in the boot log, as shown below – once for each time your keystrokes were logged:

C0.01 | -> i2c_init

i2c_configure( 0, 100000Hz )

Using pclk 41472000, cdiv 203, shift 0 => 100173

i2c_configure( 1, 100000Hz )

Using pclk 41472000, cdiv 203, shift 0 => 100173

i2c_configure( 2, 100000Hz )

Using pclk 41472000, cdiv 203, shift 0 => 100173

0.01 | -> i2c_dac_init

Ctrl+R

Ctrl+R

Ctrl+R

Ctrl+R

Ctrl+R

Ctrl+R

Ctrl+R

0.01 | -> i2c_dac_init

0.01 | -> i2c_humid_init

Humidity sensor test SUCCESS

0.01 | -> fram_init

Installing NVR device. size 12640

0.04 | -> net_sockets_init

0.06 | -> newtask_init

USE ADC MINIMUS

0.07 | -> init_whalesong

0.07 | -> analog232_init

0.07 | -> start_timers

Warning non-integer microsecond divisor from 82944000

0.08 | -> spi_datalink_init_semaphores

0.09 | -> chain_init

Using 251 coefficients.

0.15 | -> var_user_init

[SD log not available!] User variable "last_loc_lat" modified (called from load_from_fram)

[SD log not available!] User variable "last_loc_lon" modified (called from load_from_fram)

[SD log not available!] User variable "station_start_t" modified (called from load_from_fram)

[SD log not available!] User variable "DHCP" modified (called from load_from_fram)

[SD log not available!] User variable "Static IP addr" modified (called from load_from_fram)

[SD log not available!] User variable "Net Mask" modified (called from load_from_fram)

[SD log not available!] User variable "Gateway" modified (called from load_from_fram)

[SD log not available!] User variable "DNS1" modified (called from load_from_fram)

[SD log not available!] User variable "DNS2" modified (called from load_from_fram)

[SD log not available!] User variable "Username" modified (called from load_from_fram)

[SD log not available!] User variable "Password" modified (called from load_from_fram)

[SD log not available!] User variable "tunnel_password" modified (called from load_from_fram)

[SD log not available!] User variable "tunnel_username" modified (called from load_from_fram)

[SD log not available!] User variable "tunnel_connection" modified (called from load_from_fram)

[SD log not available!] User variable "Host Label" modified (called from load_from_fram)

[SD log not available!] User variable "Station Code" modified (called from load_from_fram)

[SD log not available!] User variable "Network Code" modified (called from load_from_fram)

[SD log not available!] User variable "Site Name" modified (called from load_from_fram)

[SD log not available!] User variable "Bluetooth PIN" modified (called from load_from_fram)

[SD log not available!] User variable "Filter quality" modified (called from load_from_fram)

[SD log not available!] User variable "CAP Msg HMAC Key" modified (called from load_from_fram)

[SD log not available!] User variable "Registry Address" modified (called from load_from_fram)

[SD log not available!] User variable "tunnel_url" modified (called from load_from_fram)

[SD log not available!] User variable "Password (Normal)" modified (called from load_from_fram)

[SD log not available!] User variable "Username (Admin)" modified (called from load_from_fram)

[SD log not available!] User variable "Password (Admin)" modified (called from load_from_fram)

[SD log not available!] User variable "Username (Normal)" modified (called from load_from_fram)

[SD log not available!] User variable "Group ID" modified (called from load_from_fram)

0.45 | -> calibration_init

1.91 | -> gcftx_init

1.92 | -> spi_datalink_chains_init

Sensor0 is velocimeter

Sensor1 is accelerometer

Sensor2 is velocimeter

Sensor3 is velocimeter

Sensor4 is velocimeter

Sensor5 is velocimeter

Sensor6 is velocimeter

Sensor7 is velocimeter

Sensor8 is velocimeter

3.33 | -> init_nand

4.17 | -> adc12_init

4.18 | -> init_random

4.18 | -> ltc4151_vc_monitor_init

Voltage/Current readings are not provided by LTC4151 chip.

4.19 | -> voltage_sniffer_init

4.20 | -> init_lut

4.28 | -> i2c_humid_init_ui

4.30 | -> sd_init

4.31 | -> sd_file_init

4.31 | -> sd_log_init

4.31 | -> streaming_client_init

2019-11-08T14:23:15.000Z Retime Request Waiting (35s/3600s/Boot delay)

4.33 | -> xtaltable_init

No XTAL table found.

4.40 | -> gps_pps_init

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

Chain 54 already set.

MIN-C555-> 4.44 | -> init_var_debug

4.44 | -> tcpdump_init

4.45 | -> var_html_init

4.45 | -> init_http_server

4.46 | -> sd_init_var

4.46 | -> gps_pps_ui_init

4.46 | -> xtaltable_ui_init

checking for xtaltable.txt

4.47 | -> init_fpga_datalink

4.47 | -> init_auto_center

4.48 | -> init_embedded_fs

4.48 | -> status_txt_init

4.49 | -> lan_init_web

#####tx_lock:

majic:f710f7f7

Call_lock value:-1 4.50 | -> init_responder_ui

4.51 | -> init_tunnel_ui

4.52 | -> quasar_init

Quasar Serial Isolated Input/Output Module support is disabled.

4.53 | -> quasar_init_ui

4.53 | -> applied_rot_init_web

4.54 | -> installation_parameters_init_web

4.55 | -> init_fpga_web

4.62 | -> analog232_init_web

4.73 | -> init_transforms

4.74 | -> triggers_init_ui

5.02 | -> chain_init_web

10.52 | -> transform_init_web

13.14 | -> storage_init_web

13.19 | -> spi_datalink_ui_init

13.32 | -> gps_init_ui

13.33 | -> gps_init

Once the boot-up reaches this stage, pressing + will have no effect.

If + was recognised during the second stage of boot-up, then the Minimus will reset and re-boot:

Ctrl+R NVR load, resetting all vars to their default values and then rebooting

Forcing all vars to default values (including non-default-able)

PPS clock sources ACTIVE: 0x00000001 [GPS:0 PTP:0 RTC:0 TABLE:1]

PPS clock sources ACTIVE: 0x01000001 [GPS:1 PTP:0 RTC:0 TABLE:1]

PPS clock sources ACTIVE: 0x01010001 [GPS:1 PTP:1 RTC:0 TABLE:1]

PPS clock sources ACTIVE: 0x01010101 [GPS:1 PTP:1 RTC:1 TABLE:1]

Ctrl+R

Ctrl+R

Ctrl+R

sd_manager: probed both microSD card slots

11.58 {calibration.c;1142} calibration_write_to_fram: successfully wrote calib to FRAM

11.60 {var_nvr.c;773} 'sd_format_time' $20301021 --> $00000000

11.61 {var_nvr.c;773} 'sd_unmount_time' $22647008 --> $00000000

11.62 {var_nvr.c;773} 'pps_src_table' 168 --> 1

11.63 {var_nvr.c;773} 'pps_src_gps' 0 --> 1

11.63 {var_nvr.c;773} 'pps_src_ptp' 69 --> 1

11.64 {var_nvr.c;773} 'pps_src_rtc' 132 --> 1

11.64 {var_nvr.c;773} 'rtcSavedOffsetSecs_nv' -1737983855 --> 0

11.65 {var_nvr.c;773} 'rtcSavedOffsetNano_nv' 402788896 --> 0

11.66 {var_nvr.c;773} 'rtcSavedFreqErrorPPB_nv' -2129883872 --> 1000000

11.67 {var_nvr.c;773} 'rtcSavedOffsetTime_nv' $52080158 --> $00000000

11.68 {var_nvr.c;773} 'xtaltable_offset' 610275339 --> 0