Part Number Hot Search : 
MC14079B CEF09N6 1N4756 RS2604 51221 C1103 P1206 2SC4727
Product Description
Full Text Search
 

To Download M-G362 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  rev.2013 12 17 imu (inertial measurement unit) m-g3 62pd c 1 data sheet
notice no part of this material may be reproduced or duplicated in any form or by any means without the written permission of seiko epson. seiko epson reserves the righ t to make changes to this material without notice. seiko epson does not assume any liability of any kind arising out of any inaccuracies contained in this material or due to its application or use in any product or circuit and, further, there is no repres entation that this material is a p plicable to products requiring high level reliability, such as, medical products. moreover, no license to any intellectual property rights is granted by implication or otherwise, and there is no representation or warranty that anything made in accordance with this material will be free from any patent or copyright infringement of a third party. when exporting the products or technology described in this material, you should comply with the applicable export control laws and regulations and follow the procedures required by such laws and regulations. you are requested not to use, to resell, to export and/or to otherwise dispose of the products (and any technical information furnished, if any) for the development and/or manufa cture of weapon of mass destruction or for other military purposes. all brands or product names mentioned herein are trademarks and/or registered trademarks of their respective companies. ? seiko epson corporation 2013, all rights reserved.
m - g362pd c1 data sheet seiko epson corporation i rev. 201312 17 table of cont ents table of contents .............................................................................................................. i 1. overview ..................................................................................................................... 1 1.1 features ....................................................................................................................................... 1 1.2 applications ................................................................................................................................ 1 1.3 functional block diagram ......................................................................................................... 1 2. product specifications .............................................................................................. 2 2.1 absolute maximum ratings ...................................................................................................... 2 2.2 recommended operating condition ........................................................................................ 2 2.3 characteristics and electrical specifications ......................................................................... 3 2.4 timing specifications ................................................................................................................ 5 2.5 socket pin layout and functions ............................................................................................ 7 3. mechanical dimensions ............................................................................................ 8 3.1 outline dimensions .................................................................................................................... 8 3.2 socket dimensi ons .................................................................................................................. 10 4. typical performance characteristics ...................................................................... 11 5. basic operation ....................................................................................................... 13 5.1 connection to host .................................................................................................................. 13 5.2 operation mode ........................................................................................................................ 14 5.3 functional block diagram ....................................................................................................... 15 5.4 data output timing .................................................................................................................. 16 5.5 data ready signal .................................................................................................................... 16 5.6 sampling counter ..................................................................................................................... 17 5.7 gpio ........................................................................................................................................... 17 5.8 self test ..................................................................................................................................... 17 5.9 external trigger input .............................................................................................................. 17 5.10 external counter reset input .................................................................................................. 20 5.11 checksum ................................................................................................................................. 21 5.12 automatic start (for uart auto mode only ) ........................................................................ 22 5.13 filter ........................................................................................................................................... 22 6. digital interface ........................................................................................................ 25 6.1 spi interface .............................................................................................................................. 26 6.1.1 spi read timing (normal mode) ........................................................................................ 27 6.1.2 spi write timing (normal mode) ......................................................................................... 28 6.1.3 spi read timing (burst mode) ............................................................................................ 29 6.2 uart interface .......................................................................................................................... 30 6.2.1 uart read timing (normal mode) .................................................................................... 31 6.2.2 uart read timing (burst mode) ........................................................................................ 32 6.2.3 uart write timing .............................................................................................................. 32 6.2.4 uart auto mode operation ................................................................................................ 33 6.3 data packet format .................................................................................................................. 34 7. user registers .......................................................................................................... 38 7.1 burst register (window 0) ................................................................................................... 40
ii seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7.2 mode_ctrl register (window 0) ......................................................................................... 40 7.3 diag_stat register (window 0) ............................................................................................ 41 7.4 flag(nd/ea) register (window 0) ........................................................................................ 42 7.5 gpio register (window 0) ....................................................................................................... 42 7.6 cou nt register (window 0) ................................................................................................... 43 7.7 temp register (window 0) ...................................................................................................... 43 7.8 gyro register (window 0) ..................................................................................................... 44 7.9 accl register (window 0) ...................................................................................................... 44 7.10 sig_ctrl register (window 1) .............................................................................................. 45 7.11 msc_ctrl register (window 1) ............................................................................................ 45 7.12 smpl_ctrl register (window 1) .......................................................................................... 46 7.13 filter_ctrl register (window 1) ........................................................................................ 46 7.14 uart_ctrl register (window 1) .......................................................................................... 47 7.15 glob_cmd register (window 1) ........................................................................................... 48 7.16 burst_ctrl1 register (window 1 ) ...................................................................................... 49 7.17 burst_ctrl2 register (window 1) ...................................................................................... 50 7.18 win_ctrl register (window 0,1) .......................................................................................... 50 8. sample program sequence ..................................................................................... 51 8.1 spi sequence ............................................................................................................................ 51 8.1.1 power - on sequence (spi) ................................................................................................... 51 8.1.2 register read and write (spi) .............................................................................................. 51 8.1.3 sampling data (spi) ............................................................................................................ 51 8.1.4 selftest (spi) ........................................................................................................................ 54 8.1.5 software reset (spi) ........................................................................................................... 55 8.1.6 flash test (spi) ................................................................................................................... 55 8.1.7 flash backup (spi) .............................................................................................................. 55 8.1.8 filter setting (spi) ................................................................................................................ 56 8.2 uart sequence ........................................................................................................................ 56 8.2.1 power - on sequence (uart) ............................................................................................... 56 8.2.2 register read and write (uart) .......................................................................................... 56 8.2.3 sampling data (uart) ......................................................................................................... 57 8.2.4 selftest (uart) .................................................................................................................... 59 8.2.5 software reset (uart) ....................................................................................................... 59 8.2.6 flash test (uart ) ............................................................................................................... 60 8.2.7 flash backup (uart) .......................................................................................................... 60 8.2.8 filter setting (uart) ............................................................................................................ 60 8.2.9 auto start (uart only) ........................................................................................................ 61 9. handling notes ......................................................................................................... 62 9.1 cautions for attaching ............................................................................................................. 62 9.2 other cautions .......................................................................................................................... 62 10. part number / ordering info. ................................................................................... 63 11. evaluation tools ....................................................................................................... 63 revision history ............................................................................................................. 64
m - g362pdc1 data sheet seiko epson corporation 1 rev. 201312 17 1. overview the m - g362pdc1 is a small form factor inertial measurement unit (imu) with 6 degrees of freedom: triaxial angular rates and linear accelerations, and pro vides high - stability and high - precision measurement capabilities with the use of high - precision compensation technology. a variety of calibration parameters are stored in memory of the imu, and are automatically reflected in the measurement data being sent to the application after the power of the imu is turned on. with general - purpose spi/uart support for host communication s , the m - g362pdc1 reduces technical barriers for users to introduce inertial measurement and minimizes design resources to implement in ertial movement analysis and control applications. the features of the imu such as high stability, high precision, and small size make it easy to create and differentiate applications in various fields of industrial systems. 1.1 features ? small size, lightw eight : 24x24x10mm, 7grams ? low - noise, high - stability ? gyro bias instability : 3 deg/hr ? angular random walk : 0. 1 deg/ hr ? initial bias error : to 0.5 deg/s (1 ) ? 6 degrees of freedom triple gyroscope s : 150 deg/s, tri - axis accelerometer : 3 g ? 16 /32 bit data resolution ? d igital s erial i nterface : spi / uart ? calibrated stability (bias, scale factor, axial alignment) ? data output rate : to 2 k sps ? external t rigger input / external counter reset input ? calibration temperature range : ?20 c to +70 c ? operating temperature range : ? 40 c to +85 c ? single voltage supply : 3.3 v ? low power consumption : 30ma (typ.) 1.2 a pplications ? motion analysis and control ? unm anned systems ? navigation systems ? vibration control and stabilization ? pointing and tracking systems 1.3 functional block diagram figure 1.1 f unctional b lock d iagram digital interface temp. sensor triple gyroscope tri - axis acceleromete r analog front end signal conditioning a/d signal processing calibration digital processing self test gpio sdi sd o s clk /ss s in s out b r at e drdy (gpio1) gnd spi uart /rst vcc gpio3 gpio2 (ext)
2 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 2. p roduct s pecifications 2.1 a bsolute m aximum r atings tabl e 2.1 absolute m aximum r atings parameter min . typ . max . unit v cc to gnd ? 0.3 - 6.0 v digital input voltage to gnd ? 0.3 - 5.3 v digital output voltage to gnd ? 0.3 - v cc +0.3 v storage temperature range ? 40 - 85 c acceleration / shock (half - sine 0.5msec) - - 500 g precautions about esd electrostatic discharge (esd) ma y damage the product. when you store or handle the product, take appropriate preventive measures against electrostatic discharge (esd). damages caused by electrostatic discharge (esd) range from tiny performance degradation or partial malfunction to comple te breakdown. this is a high - precision product. even tiny performance degradation may cause the product not to conform to the specifications. 2.2 r ecommended o perating c ondition table 2.2 recommended operating c onditions parameter condition m in . typ . max . unit v cc to gnd 3.15 3.3 3.45 v digital input voltage to gnd gnd - v cc v digital output voltage to gnd ? 0.3 - v cc +0.3 v calibration temperature range performance parameters are applicable ? 20 - 70 c operating temperature range ? 40 - 85 c
m - g362pdc1 data sheet seiko epson corporation 3 rev. 201312 17 2 .3 c haracteristics and e lectrical s pecifications table 2.3 sensor specifications t a =25 c, v cc =3.3v, angular rate=0 deg/s, ?1g, unless otherwise noted. parameter test conditions / comments min . typ . max . unit gyro sensor sensitivity dynamic range - 150 - - deg/s scale factor 1 6bit typ - 0.5% 0.0 0 5 typ+0.5% (deg/s)/lsb temperature coefficient 1 , ? 2 0c t a + 70 c - 10 - ppm/c nonlinearity best fit straight line - 0.1 - % of fs misalignment 1 , axis - to - axis, = 90 ideal - 0.1 - d eg bias initial error 1 - 0.5 - deg/s temperature coefficient (linear approximation) 1 , ?20c t a +70c 0.001 (deg/s )/c in - run bias stability 1 - 3 - deg/hr angular random walk 1 - 0. 1 - deg/ hr linear acceleration effect <0.01 (deg/s)/g noise noise density 1 , f = 10 to 20 hz, no filtering - 0.00 2 - (deg/s)/ hz , rms frequency property 3 db bandwidth - - 1 80 - hz accelerometers sensitivity dynamic ran ge - 3 - - g scale factor 1 6bit typ - 0.5 % 0.125 typ+ 0.5 % m g /lsb temperature coefficient 1, ? 2 0c t a + 70 c - 20 - ppm/c nonlinearity 1g , best fit straight line - 0.1 - % of fs misalignment 1 , axis - to - axis, = 90 ideal - 0.03 - d eg bia s initial error 1 - 8 - mg temperature coefficient (linear approximation) 1 , ?20c t a +70c 0.02 mg/c in - run bias stability 1 - < 0.1 - mg velocity random walk 1 - 0. 04 - (m/sec)/ hr noise noise dens ity 1 , f = 10 to 20 hz, no filtering - 0.1 - m g / hz , rms frequency property 3 db bandwidth - - 18 0 - hz temperature sensor scale factor *1 *2 output = - 15214(0xc492) @ +25c - 0.0042725 - c/lsb *1) this is a refere nce value used for internal temperature compensation. there is no guarantee that the value gives an absolute value of the internal temperature. *2) this is the temperature scale factor for the upper 16bit ( temp_high ). note) the values in the specifications are based on the data calibrated at the factory. the values may change according to the way the product is used. note) the typ values in the specifications are average values or 1 values. note) unless otherwise noted, the max / min values in the specifications are design values or max / min values at the factory tests.
4 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 table 2.4 interface specifications t a =25 c, v cc =3.3v, unless otherwise noted parameter test conditions min . typ . max . unit logic inputs *1 positive trigger voltage lvcmos schmitt 1.2 - 2.52 v negative trigger voltage lvcmos schmitt 0.75 - 1.98 v hysteresis voltage lvcmos schmitt 0.3 - - v logic 1 input current, i inh vih = 3.3 v - 0.1 - a logic 0 input current, i inl vil = 0 v - - - all pins except rst - - 0.1 - a pin rst - - 0.04 - ma input capacitance, c in - - 8 - pf rst voltage range 0 vcc+0.3 v rst high - level input voltage, v ih - 0.7xv cc - - v rst low - level input voltag e, v il - - - 0.3xv cc v r st low pulse width - 10 - - ms pull - up resistor - 32 80 224 k digital outputs *1 output high voltage, v oh isource=1.4ma lvcmos 2.9 - - v output low voltage, v ol isink=1.4ma lvcmos - - 0.4 v backup memory endurance *2 , @25 degree c 10 6 - - cycles functional times *3 time until data is available power - on start - up time - - - 800 ms reset recovery time - - - 800 ms flash test time - - - 5 ms flash b ackup time - - - 2 00 ms self test time - - - 4 0 ms filter s etting time - - 1 ms data output rate dout_rate = 0x01 - - 2 000 * 4 sps clock accuracy - - - 0.01 % power supply operating voltage range, v cc 3.15 3.3 3.45 v power supply current - - 30 - ma *1) digital i/o signal pins operate at 3.3v inside the unit . all digital i/o signal pins (except r st ) can tolerate 5v input. *2) this item is not included in the factory test items but its characteristic is confirmed. *3) these specifications do not include the effect of temperature fluctuation and response ti me of the internal filter. *4) depending on the host i nterface condition (uart baudrate, spi clock, burst_ctrl1,2,etc), data output rate may be below 2,000sps.
m - g362pdc1 data sheet seiko epson corporation 5 rev. 201312 17 2.4 t iming s pecifications table 2.5 timing specification t a =25 c, v cc =3.3v, unless otherwise n oted parameter description min typ max unit normal mode fsclk 0.01 2.0 mhz tstall stall period between data 20 s twriterate write r ate 40 s treadrate read rate 40 s burst mode fsclk 0.01 1 .0 mhz tstall 1 stall period between data 45 s tstall 2 stall period between data 4 s treadrate 2 read rate 32 s common tcs chip select to clock edge 10 ns tdav so valid after sclk edge 80 ns tdsu si setup time before sclk rising edge 10 ns tdhd si hold time after sclk rising edge 10 ns tsclkr, tsclkf sclk rise/fall times 20 ns tdf, tdr so rise/fall times 20 ns tsfs h igh after sclk edge cs 80 ns note) the specifications above are not included in the factory test items but their characte ristic is confirmed. c s s clk so si w/r 1 2 16 15 3 lsb a6 d1 4 5 d2 d3 a5 a4 14 13 w/r 1 2 16 15 3 lsb a6 d1 4 5 d2 d3 a5 a4 14 13 t dhd t dsu t cs t sfs t stall t write rate figure 2.1 spi w rite t iming and s equence (normal mode)
6 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 c s s clk so si msb w/r lsb db14 db2 1 2 16 15 3 lsb a6 d1 4 5 d2 d3 a5 a4 db13 db12 db3 db1 14 13 msb w/r lsb db14 db2 1 2 16 15 3 lsb a6 d1 4 5 d2 d3 a5 a4 db13 db12 db3 db1 14 13 t dhd t dsu t d av t cs t sfs t stall t readrate figure 2.2 spi r ead t iming and s equence (normal mode) /cs t stall1 t stall2 t readrate2 response sclk sdo sdi command nd/ea temp_high temp_low count t stall2 t stall2 t readrate2 t readrate2 0x8000 figure 2.3 spi r ead t iming and s equence (burst mode)
m - g362pdc1 data sheet seiko epson corporation 7 rev. 201312 17 2.5 s ocket p in l ayout and f unctions figure 2. 4 socket pin assignment table 2.6 pin function descriptions pin no. mnemonic type *1 description 1,2,3,4,22,23,24 nc n/a do not connect 5 sclk i spi serial clock *2 6 sdi i spi data input *2 7 /cs i spi chip select *2 8 sdo o spi data output *2 9 sout o uart data output *2 10 sin i uart data input *2 11,12 vcc s power supply 3.3v 13,14,15,16 gnd s ground 17 drdy (gpio1) i/o data ready * 3 (general purpose i/o1) 18 g pio2 (ext) i/o general purpose i/o2 * 4 ( external trigger input or external counter reset input ) 19 gpio3 i/o general purpose i/o3 20 brate i uart baud rate * 5 21 /rst i reset * 6 *1) pin type i: input, o: output, i/o: input/output, s: supply, n/a: not applicable *2) connect either spi or uart but not both. connecting both spi and uart at the same time may result in malfunction of the device. regarding unused pi n , please connect /cs pin to vcc and all other unused input pins to ground . *3) regarding pin function selection, please refer to the drdy _ on at register msc_ctrl[0x02(w1)],bit[2] *4) regarding pin function selection, please refer to the ext _ sel at register msc_ctrl[0x02(w1)],bit[7:6] *5) regarding baudrate setting, please refer to the baud _ r at e at register uart_ctrl[0x08(w1)],bit[9:8] . change the brate pin when the power for the imu is off, or perform a hardware reset after the brate pin is changed. * 6 ) if the /rst pin is not used, keep the pin at high (v cc ) voltage level. note) all input pins have weak pull up resistors inside the imu. 1 2 23 24
8 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 a y g y a z g z a x g x 3. m echanical d imensions 3.1 o utline d imensions . figure 3.1 outline dimensions ( millimeters ) figure 3.2 a cceleration s ensor origin ( millimeters ) *1) the arrow marking on the top lab el shows the origin of a cceleration sensor . *2) the label on the side of imu describes the unit identification ( id ) code . epson m - g362p s4e5a0a1
m - g362pdc1 data sheet seiko epson corporation 9 rev. 201312 17 figure 3.3 suggested guide pin & mounting screw hole location ( millimeters ) use m2 pan head screws to mo unt the imu in order to avoid deformation of the flange. for information about the location of the screw holes, see figure 3.3.
10 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 3.2 s oc k et d imensions figure 3.4 and table 3. 1 describes the connector manufacturer and the model number of the socket built i nto the imu . figure 3.4 socket pin dimensions table 3.1 socket part number maker parts number rohs compliant panasonic axe524124 ye s table 3.2 shows the connector manufacturer and the model number of the recommended header used at the host side. table 3.2 header part n umber maker parts number rohs compliant panasonic axe624224 ye s use m1.6 (p 0.35mm) pan head screws to fix the header part of the connector harness to the socket of the imu. select the length of the screws so that the length of e ngagement under the surface of the imu is 30.5mm. note: the imu connector rating for insertion and removal is a maximum of 20 times.
m - g362pdc1 data sheet seiko epson corporation 11 rev. 201312 17 data output rate: 31.25sps average filter tap: n=128 data output rate: 1ksps average filter tap: n= 4 4. t ypical p erformance c haracteristics 0.1 1 10 100 0.01 0.1 1 10 100 1000 10000 [sec] root allan variance [dph] 0.0001 0.001 0.01 0.1 1 10 100 1000 frequency [hz] noise density [dps/rt(hz)] figure 4.3 gyro noise frequency characteristic the product characteristics shown above are just examples and are not guaranteed as specifications. figure 4.1 gyro allan variance characteris tic figure 4.2 gyro bias vs. temperature characteristic -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 100 temp. [deg.c] gyro bias error [dps]
12 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 data output rate: 31.25sps average filter tap: n=128 data output rate: 1ksps average filter tap: n= 4 0.01 0.1 1 10 0.01 0.1 1 10 100 1000 10000 [sec] root allan variance [mg] -10 -8 -6 -4 -2 0 2 4 6 8 10 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 100 temp. [deg.c] accelerometer bias error [mg] 0.001 0.01 0.1 1 1 10 100 1000 frequency [hz] noise density [mg/rt(hz)] figure 4.6 accelerometer no ise frequency characteristic the product characteristics shown above are just examples and are not guaranteed as specifications. figure 4.4 accelerometer allan variance characteristic figure 4. 5 accelerometer bias vs. temperature characteristic
m - g362pdc1 data sheet seiko epson corporation 13 rev. 201312 17 5. b asic o peration 5.1 c onnection to host the device is connected to the host via spi or uart. the following is an example of the connection. note: spi multiple slave configuration is not supported. note: connect either spi or uart but not both. connecting both spi and uart at the same time may result in malfunction of the device. note: refer to table 2.6 pin function description for the connection of unused pins. s s sclk mosi miso irq system processor spi master i/o lines are compatible with 3.3v logic levels 7 5 6 8 1 7 11 12 15 g362 spi slave c s sclk s d i s d o drdy( gpi o1 ) 3.3 v 16 14 gnd 13 figure 5.1 spi connection tx rx mio irq system processor i/o lines are compatible with 3.3v logic levels 10 9 20 17 11 12 13 15 g362 sin sout brate drdy( gpio1 ) 3.3v 16 14 gnd figure 5.2 uart connection
14 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 5.2 o peration m ode the device has the following two operation modes. only when uart is used, s ampling mod e has two submodes: m anual mode and a uto mode. (1) configuration mode (2) sampling mode ? manual mode ? auto mode (for uart only) immediately after a hardware reset or power - on, internal initialization starts. during the internal initialization, all the r egister values and states of external pins are undefined. after the internal initialization is completed , the device goes into c onfiguration mode. configure various operational settings in c onfiguration mode (*1) . after configuration is completed , go to the sampling mode to read out the temperature, angular rate , and acceleration data. to change the operation mode, write to mode_cmd ( mode_ctrl[ 0x02(w0) ] bit[9:8] ) . when software reset is execute d by writing 1 to soft_rst ( glob_cmd[ 0x0a(w1) ] bit[7] ) , internal initialization is executed and then the device goes into c onfiguration mode regardless of the current operation mode. when the uart interface is used, writing to uart_auto (uart_ctrl[ 0x08(w1) ] bit[0] ) can switch between the m anual mode and the a uto mode (*2 ) . note: when spi interface is used, m anual mode must be selected. otherwise, the device does not work properly. *1) make sure that the device is in c onfiguration mode when you write to the registers to configure operational settings. in s ampling mode, wr iting to registers is ignored except the following cases . ? writing to mode_cmd (mode_ctrl[ 0x02(w0) ] bit[9:8] ) ? writing to gpio_data (gpio[ 0x08(w0) ] bit[10:8] ) ? writing to soft_rst (glob_cmd[ 0x0a(w1) ] bit[7] ) ? writing to window_id (win_ctrl[0x7e(w0/w1)] bit[7:0 ] ) *2) the following explains r egister notation used in this document . for e xample, mode_ctrl[0x02(w0)] bit[9:8] refers to : ? mode_ctrl : register name ? [0x02(w0)] : first number is the r egister a ddress, (w0) refers to window number ?0? ? bit[9:8] : bits fro m 9 to 8 *3) while the device is in uart a uto m ode and sensor sampling is act ive, register read access is not su pported. otherwise, the sampling data transmitted in the uart auto mode will be corrupted by the response data from the register read.
m - g362pdc1 data sheet seiko epson corporation 15 rev. 201312 17 figure 5.3 operational state diagram 5.3 f unctional b lock diagram figure 5.4 functional block diagram m temperature correction down sampling m=2,4,..,128 adc internal clock 4 ksps/ch gyro ac c l lpf (2 nd order) lpf (2 nd order) fc : 1 9 0 hz, q: 0.7 1 lpf (1 st order) digital filter fc: 603 hz fc : 195hz , q: 0.7 at configuration mode, if uart_auto= ? 1? , then uart auto mode if uart_auto= ? 0? , then uart manual mode configuration mode sampling mode power on / reset internal i nitialization mode_cmd= ? 01 ? write mode_cmd= ? 10?write uart manual mode or uart auto mode at the internal initialization ends, if auto_start = ?1 ? && uart_auto = ?1 ?, soft_rst=?1?write soft_rst= ? 1?write
16 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 5.4 d ata o utput t iming adc filtering decimation & temp. correction 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 drdy signal 1' 2' 3' 4' 5' 6' 7' 8' 9' spi_i/f (host reads data.) x(1')={x(1)+x(2)}/2 500us delay from adc's output to drdy asserted. data output rate: 2ksps < 300us average filter tap: n=2 250us figure 5.5 data output timing ? dat a output rate 2ksps, average filter tap n=2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1' 2' x(1')={x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)}/8 adc filtering drdy signal spi_i/f (host reads data.) 250us 2ms < 300us decimation & temp. correction delay from adc's output to drdy asserted. data output rate: 500sps average filter tap: n=8 figure 5.6 data output timing ? data output rate 500sps, average filter tap n=8 5.5 data ready signal the data ready signal is asserted when one sampling cycle completes and register s are updated with new sensor values. when the sensor values are read out, the data ready signal becomes negated. in case of uart auto mode, the data ready signal becomes negated just before data is output. the data ready signal is output to the pin when t he drdy_on ( msc_ctrl [0x02(w1)] bit[2] ) is set to ? 1 ? . the polarity of the signal can be changed by writing to the drdy_pol of msc_ctrl [0x02(w1)] bit[1] register. the data ready signal is the logical sum of all the nd flags corresponding to each sensor valu e. if all the nd flags are disabled in the nd_en (sig_ctrl[ 0x00(w1) ] bit [15:9] ), the data ready will not be asserted. on the other hand, if all the sensor values enabled in the nd_en (sig_ctrl[ 0x00(w1) ] bit[15:9] ) are not read out, the data ready signal is kept asserted and never becomes negated . internal sync data ready sampling read data figure 5.7 data ready signal timing
m - g362pdc1 data sheet seiko epson corporation 17 rev. 201312 17 5.6 sampling counter by r eading count[0x0a(w0)] register , the counter value can be read which is incremented based on the sampling completion timi ng of the internal a/d converter . the count interval is 2 50usec/count and is based on the precision of the internal reference oscillator (crystal). a ddition ally, during uart /spi burst mode and in uart a uto mode, the counter value can be included in the nor mal response by setting the count_out ( burst _ctrl 1 [ 0x0c(w1) ] bit[ 1 ] ). for information about the response format, see 6.3 data packet format. 5.7 gpio the device has three general purpose i/o ports (gpio). by accessing the gpio[ 0x08(w0) ] register, the dire ction (in/out) of each port can be configured and data can be read/written to. the gpio port can be read in the normal mode, and also in the uart burst mode or uart auto mode. gpio1 is shared with the data ready signal. the switch between gpio1 and data re ady signal can be controlled by drdy_on of msc_ctrl[0x02(w1)] bit[2] register. w h en drdy_on is written as ? 0 ? , gpio1 act as general purpose i/o port. gpio2 is shared with ext signal ( external trigger input or external counter reset). the switch of gpio2 an d ext sig n al can be controlled by ext_sel of msc_ctrl[0x02(w1)] bit[7:6] register. w h en ext_sel is written as ? 00 ? , gpio2 act as general purpose i/o port. 5.8 self test the self test function can be used to check whether the outputs of the gyroscope and t he accelerometer are within the pre - determined range and operating properly. for the gyroscope, the test result is ok if the bias of the output for each x - , y - , or z - axis is close to zero when the device is not moving. for the accelerometer, the test resul t is ok if the absolute value of the output as a three dimensional vector is equal to the gravitational acceleration. when perform ing the self test, make sure the device does not move during the test and the test is conducted in a place without vibration. for information about the execution time of the self test, see ?self test time? in table 2.4 interface specifications. to use the self test function, see the description of the self_test (msc_ctrl[ 0x02(w1) ] bit[10] ) and the st_err_all (diag_stat[ 0x04(w0) ] bit[1] ). 5. 9 external trigger input external trigger input function provides control of the sample data output timing by using an externally supplied input pulse signal to gpio2 (ext) pin. by enabling the ext_sel ( msc_ctrl[0x02(w1)] bit[7:6] ), gpio2 pin c an be used as external trigger i nput pin. t he polarity of external trigger input (positive pulse / negative pulse) can be selected by ext_pol ( msc_ctrl[0x02(w1)] bit[5] ) . w h en this function is active, the operation is as follows : ? for uart auto m ode: when e xternal trigger input pin is asserted, the latest sampling data is set to each register and sent to host automatically. ? for all other mode s: when external trigger input pin is asserted, the latest sampling data is set to each register and data ready signal is asserted. the host should then read the sampling data syncroniz ed with
18 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 data ready signal . note: w h en using this function, set the data o utput r ate ( dout_rate ) to 2,000 sps and m oving a verage f ilter ( filter_sel ) to tap=2 or higher . ? smpl_ctrl[0x04(w1)] ,bit[15:8] , dout_rate = 0x01 ? filter_ctrl[0x06(w1)],bit[4:0] , filter_sel = 00001 the above settings are recommended and are the basis for the timings specified in table 5.1. the external trigger input timing r equirements and timing diagrams are shown in table 5.1, figure 5.8, and figure 5.9. table 5.1 external trigger input timing requirements parameter description min max unit t etw external trigger input width 100 - nsec t etc external trigger input cycle 1 - msec t eta2t t ime from adc's completion to external trigger input ( timing jitter of external trigger input ) 0 5 00 s t etd1 *1 delay time from external trigger input to drdy asserted - 300 s *1) this does not include group delay of the internal filter. adc filtering decimation & temp. correction 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 drdy signal uart_i/f (host reads data.) 500us data update rate: 2ksps average filter tap: n=2 250us 1' 2' 3' x(1')={x(3)+x(4)}/2 ext trigger input x(2')={x(9)+x(10)}/2 x(3')={x(15)+x(16)}/2 t etd 1 (< 300us) t etc t etw t eta2t figure 5.8 external trigger input (u art auto m ode )
m - g362pdc1 data sheet seiko epson corporation 19 rev. 201312 17 adc filtering decimation & temp. correction 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 drdy signal uart or spi_i/f (host reads data.) 500us data update rate: 2ksps average filter tap: n=2 250us 1' 2' 3' x(1')={x(3)+x(4)}/2 ext trigger input x(2')={x(9)+x(10)}/2 x(3')={x(15)+x(16)}/2 t etd 1 (< 300us) t etc t etw t eta2t figure 5.9 external trigger input (uart/spi manual mode )
20 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 5.1 0 external c ounter r eset i nput the e xternal c ounter r eset i nput function can be used to measure the time offset from an externally supplied i nput trigger on gpio2(ext) pin to the completion of the next adc sampl ing group . this function is enabled by writing to ext_sel ( msc_ctrl [ 0x02(w1) ] bit [7:6]) to select gpio2 for use as an e xternal c ounter r eset i nput terminal. the active polarity of the i nput signal (positive pulse/nega tive pulse) can be selected by setting ext_pol ( msc_ctrl [ 0x02(w1) ] bit 5) . the following describes the operation when this function is active: ? the imu has an internal 16 - bit up counter incrementing at 46.875khz . ? the counter begins counting starting from 0 (*1) when s ampling mode begins . the counting resolution is approx imately 21.33us . ? th e counter can be reset by assertion of an external signal on the e xternal c ounter r eset i nput terminal . after the counter is reset, the count value is cleared and begins in crementing again from 0 . ? th e counter value is transferred at the tim e of the adc sampling completion and stored in count [0x0a(w0)] register before the dataready signal is asserted . ? the h ost can obtain the time offset from external counter reset input sig nal to adc sampling completion time by reading the sampling data with the counter value when dataready signal is asserted . ? the count er value is stopped (*2) when s ampling mode is stopped . ? the counter will roll over and increment from 0 again , if t he coun t value increments past 65535. *1) enter s ampling mode from c onfiguration mode *2) leave sampling mode and enter c onfiguration mode note: when the external counter reset input function is enabled, t he count [0x0a(w0)] register stores the counter value i nstead of the sampling count . the t iming specif ication and timing diagram for the e xternal c ounter r eset input function is shown in table 5.2 and figure 5.10. table 5.2 external c ounter r eset i nput t iming parameter description min max unit t e r w externa l reset i nput width 100 - nsec t e r c external reset input cycle 1 1000 msec t er2a t ime from external reset input to adc completion ( count *1 x21.33)+ S er2a s S er2a p recision of t er2a - 200 200 s * 1) the count value is read from register count [ 0x0a(w0) ] as indicated.
m - g362pdc1 data sheet seiko epson corporation 21 rev. 201312 17 adc filtering decimation & temp. correction 1 2 3 drdy signal 2' spi_i/f (host reads data.) x(1')={x(1)+x(2)}/2 500us data output rate: 2ksps < 300us average filter tap: n=2 250us internally saved count value ext reset input t erc t erw 4 5 6 7 8 9 10 89 7 18 30 42 53 65 77 89 77 11 7 7 30 53 77 7 77 3' 4' 5' 1' count regis ter t er2a reset internal counter figure 5.10 external c ounter r eset i nput 5.1 1 checksum a c hecksum can be appended to the response data during uart/spi b urst mode or uart a uto mode by enabling t his function in chksm_out ( burst_ctrl1 [ 0x0c(w1) ] bit 0) . the checksum ra nge of the data content is calculated immediately after the address byte (0x80) of the response data up to (not including) the delimiter byte (cr=0x0d). the calculation method of checksum is a simpl e add ition of the data content in unit s of 16 - bit, and the resulting sum is truncated to 16 - bits and appended as checksum just before delimiter byte (cr=0x0d). for example: because the sum total is " 611b4 " for the following response data stream, the checksum is " 11b4 ": " fe01 c455 4000 0052 33c0 0043 7bc8 004a 2 608 fd73 3aa0 ff75 4c30 1f53 8fd0 0600 0014 " sin sout 0x80xx cr range of checksum command checksum count cr nd/ea temp_ h temp_ l ad figure 5.11 c hecksum
22 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 5.1 2 automatic s tart ( for uart a uto m ode only ) the a utomatic s tart function when enabled allows the device to automatically enter s ampling m ode after completing internal initialization when power is supplied or the imu is reset . this function is designed to be used in conjunction with the uart auto mode. please refer to figure 5.3 for the state transition. f ollow the procedures below to enable the automatic start function : 1. write a ?1? to both uart_auto (bit 0) and auto_start (bit 1) of uart_ctrl [ 0x08(w1) ] . 2. store the current register settings to non - volatile mem o ry by writing a "1" to f lash_backup ( glob_cmd [ 0x0a(w1) ] bit 3 ) . after c ompleti on of the flash_backup command, confirm the re sults by flash_bu_err ( diag_stat [ 0x04(w0) ] bit 0) . 3. the imu will automatically enter s ampling m ode a fter the power supply i s cycled, or a hardware reset , or a software reset command is executed. th e automatic start function can be enabled simultaneously with the external trigger input function. f ollow the procedures below to enable the automatic start with external trigger input function : 1. write a ?1? to both uart_auto (bit 0) and auto_start (bit 1) of uart_ctrl [0x08(w1)]. 2. if necessary , set the proper p olarity of the external trigger input with ext_pol ( msc_ctrl [ 0x02(w1) ] bit 5) . write a "10" to ext_sel ( msc_ctrl [ 0x02(w1) ] bit [7:6]) to enable the external trigger input . please connect the external trigger input signal to the gpio2 pin . 3. store the curre nt register settings to non - volatile memry by writing a "1" to flash_backup (glob_cmd [0x0a(w1)] bit 3) . after completion of the flash_backup command, confirm the results by flash_bu_err (diag_stat [0x04(w0)] bit 0) . 4. the imu will automatically enter s ampli ng m ode after the power supply is cycled, or a hardware reset, or a software reset command is executed. 5.1 3 filter this device contains built - in user configurable digital filter s that are applied to the sensor data . the type of filter (moving average fil ter or fir kaiser filter) and the numbers of tap s can be set with the filter_ctrl [ 0x06(w1) ] register. (1) moving a verage f ilter : t ap setting can be n= 2, 4, 8, 16, 32, 64, or 128. figure 5.12 shows the characteristics of this filter. figure 5 .12 m oving a verage f ilter c haracteristic s
m - g362pdc1 data sheet seiko epson corporation 23 rev. 201312 17 (2) fir kaiser filter : u ses kaiser window(parameter=8) tap setting can be n= 32, 64, or 128 with cutoff frequency fc=50, 100, 200, or 400hz. figures 5.13 and 5.14 show the typical characteristic of this filter. tap=32 figure 5.13 fir kaiser f ilter t ypical c haracteristic 1 fc=50 figure 5.14 fir kaiser f ilter t ypical c haracteristic 2
24 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 please note that the transient response of the digital filter is a maximum of 63 s amples from the sampling start time and varies depending on the output data rate and the filter tap setting . refer to table 5.3 which describes the transient response in terms of number of samples for valid combinations of output data rate and filter tap s etting. table 5.3 transient response in number of samples based on output data rate vs filter tap tap2 tap4 tap8 tap16 tap32 tap64 tap128 2000 sps 0 1 3 7 15 31 63 1000sps 0 1 3 7 15 31 500sps 0 1 3 7 15 250sps 0 1 3 7 125sps 0 1 3 62.5sps 0 1 31.25sps 0
m - g362pdc1 data sheet seiko epson corporation 25 rev. 201312 17 6. digital i nterface th is device has the following two external interfaces. (1) spi interface (2) uart interface the spi interface and the uart interface have almost the same functions, except additionally the uart interface su pports a uto m ode function. because both interfaces are always active , the user needs only to connect the desired interface pins spi or uart, without needing any hardware pin configuration or selection. note: connecting both spi and uart at the same time is not supported and may result in malfunction of the device. the registers inside the device are accessed via the spi or uart interfaces. in this document, data sent to the device is called ?command? and data sent back in response to the command is called ? response?. there are two types of commands: write command and read command. the write command has no response. the write command always writes to the internal register in 8 - bit words. the response to the read command, i.e. the data from the internal regist er, is always read in 16- bit words. when reading from the registers, there is a special mode called the burst mode in addition to the normal mode . when the imu output data rate is high (i.e. 1000sps and 2000sps), it is possible to exceed the bandwidth of t he host interface and cause the data transmission to be incorrect . in this case, the user must balance the transmission data rate and the bandwidth capability of the host interface. a djust the following settings accordingly to optimize the host interface band width: ? for the uart, adjust the b aud rate in baud_rate ( uart_ctrl [ 0x08(w1) ] bit [9:8]) . ? for the spi, adjust the host side spi clock frequency and spi wait time . a djust the following settings accordingly to optimize the transmission data rate : ? the t ransmission data rate is affected by the data output rate setting in dout_rate (smpl_ctrl [ 0x04(w1) ] bits [15:8]) . ? the transmission data rate is also affected by the number of output bytes included in burst mode read transfer. the adjustment to the number of output bytes is in register s burst_ctrl1 [ 0x0c(w1) ] and burst_ctrl2 [ 0x0e(w1) ] . several concrete example s for setting the transmission data rate and host interface band width are shown below: (1) for uart and 32 - bit output : ? baud_rate =?11" of uart_ctrl [ 0x08(w1) ] bit [ 9:8 ] : 460800 baud ? dout_rate = 0x02 of smpl_ctrl [ 0x04(w1) ] bit [ 15:8 ]: 1000sps ? burst_ctrl1 [ 0x0c(w1) ] = 0xf006 : f l a g, temp , angle rate, acceleration, gpio, and count output ? burst_ctrl2 [0x0e(w1)] = 0x7000: temp , angle rate, and acceleration output are 32 -bit . in the above case, a data output rate of 1000sps is supported, but 2000sps is not . (2) for spi and 32 - bit output : ? spi interface t ransmission s etting: fsclk=1mhz and tstall=24us for normal mode ? dout_rate = 0x02 of smpl_ctrl [0x04(w1)] b it [15:8]: 1000sps ? b urst_ctrl1 [0x0c(w1)] = 0xf006: f l a g, temp , angle rate, acceleration, gpio, and count output ? burst_ctrl2 [0x0e(w1)] = 0x7000: all temp , angle rate, and acceleration output are 32 - bit. in the above case, a data output rate of 1000sps is supported, but 2000sps is not. (3) for uart and 16 - bit output : ? baud_rate =?11" of uart_ctrl [0x08(w1)] bit [9:8]: 460800 baud ? dout_rate = 0x01 of smpl_ctrl [0x04(w1)] bit [15:8]: 2000sps ? burst_ctrl1 [0x0c(w1)] = 0xf006: f l a g, temp , angle rate, acceleratio n, gpio, and count output
26 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 ? burst_ctrl2 [0x0e(w1)] = 0x0000: all temp , angle rate, and acceleration output are 16 - bit. in the above case, a data output rate of 2000sps is supported. (4) for spi and 16 - bit output : ? spi interface transmission setting: fsclk=1m hz and tstall=24us for normal mode ? dout_rate = 0x01 of smpl_ctrl [0x04(w1)] bit [15:8]: 2000sps ? burst_ctrl1 [0x0c(w1)] = 0xf006: f l a g, temp , angle rate, acceleration, gpio, and count output ? burst_ctrl2 [0x0e(w1)] = 0x0000: all temp , angle rate, and accele ration output are 16 - bit. in the above case, a data output rate of 2000sps is supported. 6.1 spi i nterface table 6.1 shows the communication settings of spi interface and table 6.2 shows the spi timing for normal mode . table 6.1 spi c ommunication settin gs parameter set value mode slave word length 16 bits phase rising edge polarity negative logic table 6.2 spi t iming ( n ormal m ode) parameter minimum maximum unit f sclk 0.01 2.0 mhz t stall 20 - s t writerate 40 - s t readrate 40 - s
m - g362pdc1 data sheet seiko epson corporation 27 rev. 201312 17 6.1.1 spi r ead t iming ( n ormal m ode) the response data to a read command, i.e. the data from the internal register, is always returned in 16- bit words. the spi interface supports sending the next command during the same bus cycle as receiving a response to the read command (full - duplex) . sclk sdo sdi /cs command response t readrate t stall command response d 1 5 d 1 4 d 1 3 d 1 2 d 1 1 d 1 0 d 9 d 8 d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 figure 6.1 spi read timing ( n ormal m ode) table 6.3 c ommand f ormat ( r ead) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 a[6:0] xx a 6:0 ??? register address (even address) xx ??? don't care table 6.4 r esponse f ormat ( r ead) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 d[15:8] d[7:0] d 15:8 ??? register read data ( upper byte) d 7:0 ??? register read data (lower byte)
28 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 6.1.2 spi wr ite t iming ( n ormal m ode) a write command to a register has no response. unlike register reading, registers are written in 8 - bit words . sclk sdi /cs t writerate t stall d 1 5 d 1 4 d 1 3 d 1 2 d 1 1 d 1 0 d 9 d 8 d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 command command d 1 5 d 1 4 d 1 3 d 1 2 d 1 1 d 1 0 d 9 d 8 d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 figure 6.2 spi write timing (normal mode) table 6.5 c ommand f ormat ( write ) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1 a[6:0] d[7:0] a 6:0 ??? register address (even or odd number) d 7:0 ??? register writ e data
m - g362pdc1 data sheet seiko epson corporation 29 rev. 201312 17 6.1.3 spi r ead t iming ( b urst m ode) burst mode access of read data is supported using a ?burst read command? by writing 0x00 in burst_cmd (burst [0x00(w0)] bits[7:0]) . in bur st mode, nd flag/ea flag, temperature sensor value, 3 - axis gyroscope sensor value, 3 - axis acceleration sensor value, gpio, etc. are consecutively sent as a response. the response format for the burst read output data is configured by register setting in bu rst_ctrl1 [0x0c(w1)] and burst_ctrl2 [0x0e(w1)]. please refer to 6.3 data packet format for the response format. table 6.6 spi t iming ( b urst m ode) parameter minimum maximum unit f sclk 0.01 1 .0 mhz t stall 1 45 - s t stall 2 4 - s t readrate 2 32 - s /cs t stall1 t stall2 t readrate2 response sclk sdo sdi command nd/ea temp_high temp_low count t stall2 t stall2 t readrate2 t readrate2 0x8000 figure 6.3 spi timing (burst mode)
30 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 6.2 uart i nterface table 6.7 shows the supported uart communication settings and figure 6.4 shows the uart bit format . please refer to baud_rate ( uart_ctrl [ 0x08(w1) ] bits[9:8 ]) for changing the baud rate setting . note: the brate pin should be changed only when the imu is powered off, or requires asserting a hardware reset after the brate pin change. table 6.7 uart c ommunication settings parameter set value transfer rate 19. 2kbps/115.2kbps/ 230.4kbps/460.8kbps start 1 bit data 8 bits stop 1 bit parity none delimiter cr(0x0d) tx, rx s1 d0 d1 d2 d3 d4 d5 d6 d7 s2 start bit stop bit data figure 6.4 uart bit format for the uart interface, a delimiter (1 byte) is be placed at the end of each command (by the host) and response (by t he imu). in addition for responses, the address (1 byte) specified by the command is added (by the imu) to the beginning of the response. table 6.8 and table 6.9 show s the timing of uart. table 6.8 uart t iming parameter manual mode auto mode unit norm al mode burst mode minimum maximum minimum maximum minimum maximum t stall ( 19.2k bps) - 2 5 - 50 - - *2 s t stall ( 115.2k bps) - 2 5 - 50 - - *2 s t stall ( 230.4k bps) - 2 5 - 50 - - *2 s t stall (460.8kbps) - 2 5 - 50 - - *2 s t writerate ( 19.2 kbps) 3,700 - - - 3,700 - s t writerate ( 115.2 kbps) 650 - - - 650 - s t writerate (230.4kbps) 350 - - - 350 - s t write rate (460.8kbps) 200 - - - 200 - s t readrate ( 19.2 kbps) 3,700 - *1 - - *2 - s t readrate ( 115.2 kbps) 650 - *1 - - *2 - s t readrate (230.4kbps) 350 - *1 - - *2 - s t readrate (460.8kbps) 200 - *1 - - *2 - s *1) please refer to table 6.9. *2) r egister re ading is not supported while in s ampling m ode with uart auto m ode enabled .
m - g362pdc1 data sheet seiko epson corporation 31 rev. 201312 17 table 6.9 uart t iming (treadrate requirements for b urst m ode) parameter burst m ode (minimum) unit t readrate (19.2kbps ) 2700 + ( 520.8 * b ) s t readrate (115.2kbps ) 500 + ( 86.8 * b ) s t readrate (230.4kbps) 300 + ( 43.4 * b ) s t readrate (460.8kbps) 200 + ( 21.7 * b ) s b = number of receive data bytes (ad: address and cr: delimiter is not included). example treadrate calculation: burst_ctrl1 [ 0x0c(w1) ] : set value 0xf006 bur st_ctrl2 [ 0x0e(w1) ] : set value 0x7000 b=34 byte for the above stated register setting treadrate(460.8kbps) = 200 + (21.7 * 34) = 937.8(s) 6.2.1 uart r ead t iming ( n ormal m ode) the response to the read command, i.e. the data from the internal register, is always returned 16 - bit data at a time. the register address (ad) comes at the beginning of the response, for example, 0x 02 for the mode_ctrl [0x02(w0)] register. sin sout command cr command cr response cr ad response cr ad t readrate t stall figure 6.5 uart read timing (normal mode) table 6.10 c ommand f ormat ( r ead) f irst byte s e cond byte t hird byte 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 0 a[6:0] xx 0x0d a [ 6:0 ] ??? register address (even address) xx ??? don't care 0x0d ??? delimiter table 6.11 r esponse f ormat ( r ead) f irst byte s econd byte t hird byte f ourth byte 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 0 a[6:0] d[15:8] d[7:0] 0x0d a [ 6:0 ] ??? register address (even address) d [ 15:8 ] ??? register read data ( upper byte) d [ 7:0 ] ??? register read data (lower byte) 0x0d ??? delimiter
32 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 6.2.2 uart r ead t iming ( b urst m ode) burst mode access of r ead data is supported using a ?burst read co mmand? by writing 0x00 in burst_cmd (burst [0x00(w0) ] bits[7:0]) . in b urst m ode, nd flag/ea flag, t emperature sensor value, 3 - axis gyroscope sensor value, 3 - axis acceleration sensor value, gpio, etc. are consecutive ly sent as a response. the response forma t for the burst read output data is configured by register setting in burst_ctrl1 [0x0c(w1)] and burst_ctrl2 [0x0e(w1)]. please refer to 6.3 d ata p acket format for the response format. t readrate t stall response sin sout 0x80xx cr command checksum count cr nd/ea temp_ h ad 0x80xx cr command figure 6.6 uart read timing (burst mode) table 6.12 c ommand f ormat ( b urst m ode) f irst byte s econd byte t hird byte 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 0x8 0 xx 0x0d 0x80 ??? burst c ommand xx ??? don't care 0x0d ??? delimiter 6.2.3 uart write t iming a write command to a register will have no response. unli ke register reading, registers are written in 8 - bit words. sin sout command cr command cr t writerate figure 6.7 uart write timing table 6.13 c ommand f ormat ( write ) f irst byte s econd byte t hird byte 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 1 a[6:0] d[7:0] 0x0d a [ 6:0 ] ??? register addre ss (even number or odd number) d [ 7:0 ] ??? register writ e data 0x0d ??? delimiter
m - g362pdc1 data sheet seiko epson corporation 33 rev. 201312 17 6.2.4 uart a uto m ode o peration when uart auto mode is active, all sensor outputs are sent as burst transfer automatically at the programmed output data rate without the reque st from the host. for information about the response format, see 6.3 uart data packet format. the response format for the burst read output data is configured by register setting in burst_ctrl1 [0x0c(w 1)] and burst_ctrl2 [0x0e(w1)]. internal sync sampling sout start sampling response response nd/ea ad temp xgy ro ygyro z gy ro xa ccl y a ccl z a ccl gpio cr figure 6.8 uart auto mode operation
34 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 6.3 data p acket format the following table shows example of the data packet format sent to the host in the uart burst mode or uart auto mode. table 6.14 uart d ata packet f ormat (uart b urst /a uto m ode ) e xample : 16- bit o utput burst_ctrl1[0 x0c(w1)]=0xf007 / burst_ctrl2[0x0e(w1)]=0x0000 byte no. name bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 1 ad d ress 0x80 2 nd nd (temp) nd (xgyro) nd (ygyro) nd (zgyro) nd (xaccl) nd (yaccl) nd (zaccl) - 3 ea - - - - - - - ea 4 temp_high_ h temp_ high [15:8] 5 temp_high_l temp_ high [7:0] 6 xgyro_high _h xgyro_ high [15:8] 7 xgyro_high _l xgyro_ high [7:0] 8 ygyro_high _h ygyro_ high [15:8] 9 ygyro_high _l ygyro_ high [7:0] 10 zgyro_high _h zgyro_ high [15:8] 11 zgyro_high _l zgyro_ high [7:0] 12 xaccl_high_ h xaccl _ high [15:8] 13 xaccl_high_ l xaccl _ high [7:0] 14 yaccl_high_ h yaccl _ high [15:8] 15 yaccl_high_ l yaccl _ high [7:0] 16 zaccl_high_ h zaccl _ high [15:8] 17 zaccl_high_ l zaccl _ high [7:0] 18 gpio_h - - - - - gpio _data3 gpio _data2 gpio _data1 19 gpio_ l - - - - - gpio _dir3 gpio _dir2 gpio _dir1 20 count_h count [15:8] 21 count_l count [7:0] 2 2 checksum _h checksum [15:8] 2 3 checksum _l checksum [7:0] 2 4 cr 0x0d
m - g362pdc1 data sheet seiko epson corporation 35 rev. 201312 17 table 6.15 uart data packet format (uart burst/auto mode) example: 32 - bit output burst _ctrl1[0x0c(w1)]=0xf007 / burst_ctrl2[0x0e(w1)]=0x7000 byte no. name bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 1 ad dress 0x80 2 nd nd (temp) nd (xgyro) nd (ygyro) nd (zgyro) nd (xaccl) nd (yaccl) nd (zaccl) - 3 ea - - - - - - - ea 4 temp_high_ h temp_ high [15:8] 5 temp_high_l temp_ high [7:0] 6 temp_low_h temp_ low [15:8] 7 temp_low_l temp_ low [7:0] 8 xgyro_high _h xgyro_ high [15:8] 9 xgyro_high _l xgyro_ high [7:0] 10 xgyro_low_ h xgyro_ low [15:8] 11 xgyro_low_ l xgyro_ low [7:0] 12 ygyro_high _h ygyro_ hig h [15:8] 13 ygyro_high _l ygyro_ high [7:0] 14 ygyro_low_ h ygyro_ low [15:8] 15 ygyro_low_ l ygyro_ low [7:0] 1 6 zgyro_high _h zgyro_ high [15:8] 1 7 zgyro_high _l zgyro_ high [7:0] 1 8 zgyro_low_ h zgyro_ low [15:8] 1 9 zgyro_low_ l zgyro_ low [7:0] 20 xaccl_high_ h xaccl_ high [15:8] 21 xaccl_high_ l xaccl _ high [7:0] 22 xaccl_low_ h xaccl_ low [15:8] 23 xaccl_low_ l xaccl _ low [7:0] 24 yaccl_high_ h yaccl _ high [15:8] 25 yaccl_high_ l yaccl _ high [7:0] 26 yaccl_low_ h yaccl _ low [15:8]
36 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 27 yaccl_low_ l yaccl _ low [7: 0] 28 zaccl_high_ h zaccl _ high [15:8] 29 zaccl_high_ l zaccl _ high [7:0] 30 zaccl_low_ h zaccl _ low [15:8] 31 zaccl_low_ l zaccl _ low [7:0] 32 gpio_h - - - - - gpio _data3 gpio _data2 gpio _data1 33 gpio_l - - - - - gpio _dir3 gpio _dir2 gpio _dir1 34 count_h count [15:8] 35 count_l count [7:0] 36 checksum _h checksum [15:8] 37 checksum _l checksum [7:0] 38 cr 0x0d table 6.1 6 data packet format ( spi burst mode ) example: 16 - bit output burst_ctrl1 [0x0c(w1)]=0xf007 / burst_ctrl2 [0x0e(w1)]= 0x 0 000 word n o. bit 15 bit0 1 flag(nd/ea) 2 temp_high 3 xgyro_high 4 y gyro_ high 5 z gyro_high 6 xaccl_high 7 yaccl _high 8 zaccl _high 9 gpio 10 count 11 checksum
m - g362pdc1 data sheet seiko epson corporation 37 rev. 201312 17 table 6.1 7 data packet format ( spi burst mode ) example: 32 - bit output burst_ctrl1 [0x0c(w1) ]=0xf007 / burst_ctrl2 [0x0e(w1)]= 0x 7 000 word no. bit 15 bit0 1 flag(nd/ea) 2 temp_high 3 temp_ low 4 xgyro_high 5 xgyro_ low 6 y gyro_ high 7 y gyro_ low 8 z gyro_high 9 z gyro_ low 10 xaccl_high 11 xaccl_ low 12 yaccl _high 13 yaccl _ low 14 zaccl _ high 15 zaccl _ low 16 gpio 17 count 18 checksum
38 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7. user r egisters a host device (for example, a microcontroller) can control the imu by accessing the control registers inside the device. the register s are accessed in this device using a window metho d. the prescribed window number is first written to window_id of win_ctrl [ 0x7e(w0/w1) ] bit [ 7:0 ], then the desired register address can be accessed . the win_ctrl [ 0x7e(w0/w1) ] register can always be accessed with out needing to set the window number. duri ng the power - on start - up time or the reset recovery time specified in the table 2.4 interface specifications, all the register values are undefined because internal initialization is in progress. ensure the imu registers are only accessed after the power - o n start - up time is over. for information about the initial values of the control registers after internal initialization is finished, see the ?default? column in the table 7.1 . the c ontrol r egisters with mark in the flash backup column can be saved to the non - volatile memory by the user, and the initial values after the power on will be the values read from the non - volatile memory. if the read out from the non - volatile memory fails, the f lash_err (diag_stat [0x04(w0)] bit[2]) is set to 1 (error). please en sure that the imu is in the c onfiguration m ode before writing to registers. in the s ampling m ode, writing to registers is ignored except for the following cases. ? mode_ctrl [0x02(w0)] bit [9:8] in mode_cmd ? gpio [0x08(w0)] bit [10:8] in gpio_data ? glob_cmd [0x0a(w1)] bit 7 in soft_rst ? win_ctrl [0x7e(w0/w1)] bit [7:0] in window_id while in the uart auto mode and sampling mode is active, register read access is not supported. otherwise, the sam pling data transmitted in the uart auto mode will be corrupted by the response data from the register read. each register is 16 - bit wide and one address is assigned to every 8 bits. registers are read in 16 - bit words and are written in 8 - bit words. the byt e order of each 16 - bit register is little endian, but the byte order of the 16 - bit data transferred over the digital interface is big endian table 7.1 shows the register map, and section 7.1 through section 7.18 describes the registers in detail. the ? - ? s ign in the register assignment table in section 7.1 through section 7.18 means ?reserved?. write a ?0? to reserved bit s during a write operation. during a read operation, a reserved bit can return either 0 or 1 (?don?t care?). writing to a read - only regist er is prohibited. note : the explanation of the register notation mode_ctrl [ 0x02(w0) ] bit [ 9:8 ] is as follows: ? mode_ctrl: register name ? [0x02(w0)]: first number is the register address, (w0) means window number ?0? ? bit[9:8]: bits 9 to 8
m - g362pdc1 data sheet seiko epson corporation 39 rev. 201312 17 table 7.1 r eg ister m ap name window id address r/w flash backup default function burst 0 0x00 w - burst mode mode_ctrl 0 0x03,0x02 r/w 0x 0400 operation mode control diag_stat 0 0x04 r 0x 0000 diagnostic result flag 0 0x06 r 0x 0000 nd flag/.ea flag gpio 0 0x09,0 x08 r/w 0x 0600 gpio count 0 0x0a r 0x 0000 sampling count value temp_high 0 0x0e r 0xffff temperature sensor value high temp_low 0 0x10 r 0xffff temperature sensor value low xgyro_high 0 0x12 r 0x ffff x gyroscope sensor value high xgyro_low 0 0x14 r 0x ffff x gyroscope sensor value low ygyro_high 0 0x16 r 0x ffff y gyroscope sensor value high ygyro_low 0 0x18 r 0x ffff y gyroscope sensor value low zgyro_high 0 0x1a r 0x ffff z gyroscope sensor value high zgyro_low 0 0x1c r 0x ffff z gyroscope s ensor value low xaccl_high 0 0x1e r 0x ffff x acceleration sensor value high xaccl_low 0 0x20 r 0x ffff x acceleration sensor value low yaccl_high 0 0x22 r 0x ffff y acceleration sensor value high yaccl_low 0 0x24 r 0x ffff y acceleration sensor value low zaccl_high 0 0x26 r 0x ffff z acceleration sensor value high zaccl_low 0 0x28 r 0x ffff z acceleration sensor value low sig_ctrl 1 0x01,0x00 r/w 0xfe00 dataready signal & polarity control msc_ctrl 1 0x03,0x02 r/w 0x0006 other control smpl_ct rl 1 0x05,0x04 r/w 0x0201 sampling control filter_ctrl 1 0x07,0x06 r/w 0x0002 filter control uart_ctrl 1 0x09,0x08 r/w 0x0000 uart control glob_cmd 1 0x0b,0x0a r/w 0x0000 system control burst_ctrl1 1 0x0d,0x0c r/w 0xf006 burst control 1 burst_ctrl2 1 0x0f,0x0e r/w 0x7000 burst control 2 win_ctrl 0,1 0x7f,0x7e r/w 0x0000 register window control
40 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7. 1 burst register (window 0) addr (hex) bit 15 ... bit 8 r/w 0x01 - - addr (hex) bit 7 ... bit0 r/w 0x00 burst _cmd w bit[ 7 :0] burs t _cmd a burst mode read operation is initiated by writing 0x00 in burst_cmd of this register. n ote : the data transmission format is described in 6.1.3 spi r ead t iming ( b urst m ode) and 6.2.2 uart read timing (burst mode). also r efer to 6.3 d ata p acket for mat . the o utput data can be selected by setting burst_ctrl1 [ 0x0c(w1) ] and burst_ctrl2 [ 0x0e(w1) ] . 7 . 2 mode_ctrl register (window 0) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x03 - - - - - mode _stat mode_cmd r/w *1 addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x02 - - - - - - - - - *1) only mode_stat is read - only. bit[10] mode_stat this read - only status bit shows the current operation mode. 1: configuration mode 0: sampling mode bit[9:8] mode_cmd executes commands rela ted to the operation mode. 01: go to the s ampling m ode. after the mode transition is completed, the bits automatically goes back to ?00?. 10: go to the c onfiguration m ode. after the mode transition is completed, the bits automatically goes back to ?00?. 11 : (not used) 00: (not used)
m - g362pdc1 data sheet seiko epson corporation 41 rev. 201312 17 7 .3 diag_stat register (window 0) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x05 - st_err (xgyro) st_err (ygyro) st_err (zgyro) st_err (accl) - - - r addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r /w 0x04 - hard _err spi _ovf uart _ovf flash _err st_err _all flash _bu_er r r note : when the host reads the diagnosis result, all the results (including the ea flag in the flag register) will be cleared to 0. bit[14:11] st_err (selftest error) shows the result of self_test (internal self test) of msc_ctrl [ 0x02(w1) ] bit 10. 1 :error occurred 0 :no error bit[6:5] hard_err shows the result of the hardware check at startup . other than 00 :error occurred 00 : no error when this error occurs, it indicates th e i mu is faulty . bit[4] spi_ovf (spi over flow) shows an error occurred if the device received too many commands from the spi interface in short period of time. 1 :error occurred 0 : no error when this error occurs, review the spi command transmission interv al and the spi clock setting. bit[3] uart_ovf (uart over flow) shows an error occurred if the data transmission rate is faster than the uart baud rate . 1 :error occurred 0 :no error when this error occurs, review the settings for baud rate , data output r ate, uart burst/auto mod e in combination . bit[2] flash_err shows the result of flash_test of msc_ctrl [ 0x02(w1) ] bit 11. 1 :error occurred 0 :no error this error indicates a failure occurred when reading data out from the non - volatile memory . bit[1] st_e rr_all (selftest error all) shows the logical sum of bit [ 14:11 ] of this register. 1 :error occurred 0 :no error bit[0] flash_bu_err (flash backup error) shows the result of flash_backup of glob_cmd [ 0x0a(w1) ] bit 3. 1 :error occurred 0 :no error
42 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7. 4 fl ag(nd/ea) register (window 0) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x 0 7 nd (t emp ) nd (xgyro) nd (ygyro) nd (zgyro) nd (xaccl) nd (yaccl) nd (zaccl) - r addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x 0 6 - - - - - - - ea r bit[15:9] nd(new data) flag when a new measuring data is set in each register of temperature ( temp_high ), gyroscope ( xgyro_high , ygyro_ high , zgyro_ high ), and acceleration ( xaccl_ high , yaccl_ high , zaccl_ high ), the corresponding nd flag is set to ?1 ?. when the measurement output is read from the corresponding register, the flag is reset to ?0? . bit[0] ea(all error) flag when at least one failure is found in the diagnostic result (diag_stat [ 0x04(w0) ] ), the flag is set to ?1? ( failure occurred ). 7.5 gpio register (window 0) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x09 - - - - - gpio _data3 gpio _data2 gpio _data1 r/w addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x08 - - - - - gpio _dir3 gpio _dir2 gpio _dir1 r/w bi t[10:8] gpio_data if the corresponding gpio_dir bit is set to ?output?, the value set in the gpio_data is output to the gpio port. if the corresponding gpio_dir bit is set to ?input?, the input level of the gpio port is returned by reading the gpio_data . 1 :high level 0 :low level bit[2:0] gpio_dir each bit controls the bitwise direction of the gpio port . 1 :output 0 :input note ) gpio1 is share d with the data ready signal function on the same terminal. the terminal functions as gpio1 when drdy_on is 0 (di sabled). the selection between gpio1 and data ready signal is control led with drdy_on of msc_ctrl [ 0x02(w1) ] bit 2. note ) gpio2 is shared with the ext signal input function ( external trigger input and external counter reset input) on the same terminal. th e terminal functions as gpio2 when ext_sel is 00 (gpio2) . the selection between gpio2 and the ext signal input is controlled with ext_sel of msc_ctrl [ 0x02(w1) ] bit [ 7:6 ] .
m - g362pdc1 data sheet seiko epson corporation 43 rev. 201312 17 7.6 count register (window 0) addr (hex) bit15 ... bit0 r/w 0x0a count r bit[1 5:0] count the value returned by this register depends on whether the external counter reset input function is enabled or not . the external counter reset input is enabled when ext_sel of msc_ctrl [0x02(w1)] bit [7:6] = 01. when the external counter reset input function is disabled, this register returns the sampling count value of the internal a/d converter . note: the time unit of the sampling counter value represents 250 s/count. example: if the data output rate equals 2 000sps, the counter value sequence is 0, 2,4,6, ... , 0xfffe, 0, 2, ... . when the external counter reset input function is enabled, this register returns the timer counter value used by the external counter reset input function . 7. 7 temp register (window 0) addr (hex) bit15 ... bit0 r/w 0x0e temp_high r 0x10 temp_low r bit[15:0] temperature sensor output data the internal temperature sensor value can be read. the output data format is 32 - bit two 's complement form at . for 16 - bit usage, treat the data as 16 - bits two 's complement us ing the upper 16- bits ( temp_high ). please refer to the below formula for conversion to temperature in centigrade. please refer to table 2.3 sensor specification for the scale factor value. for 32 - bit usage : , t [ ]= (sf/65536) * ( a + 997064704 ) + 25 f or 16 - bit usage : t [ ]= sf * ( a + 15214 ) + 25 sf : scale factor a: temperature sensor output data (decimal) note: the reference value in this register is for the temperature correction. there is no guarantee that the value provides the absolute value o f the internal temperature.
44 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7. 8 gyro register (window 0) addr (hex) bit15 ... bit0 r/w 0x12 xgyro _ high r 0x14 xgyro _ low r 0x16 ygyro _ high r 0x18 ygyro _ low r 0x1a zgyro _ high r 0x1c zgyro _ low r bit[15:0] gyroscope output data returns the 3 - axis gyroscope data for x, y, and z as referenced in figure 3.1 outline dimensions ( millimeters ) . the output data format is 32 - bits two's complement. for 16 - bit usage, treat the data as 16 - bits two's complement using the upper 16 - bits . please refer to table 2.3 s ensor s pecification for the scale factor value . for 32 - bit usage:, g [ deg/s ]= (sf/65536) * b for 16 - bit usage: g [ deg/s ]= sf * b sf : scale factor b : gyroscope output data (decimal) 7. 9 accl register (window 0) addr (hex) bit15 ... bit0 r /w 0x1e xaccl_ high r 0x20 x accl _ low r 0x22 yaccl _ high r 0x24 yaccl _ low r 0x26 zaccl _ high r 0x28 zaccl _ low r bit[15:0] acceleration sensor output data returns the 3 - axis acceleration data for x, y, and z as referenced in figure 3.1 outlin e dimensions ( millimeters ) . the output data format is 32 - bits two's complement. for 16 - bit usage, treat the data as 16 - bits two's complement using the upper 16 - bits. please refer to table 2.3 sensor specification for the scale factor value. for 32 - bit usage:, a [ mg ]= (sf/65536) * c for 16 - bit usage: a [ mg ]= sf * c sf : scale factor c : acceleration sensor output data (decimal)
m - g362pdc1 data sheet seiko epson corporation 45 rev. 201312 17 7. 10 sig_ctrl register (window 1) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x01 nd_en (temp) nd_en (xgyr o) nd_en (ygyro) nd_en (zgyro) nd_en (xaccl) nd_en (yaccl) nd_en (zaccl) - r/w addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x00 - pol _ctrl (xgyro) pol _ctrl (ygyro) pol _ctrl (zgyro) pol _ctrl (xaccl) pol _ctrl (yaccl) pol _ctrl (zaccl) - r/ w bit[15:9] nd_en enables or disables the nd flags in flag [ 0x06(w0) ] bi t [ 15:9 ] . 1 : enable 0 : disable bit[6:1] pol_ctrl specifies whether to bitwise invert the output value of the following registers: angular rate ( xgyro , ygyro , zgyro ) and acceleration ( xaccl , yaccl , zaccl ). 1 : inverted 0 :no t inverted 7. 11 msc_ctrl register (window 1) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x03 - - - - flash _test self _test - - r/w addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x02 ext _sel ext _pol - - drdy _on drdy _pol - r/w note: t he flash_test , and self_test functions can not be executed at the same time. when e xecut ing them in succession, confirm the execution of the previous command is finished by waiting until th e bit change s from ?1? to ?0? a nd then execute the next command. bit[11] flash_test write ?1? to execute the data consistency test for the non - volatile memory. the read value of the bit is ?1? during the test and ?0? after the test is completed. after writing ?1? to this bit, wait until this bit goes back to ?0? and then read the flash_err of diag_stat [ 0x04(w0) ] bit 2 to check the result . bit[10] self_test write ?1? to execute the self test to check if the gyroscope and the accelerometer are working properly. the re ad value of the bit is ?1? during the test and ?0? after the test is completed. after writing ?1? to this bit, wait until this bit goes back to ?0? and then read the st_err_all of diag_stat [ 0x04(w0) ] b it 1 to check the results . bit[ 7 : 6 ] ext_sel the se bit s select the function of gpio2 terminal to be gpio2 , e xternal c ounter r eset i nput, or external trigger input . 0 0 : gpio2 01: external c ounter r eset i nput
46 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 10: external trigger input 11: unused bit[ 5 ] ext_pol selects the polarity of the e xternal c ounter r ese t i nput or external trigger input function . 1 : negative logic (falling edge) 0 : positive logic (rising edge) bit[2] drdy_on selects t he function of the gpio1 terminal for either gpio1 or d ata r eady . 1 : data ready s ignal 0 : gpio1 bit[1] drdy_pol selec ts the polarity of the data ready signal when selected in drdy_on above . 1 : active high 0 : active low 7. 1 2 smpl_ctrl register (window 1) addr (hex) bit15 ... bit8 r/w 0x05 dout_rate r/w addr (hex) bit7 ... bit0 r/w 0x04 - - bit[15:8] dout_rate s pecifies t he data output rate. the following lists the data output rate option with the recommended number of filter taps . 0x01 : 2 000sps tap>=2 0x0 2 :1000sps tap>= 4 0x0 3 : 500sps tap>= 8 0x 0 4 : 250sps tap>= 16 0x 0 5 : 125sps tap>= 32 0x06 : 62.5sps tap >=64 0x07 : 31.25sps tap=128 7. 1 3 filter _ctrl register (window 1) addr (hex) bit 15 ... bit 8 r/w 0x07 - - addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x06 - - filter_ stat filter_sel r/w *1 *1) only filter _stat is read - only. bit[ 5 ] filte r _stat
m - g362pdc1 data sheet seiko epson corporation 47 rev. 201312 17 this read - only status bit shows the completion status of the filter selection . after setting the filter_sel in bits[4:0] , this status bit will be set 1. after completion of the filter setting operation , this bit will return to 0. 1: filter s etting is busy 0: filter s etting is completed bit[ 4:0 ] filter_sel specifies the type of filter (moving average filter and fir kaiser filter) and tap setting . for t he fir kaiser filter , th ese bits also select s the cutoff frequency fc in hz. after setting the filte r with these bits , the completion of the operation requires time period specified in table 2.4 filter setting time to elapse or confirming completion by checking filter_stat bit 5. note: refer to 5.13 filter for description of filter transient response fro m sampling start. 00001: moving average filter tap=2 00010: moving average filter tap=4 00011: moving average filter tap=8 00100: moving average filter tap=16 00101: moving average filter tap=32 00110: moving average filter tap=64 00111: moving average fi lter tap=128 01000: fir kaiser filter (parameter=8) tap=32 and fc = 50 01001: fir kaiser filter (parameter=8) tap=32 and fc = 100 01010: fir kaiser filter (parameter=8) tap=32 and fc = 200 01011: fir kaiser filter (parameter=8) tap=32 and fc = 400 01100: fir kaise r filter (parameter=8) tap=64 and fc = 50 01101: fir kaiser filter (parameter=8) tap=64 and fc = 100 01110: fir kaiser filter (parameter=8) tap=64 and fc = 200 01111: fir kaiser filter (parameter=8) tap=64 and fc = 400 10000: fir kaiser filter (parameter=8) tap=12 8 and fc = 50 10001: fir kaiser filter (parameter=8) tap=128 and fc = 100 10010: fir kaiser filter (parameter=8) tap=128 and fc = 200 10011: fir kaiser filter (parameter=8) tap=128 and fc = 400 10100 - 11111: unused 7.1 4 uart_ctrl register (window 1) addr (hex) bit 15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x09 - baud_rate r/w addr (hex) bit7 ... bit2 bit1 bit0 r/w 0x08 - auto _start uart _auto r/w bit[ 9:8 ] baud_rate these bits specifies the baud rate of uart interface . 00 : 19.2 kbps when brate pin = lo w, 460.8 kbps when brate pin = high 0 1 : 115.2kbps 10 : 230.4kbps 11 : 460.8kbps
48 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 n ote: the brate pin should be changed only when the imu is powered off, or requires asserting a hardware reset or software reset (write a 1 to soft_rst of glob_cmd [0x0a(w1)] bit 7) after the brate pin change. note: t he baud rate change using these baud_rate bits become effective immediately after writ e access completes . bit[1] auto_start (only valid for uart auto mode) enables or disables the auto start function. 1 : a utomatic s tart is enabled 0 :automatic s tart is disabled when auto start is enabled, the device enters sampling mode and sends sampling data automatically after completing internal initialization when imu is powered on or reset. write a "1" to this auto_start bit and uart_auto bit of this register to enable this function.then execute flash_backup of glob_cmd [ 0x0a(w1) ] bit 3 to preserve the current register setting s. bit[0] uart_auto enables or disables the uart auto mode function. note: this register bit must b e set to 0 when using the spi interface. 1 :uart automatic mode is selected 0 :uart manual mode is selected if u art automatic mode is active, register values such as flag, temperature, angle rate (xgyro, ygyro, zgyro), accelerations (xaccl, yaccl, zaccl), and gpio are continuously transmitted automatically according to the data output rate set by smpl_ctrl [ 0x04(w1) ] register. in uart manual mode, register data is transmitted as a response to a register read command . note: for more info on uart a uto m ode refer to 6.2.4 uart auto mode operation and 6.3 data packet format . the burst output data is configured by register setting in burst_ctrl1 [0x0c(w1)] and burst_ctrl2 [0x0e(w1)]. 7.1 5 glob_cmd register (window 1) addr (hex) bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8 r/w 0x0b - - - - - not _ready - - r addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x0a soft _rst - - - flash _backup - - - r/w bit[10] not_ready indicates whether the imu is currently ready. immediately after power on, this b it is ?1? and becomes ?0? when the imu is ready. after the power on, wait until the power - on start - up time has elapsed and then wait until this bit becomes ? 0 ? before starting sensor measurement. this bit is read - only . 1 : n ot ready 0 : ready bit[7] soft_ rst write ?1? to execute software reset. after the software reset is completed, the bit automatically goes back to ?0?.
m - g362pdc1 data sheet seiko epson corporation 49 rev. 201312 17 bit[3] flash_backup write 1 to save the current values of the control registers with the mark in the flash backup column of table 7.1 to the non - volatile memory. after the execution is completed, the bit automatically goes back to 0 . after confirming this bit goes bac k to ?0? and then check the result in flash_bu_err of diag_stat [0x04(w0)] bit 0. 7.1 6 burst_ctrl1 register (window 1) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x0d flag _out temp _out gyro _out accl _out - r/w addr (hex) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 r/w 0x0c - gpio _out count _out chksm _out r/w the se bits enable/disable the content in the output data for burst mode and uart auto mode. bit[1 5 ] flag_out controls t he output of flag status . 1 : enables output. 0 : disable s output. bit[1 4 ] temp_out controls the output of temperatura sensor . 1 :enables output. 0 :disables output. bit[1 3 ] gyro_out controls the output of gyro scope sensor . 1 :enables output. 0 :disables output. bit[1 2 ] accl_out controls the output of acc eleration sensor . 1 :enables output. 0 :disables output. bit[ 2 ] gpio_out controls the output of gpio status . 1 :enables output. 0 :disables output. bit[1 ] count_out controls the output of counter value . 1 :enables output. 0 :disables output. bit[ 0 ] chksm_out controls the output of checksum. 1 :enables output. 0 :disables output.
50 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 7.1 7 burst_ctrl2 register (window 1) addr (hex) bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 r/w 0x0f - temp _bit gyro _bit accl _bit - r/w addr (hex) bit 7 ... bi t 0 r/w 0x0e - - the se bits select the output bit length of output data for burst mode and uart auto mode . bit[1 4 ] temp_bit selects the bit length of the temperature output. 1 : 32- bit 0 : 16- bit bit[1 3 ] gyro_bit selects the bit length of the gyroscop e output. 1 : 32- bit 0 : 16- bit bit[1 2 ] accl_bit selects the bit length of the acceleration output . 1 : 32- bit 0 : 16- bit 7.1 8 win _ ctrl register (window 0,1) addr (hex) bit15 ... bit8 r/w 0x7f - - addr (hex) bit 7 ... bit 0 r/w 0x7e window_id r/w bit[ 7: 0] window_id select the desired register window by writing the window number to this register . 0x00 : window 0 0x01 : window 1 0x02 - 0xff: unused
m - g362pdc1 data sheet seiko epson corporation 51 rev. 201312 17 8. sample program sequence the following describes the r ecommended procedure s for operating this device . 8.1 spi sequence 8 . 1.1 power - on sequence (spi) power - on sequence is as follows. (a) power - on. (b) wait 800ms. (c) wait until not_ready bit goes to 0. not_ready is glob_cmd[0x0a(w1)]'s bit[10]. txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={ 0x0a00}/ rxdata={0x ---- }. /* glob_cmd read command */ txdata={0x0000}/ rxdata={glob_cmd}. /* get response */ confirm not_ready bit. when not_ready becomes 0, it ends. otherwise , please repeat (c). (d) confirm hard_err bits. hard_err is diag_stat[0x04(w 0)]'s bit[6:5]. txdata={0xfe00}/ rxdata={0x ---- }. /* window_id write command.(window=0) */ txdata={0x0400}/ rxdata={0x ---- }. /* diag_stat read command */ txdata={0x0000}/ rxdata={diag_stat}. /* get response */ confirm hard_err is 00. if hard_err is 00 , the imu is ok. otherwise, the imu is faulty. - :don't care 8 . 1.2 register read and write (spi) [read example] to read a 16bit - data from a register(addr=0x02 / window=0). txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x0200}/ rxdata={0x ---- }. /* read command */ txdata={0x ---- }/ rxdata={0x0400}. /* get response*/ - :don't care 0x04 in high byte of rxdata is configuration mode. 0x00 in low byte of rxdata is reserved. please note that read data unit is 16bit, and most significant bit first in 16bit spi. ------------------------------------------------------------- [write example] to write a 8bit - data into a register(addr=0x03 / window=0). txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x8301}/ rxdata={0x ---- }. /* write command */ there is no response at write. - :don't care by sending this command, the imu moves to sampling mode. please note that write data unit is 8bit. 8 . 1.3 sampling data (spi) [sample flow 1 (spi normal mode)] power - on sequence. please refer to chapter 8.1. 1.
52 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 filter setting sequence. please refer to chapter 8. 1 . 8 . txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8505}/ rxdata={0x ---- }. /* 125sps */ txdata={0x8800}/ rxdata={0x ---- }. /* disable uart auto mode, just in case. */ txdata={0xfe00}/ r xdata={0x ---- }. /* window=0 */ txdata={0x8301}/ rxdata={0x ---- }. /* move to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b) txdata={0x0600}/ rxdata={0x ---- }. /* flag read command */ txdata={0x0e00}/ rxdata={f lag}. /* temp_high read command */ txdata={0x1000}/ rxdata={temp_high}. /* temp_low read command */ txdata={0x1200}/ rxdata={temp_low}. /* xgyro_high read command */ txdata={0x1400}/ rxdata={xgyro_high}. /* xgyro_low read command */ txdata={0x1600}/ r xdata={xgyro_low}. /* ygyro_high read command */ txdata={0x1800}/ rxdata={ygyro_high}. /* ygyro_low read command */ txdata={0x1a00}/ rxdata={ygyro_low}. /* zgyro_high read command */ txdata={0x1c00}/ rxdata={zgyro_high}. /* zgyro_low read command */ tx data={0x1e00}/ rxdata={zgyro_low}. /* xaccl_high read command */ txdata={0x2000}/ rxdata={xaccl_high}. /* xaccl_low read command */ txdata={0x2200}/ rxdata={xaccl_low}. /* yaccl_high read command */ txdata={0x2400}/ rxdata={yaccl_high}. /* yaccl_low rea d command */ txdata={0x2600}/ rxdata={yaccl_low}. /* zaccl_high read command */ txdata={0x2800}/ rxdata={zaccl_high}. /* zaccl_low read command */ txdata={0x0800}/ rxdata={zaccl_low}. /* gpio read command */ txdata={0x0a00}/ rxdata={gpio}. /* count re ad command */ txdata={0x ---- }/ rxdata={count}. repeat from (a) to (b). txdata={0x8302}/ rxdata={0x ---- }. /* return to configulation mode */ - :don't care notes please remember to wait until data ready signal is asserted. ---------------------------- --------------------------------- [sample flow 2 (spi normal mode)] to read upper 16 bits data of temperature, gyroscope and accelerometer. power - on sequence. please refer to chapter 8.1.1. filter setting sequence. please refer to chapter 8. 1 . 8 . txdata={0 xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8505}/ rxdata={0x ---- }. /* 125sps */ txdata={0x8800}/ rxdata={0x ---- }. /* disable uart auto mode, just in case. */ txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x8301}/ rxdata={0x ---- }. /* m ove to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b) txdata={0x0600}/ rxdata={0x ---- }. /* flag read command */ txdata={0x0e00}/ rxdata={flag}. /* temp_high read command */ txdata={0x1200}/ rxdata={temp_hig h}. /* xgyro_high read command */ txdata={0x1600}/ rxdata={xgyro_high}. /* ygyro_high read command */ txdata={0x1a00}/ rxdata={ygyro_high}. /* zgyro_high read command */ txdata={0x1e00}/ rxdata={zgyro_high}. /* xaccl_high read command */ txdata={0x2200 }/ rxdata={xaccl_high}. /* yaccl_high read command */ txdata={0x2600}/ rxdata={yaccl_high}. /* zaccl_high read command */ txdata={0x0800}/ rxdata={zaccl_high}. /* gpio read command */
m - g362pdc1 data sheet seiko epson corporation 53 rev. 201312 17 txdata={0x0a00}/ rxdata={gpio}. /* count read command */ txdata={0x ---- }/ rxdata={count}. repeat from (a) to (b). txdata={0x8302}/ rxdata={0x ---- }. /* return to configulation mode */ - :don't care notes please remember to wait until data ready signal is asserted. ----------------------------------------------------- -------- [sample flow 3 (spi burst mode)] power - on sequence. please refer to chapter 8.1.1. filter setting sequence. please refer to chapter 8. 1 . 8 . txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8505}/ rxdata={0x ---- }. /* 125sps */ txdata= {0x8800}/ rxdata={0x ---- }. /* disable uart auto mode, just in case. */ txdata={0x8c06}/ rxdata={0x ---- }. /* gpio=on,count=on,checksum=off */ txdata={0x8df0}/ rxdata={0x ---- }. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f70}/ rxdata={0x ---- }. /* tem p=32bit,gyro=32bit,accl=32bit */ txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x8301}/ rxdata={0x ---- }. /* move to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b) txdata={0x8000}/ rxdata={0x ---- }. /* burst command */ txdata={0x ---- }/ rxdata={flag}. txdata={0x ---- }/ rxdata={temp_high}. txdata={0x ---- }/ rxdata={temp_low}. txdata={0x ---- }/ rxdata={xgyro_high}. txdata={0x ---- }/ rxdata={xgyro_low}. txdata={0x ---- }/ rxdata={ygyro_high}. txdata={0x - --- }/ rxdata={ygyro_low}. txdata={0x ---- }/ rxdata={zgyro_high}. txdata={0x ---- }/ rxdata={zgyro_low}. txdata={0x ---- }/ rxdata={xaccl_high}. txdata={0x ---- }/ rxdata={xaccl_low}. txdata={0x ---- }/ rxdata={yaccl_high}. txdata={0x ---- }/ rxdata={yaccl_low}. txdata={0x ---- }/ rxdata={zaccl_high}. txdata={0x ---- }/ rxdata={zaccl_low}. txdata={0x ---- }/ rxdata={gpio}. txdata={0x ---- }/ rxdata={count}. repeat from (a) to (b). txdata={0x8302}/ rxdata={0x ---- }. /* return to configulation mode */ - :don't care notes please remember to wait until data ready signal is asserted. ------------------------------------------------------------- [sample flow 4 (spi burst mode)] to read upper 16 bits data of temperature, gyroscope and accelerometer. power - on sequence. p lease refer to chapter 8.1.1. filter setting sequence. please refer to chapter 8. 1 . 8 .
54 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8505}/ rxdata={0x ---- }. /* 125sps */ txdata={0x8800}/ rxdata={0x ---- }. /* disable uart auto mode, just in ca se. */ txdata={0x8c06}/ rxdata={0x ---- }. /* gpio=on,count=on,checksum=off */ txdata={0x8df0}/ rxdata={0x ---- }. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f00}/ rxdata={0x ---- }. /* temp=16bit,gyro=16bit,accl=16bit */ txdata={0xfe00}/ rxdata={0x --- - }. /* window=0 */ txdata={0x8301}/ rxdata={0x ---- }. /* move to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b) txdata={0x8000}/ rxdata={0x ---- }. /* burst command */ txdata={0x ---- }/ rxdata={flag}. txdata={0x ---- }/ rxdata={temp_high}. txdata={0x ---- }/ rxdata={xgyro_high}. txdata={0x ---- }/ rxdata={ygyro_high}. txdata={0x ---- }/ rxdata={zgyro_high}. txdata={0x ---- }/ rxdata={xaccl_high}. txdata={0x ---- }/ rxdata={yaccl_high}. txdata={0x ---- }/ rxdata={zaccl_hi gh}. txdata={0x ---- }/ rxdata={gpio}. txdata={0x ---- }/ rxdata={count}. repeat from (a) to (b). txdata={0x8302}/ rxdata={0x ---- }. /* return to configulation mode */ - :don't care notes please remember to wait until data ready signal is asserted. 8 . 1 .4 selftest (spi) selftest is as follows. power - on sequence. please refer to chapter 8.1.1. (a) send self test command. txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8304}/ rxdata={0x ---- }. /* selftest command */ (b) wait until selftest ha s finished. wait until self_test bit goes to 0. self_test is msc_ctrl[0x02(w1)]'s bit[10]. txdata={0x0200}/ rxdata={0x ---- }. /* msc_ctrl read command */ txdata={0x0000}/ rxdata={msc_ctrl}. /* get response */ confirm self_test bit. when self_test becom es 0, it ends. otherwise , please repeat (b). (c) confirm the result. confirm st_err bits. st_err is diag_stat[0x04(w0)]'s bit[14:11]. txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x0400}/ rxdata={0x ---- }. /* diag_stat read command */ txda ta={0x0000}/ rxdata={diag_stat}. /* get response */ confirm each st_err is 0. if each st_err is 0, the result is ok. otherwise, the result is ng. - :don't care
m - g362pdc1 data sheet seiko epson corporation 55 rev. 201312 17 8 . 1. 5 software reset (spi) software reset is as follows. power - on sequence. please refer t o chapter 8.1.1. (a) send software reset command. txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8a80}/ rxdata={0x ---- }. /* software reset command */ (b) wait 800ms. - :don't care 8 . 1. 6 flash test (spi) flash test is as follows. power - on s equence. please refer to chapter 8.1.1. (a) send flash test command. txdata={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8308}/ rxdata={0x ---- }. /* flash test command */ (b) wait until flash test has finished. wait until flash_test bit goes to 0 . flash_test is msc_ctrl[0x02(w1)]'s bit[11]. txdata={0x0200}/ rxdata={0x ---- }. /* msc_ctrl read command */ txdata={0x0000}/ rxdata={msc_ctrl}. /* get response */ confirm flash_test bit. when flash_test becomes 0, it ends. otherwise , please repeat (b) . (c) confirm the result. confirm flash_err bits. flash_err is diag_stat[0x04(w0)]'s bit[2]. txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ txdata={0x0400}/ rxdata={0x ---- }. /* diag_stat read command */ txdata={0x0000}/ rxdata={diag_stat}. /* get re sponse */ confirm flash_err is 0. if flash_err is 0, the result is ok. otherwise, the result is ng. - :don't care 8 . 1. 7 flash backup (spi) flash backup is as follows. power - on sequence. please refer to chapter 8.1.1. (a) send flash backup command. tx data={0xfe01}/ rxdata={0x ---- }. /* window=1 */ txdata={0x8a08}/ rxdata={0x ---- }. /* flash backup command */ (b) wait until flash backup has finished. wait until flash_backup bit goes to 0. flash_backup is glob_cmd[0x0a(w1)]'s bit[3]. txdata={0x0a00}/ r xdata={0x ---- }. /* glob_cmd read command */ txdata={0x0000}/ rxdata={glob_cmd}. /* get response */ confirm flash_backup bit. when flash_backup becomes 0, it ends. otherwise , please repeat (b). (c) confirm the result.
56 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 txdata={0xfe00}/ rxdata={0x ---- }. /* window=0 */ confirm flash_bu_err bits. flash_bu_err is diag_stat[0x04(w0)]'s bit[0]. txdata={0x0400}/ rxdata={0x ---- }. /* diag_stat read command */ txdata={0x0000}/ rxdata={diag_stat}. /* get response */ confirm flash_bu_err is 0. if flash_bu_err is 0, the result is ok. otherwise, the result is ng. - :don't care 8 . 1. 8 filter setting (spi) filter setting is as follows. power - on sequence. please refer to chapter 8.1. 1. (a) send filter setting command for moving average filter and tap32 . txdata={0x fe01 }/ r xdata={0x ---- }. /* window=1 */ txdata={0x 8605 }/ rxdata={ 0x ---- }. /* filter setting command */ (b) wait until filter setting has finished. wait until filter_stat bit goes to 0. filter_stat is filter _ctrl[ 0x06(w1) ]'s bit[ 5 ]. txdata={0x 06 00}/ rxd ata={0x ---- }. /* filter _ctrl read command */ txdata={0x0000}/ rxdata={ filter _ctrl}. /* get response */ confirm filter _ stat bit. when filter _ stat becomes 0, it ends. otherwise , please repeat (b). 8.2 uart sequence 8 . 2. 1 power - on sequence (uart) po wer - on sequence is as follows. (a) power - on. (b) wait 800ms. (c) wait until not_ready bit goes to 0. not_ready is glob_cmd[0x0a(w1)]'s bit[10]. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x0a,0x00,0x0d}. /* glob_cmd read command */ txdata={0x0a,m sbyte,lsbyte,0x0d}. /* get response */ confirm not_ready bit. when not_ready becomes 0, it ends. otherwise , please repeat (c). (d) confirm hard_err bits. hard_err is diag_stat[0x04(w0)]'s bit[6:5]. txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x04 ,0x00,0x0d}. /* diag_stat read command */ txdata={0x04,msbyte,lsbyte,0x0d}. /* get response */ confirm hard_err is 00. if hard_err is 00, the imu is ok. otherwise, the imu is faulty. 8 . 2.2 register read and write (uart) [read example] to read a 16bit - data from a register(addr=0x02 / window=0). txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x02,0x00,0x0d}. /* command */ rxdata={0x02,0x04,0x00,0x0d} /* response */ 0x04 in 2nd byte of rxdata is configuration mode. 0x00 in 3rd byte of rxdata is r eserved.
m - g362pdc1 data sheet seiko epson corporation 57 rev. 201312 17 please note that read data unit is 16bit, and most significant byte first. ------------------------------------------------------------- [write example] to write a 8bit - data into a register(addr=0x03 / window=0). txdata={0xfe,0x00,0x0d}. /* win dow=0 */ txdata={0x83,0x01,0x0d}. /* command */ rxdata= w/o response by sending this command, the imu moves to sampling mode. please note that write data unit is 8bit. 8 . 2.3 sampling data (uart) [sample flow 1 (uart auto mode)] power - on sequence. pl ease refer to chapter 8.2.1. filter setting sequence. please refer to chapter 8. 2 . 8 . txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x85,0x05,0x0d}. /* 125sps */ txdata={0x88,0x01,0x0d}. /* uart auto mode */ txdata={0x8c,0x06,0x0d}. /* gpio=on,co unt=on,checksum=off */ txdata={0x8d,0xf0,0x0d}. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f,0x70,0x0d}. /* temp=32bit,gyro=32bit,accl=32bit */ txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x83,0x01,0x0d}. /* move to sampling mode */ rece ive sampling data. (a)rxdata={0x80, flag_hi, flag_lo, temp_high_hi, temp_high_lo, temp_low_hi, temp_low_lo, xgyro_high_hi, xgyro_high_lo, xgyro_low_hi, xgyro_low_lo, ygyro_high_hi, ygyro_high_lo, ygyro_low_hi, ygyro_low_lo, zgyro_high_hi, zgyro_high_l o, zgyro_low_hi, zgyro_low_lo, xaccl_high_hi, xaccl_high_lo, xaccl_low_hi, xaccl_low_lo, yaccl_high_hi, yaccl_high_lo, yaccl_low_hi, yaccl_low_lo, zaccl_high_hi, zaccl_high_lo, zaccl_low_hi, zaccl_low_lo, gpio_hi, gpio_lo, count_hi, count_lo, 0x0d} re peat (a). txdata={0x83,0x02,0x0d}. /* return to configulation mode */ ------------------------------------------------------------- [sample flow 2 (uart auto mode)] to read upper 16 bits data of temperature, gyroscope and accelerometer. power - on sequen ce. please refer to chapter 8.2.1. filter setting sequence. please refer to chapter 8. 2 . 8 . txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x85,0x05,0x0d}. /* 125sps */ txdata={0x88,0x01,0x0d}. /* uart auto mode */ txdata={0x8c,0x06,0x0d}. /* gpio =on,count=on,checksum=off */ txdata={0x8d,0xf0,0x0d}. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f,0x00,0x0d}. /* temp=16bit,gyro=16bit,accl=16bit */ txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x83,0x01,0x0d}. /* move to sampling mode */ receive sampling data. (a)rxdata={0x80, flag_hi, flag_lo, temp_high_hi, temp_high_lo, xgyro_high_hi, xgyro_high_lo,
58 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 ygyro_high_hi, ygyro_high_lo, zgyro_high_hi, zgyro_high_lo, xaccl_high_hi, xaccl_high_lo, yaccl_high_hi, yaccl_high_lo, zaccl_high _hi, zaccl_high_lo, gpio_hi, gpio_lo, count_hi, count_lo, 0x0d} repeat (a). txdata={0x83,0x02,0x0d}. /* return to configulation mode */ ------------------------------------------------------------- [sample flow 3 (uart burst mode)] power - on sequence. please refer to chapter 8.2.1. filter setting sequence. please refer to chapter 8. 2 . 8 . txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x85,0x05,0x0d}. /* 125sps */ txdata={0x88,0x00,0x0d}. /* uart manual mode */ txdata={0x8c,0x06,0x0d}. /* gpio= on,count=on,checksum=off */ txdata={0x8d,0xf0,0x0d}. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f,0x70,0x0d}. /* temp=32bit,gyro=32bit,accl=32bit */ txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x83,0x01,0x0d}. /* move to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b)txdata={0x80,0x00,0x0d}. /* burst command */ (c)rxdata={0x80, flag_hi, flag_lo, temp_high_hi, temp_high_lo, temp_low_hi, temp_low_lo, xgyro_high_hi, xgyro_high_lo, xgyro_low_hi, xgyro_low_lo, ygyro_high_hi, ygyro_high_lo, ygyro_low_hi, ygyro_low_lo, zgyro_high_hi, zgyro_high_lo, zgyro_low_hi, zgyro_low_lo, xaccl_high_hi, xaccl_high_lo, xaccl_low_hi, xaccl_low_lo, yaccl_high_hi, yaccl_high_lo, yaccl_low_hi, yaccl_low_lo, zacc l_high_hi, zaccl_high_lo, zaccl_low_hi, zaccl_low_lo, gpio_hi, gpio_lo, count_hi, count_lo, 0x0d} repeat from (a) to (c). txdata={0x83,0x02,0x0d}. /* return to configulation mode */ notes please remember to wait until data ready signal is asserted. ------------------------------------------------------------- [sample flow 4 (uart burst mode)] to read upper 16 bits data of temperature, gyroscope and accelerometer. power - on sequence. please refer to chapter 8.2.1. filter setting sequence. please refe r to chapter 8. 2 . 8 . txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x85,0x05,0x0d}. /* 125sps */ txdata={0x88,0x00,0x0d}. /* uart manual mode */ txdata={0x8c,0x06,0x0d}. /* gpio=on,count=on,checksum=off */ txdata={0x8d,0xf0,0x0d}. /* flag=on,tem p=on,gyro=on,accl=on */ txdata={0x8f,0x00,0x0d}. /* temp=16bit,gyro=16bit,accl=16bit */ txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x83,0x01,0x0d}. /* move to sampling mode */ receive sampling data. (a)wait until data ready signal is asserted. (b)txdata={0x80,0x00,0x0d}. /* burst command */ (c)rxdata={0x80, flag_hi, flag_lo, temp_high_hi, temp_high_lo,
m - g362pdc1 data sheet seiko epson corporation 59 rev. 201312 17 xgyro_high_hi, xgyro_high_lo, ygyro_high_hi, ygyro_high_lo, zgyro_high_hi, zgyro_high_lo, xaccl_high_hi, xaccl_high_lo, yaccl_high_hi, yaccl_high_lo, zaccl_high_hi, zaccl_high_lo, gpio_hi, gpio_lo, count_hi, count_lo, 0x0d} repeat from (a) to (c). txdata={0x83,0x02,0x0d}. /* return to configulation mode */ notes please remember to wait until data ready signal is asserted. -------- ----------------------------------------------------- [notes] please note that read data unit is 16bit, and most significant byte first. please note that write data unit is 8bit. xgyro_high_hi: means msbyte of xgyro_high data xgyro_high_lo: means lsbyt e of xgyro_low data 8 . 2.4 selftest (uart) selftest is as follows. power - on sequence. please refer to chapter 8.2.1. (a) send self test command. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x83,0x04,0x0d}. /* selftest command */ (b) wait until selftest has finished. wait until self_test bit goes to 0. self_test is msc_ctrl[0x02(w1)]'s bit[10]. txdata={0x02,0x00,0x0d}. /* msc_ctrl read command */ rxdata={0x02,msbyte,lsbyte,0x0d}. /* get response */ confirm self_test bit. when self_test becomes 0, it ends. otherwise , please repeat (b). (c) confirm the result. confirm st_err bits. st_err is diag_stat[0x04(w0)]'s bit[14:11]. txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x04,0x00,0x0d}. /* diag_stat read command */ rxdat a={0x04,msbyte,lsbyte,0x0d}. /* get response */ confirm each st_err is 0. if each st_err is 0, the result is ok. otherwise, the result is ng. 8 . 2. 5 software reset (uart) software reset is as follows. power - on sequence. please refer to chapter 8.2.1. ( a) send software reset command. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x8a,0x80,0x0d}. /* software reset command */ (b) wait 800ms.
60 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 8 . 2. 6 flash test (uart) flash test is as follows. power - on sequence. please refer to chapter 8.2.1. (a) send flash test command. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x83,0x08,0x0d}. /* flash test command */ (b) wait until flash test has finished. wait until flash_test bit goes to 0. flash_test is msc_ctrl[0x02(w1)]'s bit[11]. txdata={0x02,0x00 ,0x0d}. /* msc_ctrl read command */ rxdata={0x02,msbyte,lsbyte,0x0d}. /* get response */ confirm flash_test bit. when flash_test becomes 0, it ends. otherwise , please repeat (b). (c) confirm the result. confirm flash_err bits. flash_err is diag_stat [0x04(w0)]'s bit[2]. txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x04,0x00,0x0d}. /* diag_stat read command */ rxdata={0x04,msbyte,lsbyte,0x0d}. /* get response */ confirm flash_err is 0. if flash_err is 0, the result is ok. otherwise, the resul t i s n g. 8 . 2. 7 flash backup (uart) flash backup is as follows. power - on sequence. please refer to chapter 8.2.1. (a) send flash backup command. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x8a,0x08,0x0d}. /* flash backup command */ (b) wait unti l flash backup has finished. wait until flash_backup bit goes to 0. flash_backup is glob_cmd[0x0a(w1)]'s bit[3]. txdata={0x0a,0x00,0x0d}. /* glob_cmd read command */ rxdata={0x0a,msbyte,lsbyte,0x0d}. /* get response */ confirm flash_backup bit. when flash_backup becomes 0, it ends. otherwise , please repeat (b). (c) confirm the result. confirm flash_bu_err bits. flash_bu_err is diag_stat[0x04(w0)]'s bit[0]. txdata={0xfe,0x00,0x0d}. /* window=0 */ txdata={0x04,0x00,0x0d}. /* diag_stat read comman d */ rxdata={0x04,msbyte,lsbyte,0x0d}. /* get response */ confirm flash_bu_err is 0. if flash_bu_err is 0, the result is ok. otherwise, the result is ng. 8 . 2. 8 filter setting (uart) filter setting is as follows. power - on sequence. please refer to chap ter 8.2.1. (a) send filter setting command for moving average filter and tap32 . txdata={0x fe,0x01,0x0d } . /* window=1 */ txdata={0x 86 ,0x0 5 ,0x0d}. /* filter setting command */
m - g362pdc1 data sheet seiko epson corporation 61 rev. 201312 17 (b) wait until filter setting has finished. wait until filter_stat bit goes to 0. filter_stat is filter _ctrl[ 0x06(w1) ]'s bit[ 5 ]. txdata={0x 06 ,0x00,0x0d}. /* filter _ctrl read command */ rxdata={0x 06 ,msbyte,lsbyte,0x0d}. /* get response */ confirm filter _ stat bit. when filter _ stat becomes 0, it ends. otherwise , please repe at (b). 8 . 2. 9 auto start (uart only ) auto start is as follows. power - on sequence. please refer to chapter 8.2.1. (a) set registers. txdata={0xfe,0x01,0x0d}. /* window=1 */ txdata={0x85,0x05,0x0d}. /* 125sps */ txdata={0x86,0x05,0x0d}. /* tap=32 */ txdata={0x88,0x03,0x0d}. /* uart auto mode, auto start=on */ txdata={0x8c,0x06,0x0d}. /* gpio=on,count=on,checksum=off */ txdata={0x8d,0xf0,0x0d}. /* flag=on,temp=on,gyro=on,accl=on */ txdata={0x8f,0x70,0x0d}. /* temp=32bit,gyro=32bit,accl=32bit */ (b) execute flash backup. please refer to chapter 8.2. 7 . (c) power - off. (d) power - on. (e) wait 800ms. (f) receive sampling data. (i) wait until data ready signal is asserted. (ii) rxdata={0x80, flag_hi, flag_lo, temp_high_hi, temp_high_lo, temp_low_hi, temp_low_lo, xgyro_high_hi, xgyro_high_lo, xgyro_low_hi, xgyro_low_lo, ygyro_high_hi, ygyro_high_lo, ygyro_low_hi, ygyro_low_lo, zgyro_high_hi, zgyro_high_lo, zgyro_low_hi, zgyro_low_lo, xaccl_high_hi, xaccl_high_lo, xaccl_low_hi, xaccl_low_lo, yaccl _high_hi, yaccl_high_lo, yaccl_low_hi, yaccl_low_lo, zaccl_high_hi, zaccl_high_lo, zaccl_low_hi, zaccl_low_lo, gpio_hi, gpio_lo, count_hi, count_lo, 0x0d} repeat from (i) to (ii). (g) if you want to stop sampling, txdata={0x83,0x02,0x0d}. /* return to configulation mode */
62 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 9. handling notes 9.1 cautions for attaching ? when you connect the header to the socket of this product, make sure you do not insert the header in the reverse orientation. if you do, the imu may be damaged permanently. in addition, if you attach the product to the equipment, etc. using the imu connection harness provided as a standard accessory, connect the imu connection harness to the product first, and then attach it to the equipment, etc. ? when you attach the product to a housing, e quipment, jig, or tool, make sure you attach it properly so that no mechanical stress is added to create a distortion such as a warp or twist. in addition, tighten the screws firmly but not too firmly because the mount of the product may break. use screw l ocking techniques as necessary. ? when you set up the product, make sure the equipment, jigs, tools, and workers maintain a good ground in order not to generate high voltage leakage. if you add over current or static electricity to the product, the product ma y be damaged permanently. ? when you install the product, make sure metallic or other conductors do not enter the product. otherwise, malfunction or damage of the product may result. ? if excessive shock is added to the product when, for example, the product f alls, the quality of the product may be degraded. make sure the product does not fall when you handle it. ? before you start using the product, test it in the actual equipment under the actual operating environment. 9.2 other cautions ? if water enters the product, malfunction or damage of the product may result. if the product can be exposed to water, the system must have a waterproof structure. we do not guarantee the operation of the product when the product is exposed to condensation, dust, oil, corrosiv e gas (salt, acid, alkaline, or the like) , or direct sunlight. ? this product is not designed to be radiation resistant. ? never use this product if the operating condition is over the absolute maximum rating. if you do, the characteristics of the product may never recover. ? if the product is exposed to excessive exogenous noise or the like, degradation of the precision, malfunction, or damage of the product may result. the system needs to be designed so that the noise itself is suppressed or the system is immu ne to the noise. ? mechanical vibration or shock, continuous mechanical stress, rapid temperature change, or the like may cause cracks or disconnections at the various connecting parts. ? take sufficient safety measure for the equipment this product is built i nto. ? this product is not designed to be used in the equipment that demands extremely high reliability and where its failure may threaten human life or property (for example, aerospace equipment, submarine repeater, nuclear power control equipment, life sup port equipment, medical equipment, transportation control equipment, etc.). therefore, seiko epson corporation will not be liable for any damages caused by the use of the product for those applications. ? do not add shock or vibration to the packing box. do not spill water over the packing box. do not store or use the product in the environment where dew condensation occurs due to rapid temperature change. ? do not put mechanical stress on the product while it is stored. ? do not store the product in a location s ubject to high temperature, high humidity, under direct sunlight, corrosive gas or dust. ? do not alter or disassemble the product.
m - g362pdc1 data sheet seiko epson corporation 63 rev. 201312 17 10. p art n umber / o rdering i nfo . the following is the ordering code for the imu: ? s4e5a0a1c121000 imu only ? s4e5a0a1c121100 i mu + assembly components ( h a rnes s/f pc cable , fastener , etc) note: the assembly components are intended for evaluation purpose only. the customer assumes all risk, if the assembly components are used in the design of the final product. 11. evaluation too ls evaluation tools can be provided for the imu. for details, contact our representatives. ? pcb board ( p roduct code: s5u4e0070010000) ? usb i/f board ( p roduct code:s5u4e0070020000) & (sample) logger software
revision history 64 seiko epson corporation m - g362pdc1 data sheet rev. 201312 17 revision history attachment - 1 rev. no. date pa ge category contents rev. 2013 1 2 17 201 3 / 1 2 / 17 all new newly established
international sales operations america epson electronics america, inc. 214 de vcon drive , san jose, ca 95112, usa phone: +1 - 800 - 228 - 3964 fax: +1 - 408 - 922 - 0238 europe epson europe electronics gmbh riesstrasse 15, 80992 munich, germany phone: +49 - 89 - 14005 - 0 fax: +49 - 89 - 14005 - 110 asia epson (china) co., ltd. 7f, jinbao bldg., no.8 9 jinbao st., dongcheng district, beijing 100005, china phone: +86 - 10 - 8522 - 1199 fax: +86 - 10 - 8522 - 1125 shanghai branch 7f, block b, hi - tech bldg., 900 yishan road, shanghai 200233, china phone: +86 - 21 - 5423 - 5577 fax: +86 - 21 - 5423 - 4677 shenzhen branch 12f, d awning mansion, keji south 12th road, hi- tech park, shenzhen 518057, china phone: +86 - 755 - 2699 - 3828 fax: +86 - 755 - 2699 - 3838 epson hong kong ltd. unit 715 - 723, 7/f trade square, 681 cheung sha wan road, kowloon, hong kong. phone: +852 - 2585 - 4600 fax: +852 - 2827 - 4346 epson taiwan technology & trading ltd. 14f, no. 7, song ren road, taipei 110, taiwan phone: +886 - 2 - 8786 - 6688 fax: +886 - 2 - 8786 - 6660 epson singapore pte., ltd. 1 harbourfront place, #03 - 02 harbourfront tower one, singapore 098633 phone: +65 - 6586 - 5500 fax: +65 - 6271 - 3182 seiko epson corp. korea office 5f, kli 63 bldg., 60 yoido - dong, youngdeungpo - ku, seoul 150 - 763, korea phone: +82 - 2 - 784 - 6027 fax: +82 - 2 - 767 - 3677 seiko epson corp. sensing systems operations division 281, fujimi, fujimi - cho, nagano 399 - 0293, japan phone : +81 - 266 - 61 - 0614 fax: +81 - 266 - 61 - 2045 document code: 412 658100 first issue dec. 20 1 3 in japan


▲Up To Search▲   

 
Price & Availability of M-G362

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X