This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How to get accelerometer value of Thingy:91?

I want to tranceive data to ADXL362 through SPI and refer to this program.

https://github.com/Rallare/fw-nrfconnect-nrf/tree/nrf9160_samples/samples/nrf9160/spi

However, I can't get data.

I only modified tx_buffer value.

void spi_test_send(void)
{
	int err;
	u8_t tx_buffer[1] = {0x00}; // Modified here
	u8_t rx_buffer[1];

	const struct spi_buf tx_buf = {
		.buf = tx_buffer,
		.len = sizeof(tx_buffer)
	};
	const struct spi_buf_set tx = {
		.buffers = &tx_buf,
		.count = 1
	};

	struct spi_buf rx_buf = {
		.buf = rx_buffer,
		.len = sizeof(rx_buffer),
	};
	const struct spi_buf_set rx = {
		.buffers = &rx_buf,
		.count = 1
	};

	err = spi_transceive(accel_spi_dev, &spi_cfg, &tx, &rx);
	if (err) {
		printk("SPI error: %d\n", err);
	} else {
		/* Connect MISO to MOSI for loopback */
		printk("TX sent: 0x%02x\n", tx_buffer[0]);
		printk("RX recv: 0x%02x\n", rx_buffer[0]);
//		tx_buffer[0]++;
	}	
}

Also, I added nrf9160_pca20035_v0_3_0.overlay file.

Any tip?

  • Great! It works out!

    What's wrong with my code.....

  • Not sure to be honest, it should have been simple for the code sample I posted to work. All I needed was the code, a prj.conf and  a generic CMakeList.txt.

    It really did look like your Thingy:91 was acting like it had been reflashed without an erase command.

  • I agree with in that it looked like a missing erase command. To rule out any issues with your code, can you try to program your code using the programmer application?

  • Hi.

    I just tested your hex file provided to and did not see the same inaccuracy on the Z-axis.

    X_INT	: 0623  | Y_INT : 0208  | Z_INT : -790   (mg)
    X_INT	: 0696  | Y_INT : 0176  | Z_INT : -760   (mg)
    X_INT	: 0655  | Y_INT : 0232  | Z_INT : -702   (mg)
    X_INT	: 0539  | Y_INT : 0200  | Z_INT : -695   (mg)
    X_INT	: 0640  | Y_INT : 0256  | Z_INT : -736   (mg)
    X_INT	: 0615  | Y_INT : 0200  | Z_INT : -795   (mg)
    X_INT	: 0608  | Y_INT : 0179  | Z_INT : -711   (mg)
    X_INT	: 0640  | Y_INT : 0293  | Z_INT : -711   (mg)
    X_INT	: 0610  | Y_INT : 0318  | Z_INT : -863   (mg)
    X_INT	: 0596  | Y_INT : 0256  | Z_INT : -704   (mg)
    X_INT	: 0608  | Y_INT : 0223  | Z_INT : -703   (mg)
    X_INT	: 0704  | Y_INT : 0192  | Z_INT : -864   (mg)
    X_INT	: 0623  | Y_INT : 0264  | Z_INT : -732   (mg)
    X_INT	: 0639  | Y_INT : 0288  | Z_INT : -700   (mg)
    X_INT	: 0639  | Y_INT : 0304  | Z_INT : -716   (mg)
    X_INT	: 0664  | Y_INT : 0232  | Z_INT : -864   (mg)
    X_INT	: 0607  | Y_INT : 0256  | Z_INT : -743   (mg)
    X_INT	: 0624  | Y_INT : 0304  | Z_INT : -656   (mg)
    X_INT	: 0601  | Y_INT : 0255  | Z_INT : -635   (mg)
    X_INT	: 0623  | Y_INT : 0240  | Z_INT : -812   (mg)
    X_INT	: 0704  | Y_INT : 0192  | Z_INT : -880   (mg)
    X_INT	: 0672  | Y_INT : 0195  | Z_INT : -743   (mg)
    X_INT	: 0580  | Y_INT : 0175  | Z_INT : -799   (mg)
    X_INT	: 0628  | Y_INT : 0255  | Z_INT : -735   (mg)
    X_INT	: 0480  | Y_INT : 0552  | Z_INT : -671   (mg)
    X_INT	: 0619  | Y_INT : 0288  | Z_INT : -767   (mg)
    X_INT	: 0624  | Y_INT : 0240  | Z_INT : -943   (mg)
    X_INT	: 0576  | Y_INT : 0179  | Z_INT : -769   (mg)
    X_INT	: 0256  | Y_INT : 0071  | Z_INT : -959   (mg)
    X_INT	: 0672  | Y_INT : 0067  | Z_INT : -991   (mg)
    X_INT	: 0396  | Y_INT : -047  | Z_INT : -992   (mg)
    X_INT	: 0096  | Y_INT : -064  | Z_INT : -863   (mg)
    X_INT	: 0160  | Y_INT : -032  | Z_INT : -1087   (mg)
    X_INT	: -092  | Y_INT : -063  | Z_INT : -1151   (mg)
    X_INT	: 0048  | Y_INT : 0000  | Z_INT : -1120   (mg)
    X_INT	: 0112  | Y_INT : -064  | Z_INT : -895   (mg)
    X_INT	: 0000  | Y_INT : -048  | Z_INT : -975   (mg)
    X_INT	: 0064  | Y_INT : 0048  | Z_INT : -960   (mg)
    X_INT	: -023  | Y_INT : -087  | Z_INT : -1039   (mg)
    X_INT	: 0112  | Y_INT : 0000  | Z_INT : -1208   (mg)
    X_INT	: 0024  | Y_INT : -031  | Z_INT : -1054   (mg)
    X_INT	: 0064  | Y_INT : -047  | Z_INT : -1120   (mg)
    X_INT	: -007  | Y_INT : 0048  | Z_INT : -1088   (mg)
    X_INT	: 0128  | Y_INT : 0079  | Z_INT : -927   (mg)
    X_INT	: 0119  | Y_INT : -003  | Z_INT : -1167   (mg)
    X_INT	: 0025  | Y_INT : 0048  | Z_INT : -1007   (mg)
    X_INT	: -001  | Y_INT : -032  | Z_INT : -1025   (mg)
    X_INT	: 0000  | Y_INT : -016  | Z_INT : -1055   (mg)
    X_INT	: 0033  | Y_INT : 0048  | Z_INT : -1015   (mg)
    X_INT	: 0056  | Y_INT : 0003  | Z_INT : -1031   (mg)
    X_INT	: 0052  | Y_INT : -060  | Z_INT : -983   (mg)
    X_INT	: 0064  | Y_INT : -031  | Z_INT : -1056   (mg)
    X_INT	: 0063  | Y_INT : 0016  | Z_INT : -1072   (mg)
    X_INT	: 0015  | Y_INT : -007  | Z_INT : -1020   (mg)
    X_INT	: 0067  | Y_INT : -015  | Z_INT : -1119   (mg)
    X_INT	: -031  | Y_INT : -110  | Z_INT : -960   (mg)
    X_INT	: -031  | Y_INT : -079  | Z_INT : -944   (mg)
    X_INT	: 0036  | Y_INT : 0001  | Z_INT : -960   (mg)
    X_INT	: 0032  | Y_INT : 0019  | Z_INT : -1159   (mg)
    X_INT	: 0096  | Y_INT : -001  | Z_INT : -992   (mg)
    X_INT	: -016  | Y_INT : -023  | Z_INT : -1022   (mg)
    X_INT	: 0147  | Y_INT : 0000  | Z_INT : -1263   (mg)
    X_INT	: 0065  | Y_INT : 0008  | Z_INT : -1279   (mg)
    X_INT	: 0001  | Y_INT : 0040  | Z_INT : -1143   (mg)
    X_INT	: -016  | Y_INT : 0024  | Z_INT : -1134   (mg)
    X_INT	: 0064  | Y_INT : 0003  | Z_INT : -1103   (mg)
    X_INT	: 0064  | Y_INT : 0007  | Z_INT : -927   (mg)
    X_INT	: 0063  | Y_INT : 0016  | Z_INT : -1008   (mg)
    X_INT	: 0063  | Y_INT : 0048  | Z_INT : -928   (mg)
    X_INT	: -048  | Y_INT : 0000  | Z_INT : -956   (mg)
    X_INT	: -024  | Y_INT : -047  | Z_INT : -922   (mg)
    X_INT	: 0048  | Y_INT : 0001  | Z_INT : -960   (mg)
    X_INT	: -028  | Y_INT : -063  | Z_INT : -943   (mg)
    X_INT	: 0080  | Y_INT : 0032  | Z_INT : -988   (mg)
    X_INT	: 0048  | Y_INT : 0032  | Z_INT : -1020   (mg)
    X_INT	: 0007  | Y_INT : -011  | Z_INT : -1022   (mg)
    X_INT	: 0065  | Y_INT : -032  | Z_INT : -1055   (mg)
    X_INT	: -003  | Y_INT : -063  | Z_INT : -912   (mg)
    X_INT	: 0049  | Y_INT : -039  | Z_INT : -1087   (mg)
    X_INT	: 0068  | Y_INT : 0008  | Z_INT : -943   (mg)
    X_INT	: 0064  | Y_INT : -030  | Z_INT : -1056   (mg)
    X_INT	: 0124  | Y_INT : 0000  | Z_INT : -1080   (mg)
    X_INT	: 0072  | Y_INT : 0016  | Z_INT : -1023   (mg)
    X_INT	: 0096  | Y_INT : -028  | Z_INT : -1024   (mg)
    X_INT	: 0128  | Y_INT : -078  | Z_INT : -1095   (mg)
    X_INT	: 0001  | Y_INT : -027  | Z_INT : -959   (mg)
    X_INT	: 0127  | Y_INT : -047  | Z_INT : -1120   (mg)
    X_INT	: 0112  | Y_INT : 0033  | Z_INT : -992   (mg)
    X_INT	: -191  | Y_INT : 0041  | Z_INT : -1408   (mg)
    X_INT	: 0239  | Y_INT : 0144  | Z_INT : -686   (mg)
    X_INT	: 0152  | Y_INT : 0072  | Z_INT : -840   (mg)
    X_INT	: 0452  | Y_INT : 0055  | Z_INT : -1047   (mg)
    X_INT	: 0112  | Y_INT : 0203  | Z_INT : -1183   (mg)
    X_INT	: -095  | Y_INT : 0015  | Z_INT : -959   (mg)
    X_INT	: 0208  | Y_INT : -159  | Z_INT : -1024   (mg)
    X_INT	: 0064  | Y_INT : -104  | Z_INT : -959   (mg)
    X_INT	: -047  | Y_INT : -128  | Z_INT : -991   (mg)
    X_INT	: 0031  | Y_INT : -023  | Z_INT : -1116   (mg)
    X_INT	: 0040  | Y_INT : -087  | Z_INT : -1056   (mg)
    X_INT	: 0036  | Y_INT : -063  | Z_INT : -1072   (mg)
    X_INT	: 0124  | Y_INT : 0000  | Z_INT : -1052   (mg)
    X_INT	: 0127  | Y_INT : -031  | Z_INT : -1064   (mg)
    X_INT	: 0015  | Y_INT : -031  | Z_INT : -956   (mg)
    X_INT	: 0048  | Y_INT : 0000  | Z_INT : -1084   (mg)
    X_INT	: 0112  | Y_INT : -095  | Z_INT : -1040   (mg)
    X_INT	: 0096  | Y_INT : -055  | Z_INT : -1103   (mg)
    X_INT	: 0047  | Y_INT : 0016  | Z_INT : -1006   (mg)
    X_INT	: 0032  | Y_INT : -063  | Z_INT : -992   (mg)
    X_INT	: 0072  | Y_INT : 0015  | Z_INT : -1023   (mg)
    X_INT	: 0080  | Y_INT : -144  | Z_INT : -983   (mg)
    X_INT	: 0096  | Y_INT : -103  | Z_INT : -1056   (mg)
    X_INT	: 0064  | Y_INT : -111  | Z_INT : -960   (mg)
    X_INT	: 0094  | Y_INT : -047  | Z_INT : -1084   (mg)
    X_INT	: 0064  | Y_INT : -047  | Z_INT : -1040   (mg)
    X_INT	: 0017  | Y_INT : -064  | Z_INT : -927   (mg)
    X_INT	: 0120  | Y_INT : -031  | Z_INT : -1080   (mg)
    X_INT	: 0064  | Y_INT : 0003  | Z_INT : -960   (mg)
    X_INT	: 0056  | Y_INT : -080  | Z_INT : -1055   (mg)
    X_INT	: 0072  | Y_INT : -063  | Z_INT : -1120   (mg)
    X_INT	: 0032  | Y_INT : -108  | Z_INT : -847   (mg)
    X_INT	: 0079  | Y_INT : 0000  | Z_INT : -1023   (mg)
    X_INT	: -028  | Y_INT : -128  | Z_INT : -991   (mg)
    X_INT	: 0068  | Y_INT : -095  | Z_INT : -1056   (mg)
    X_INT	: 0056  | Y_INT : -118  | Z_INT : -960   (mg)
    X_INT	: 0056  | Y_INT : -140  | Z_INT : -1039   (mg)
    X_INT	: 0055  | Y_INT : -007  | Z_INT : -1007   (mg)
    X_INT	: 0048  | Y_INT : -120  | Z_INT : -1024   (mg)
    X_INT	: 0088  | Y_INT : -095  | Z_INT : -1008   (mg)
    X_INT	: 0112  | Y_INT : -046  | Z_INT : -995   (mg)
    X_INT	: 0104  | Y_INT : -072  | Z_INT : -1119   (mg)
    X_INT	: 0062  | Y_INT : -047  | Z_INT : -1040   (mg)
    X_INT	: 0096  | Y_INT : -056  | Z_INT : -959   (mg)
    X_INT	: 0048  | Y_INT : -031  | Z_INT : -976   (mg)
    X_INT	: 0112  | Y_INT : -123  | Z_INT : -1104   (mg)
    X_INT	: 0127  | Y_INT : -103  | Z_INT : -1024   (mg)
    X_INT	: 0032  | Y_INT : -031  | Z_INT : -1023   (mg)
    X_INT	: 0048  | Y_INT : -140  | Z_INT : -927   (mg)
    X_INT	: 0003  | Y_INT : 0036  | Z_INT : -863   (mg)
    X_INT	: 0063  | Y_INT : 0004  | Z_INT : -928   (mg)
    X_INT	: 0112  | Y_INT : 0024  | Z_INT : -1104   (mg)
    X_INT	: 0128  | Y_INT : 0001  | Z_INT : -991   (mg)
    X_INT	: 0144  | Y_INT : -064  | Z_INT : -1071   (mg)
    X_INT	: 0051  | Y_INT : -031  | Z_INT : -1119   (mg)
    X_INT	: 0068  | Y_INT : -031  | Z_INT : -960   (mg)
    X_INT	: 0072  | Y_INT : -064  | Z_INT : -1143   (mg)
    X_INT	: 0095  | Y_INT : -063  | Z_INT : -1070   (mg)
    X_INT	: 0096  | Y_INT : -088  | Z_INT : -1087   (mg)
    X_INT	: 0112  | Y_INT : -062  | Z_INT : -960   (mg)
    X_INT	: 0084  | Y_INT : -032  | Z_INT : -1071   (mg)
    X_INT	: 0040  | Y_INT : -104  | Z_INT : -959   (mg)
    X_INT	: 0049  | Y_INT : -031  | Z_INT : -991   (mg)
    X_INT	: 0112  | Y_INT : -111  | Z_INT : -1048   (mg)
    X_INT	: 0024  | Y_INT : -056  | Z_INT : -919   (mg)
    X_INT	: 0064  | Y_INT : -031  | Z_INT : -1027   (mg)
    X_INT	: 0087  | Y_INT : -055  | Z_INT : -959   (mg)
    X_INT	: 0096  | Y_INT : -107  | Z_INT : -1080   (mg)
    X_INT	: 0088  | Y_INT : -063  | Z_INT : -1080   (mg)
    X_INT	: 0011  | Y_INT : -031  | Z_INT : -1023   (mg)
    X_INT	: 0096  | Y_INT : 0024  | Z_INT : -1008   (mg)
    X_INT	: 0031  | Y_INT : -001  | Z_INT : -968   (mg)
    X_INT	: 0096  | Y_INT : -095  | Z_INT : -1116   (mg)
    X_INT	: 0048  | Y_INT : -047  | Z_INT : -1056   (mg)
    X_INT	: 0129  | Y_INT : -023  | Z_INT : -1183   (mg)
    X_INT	: 0112  | Y_INT : -032  | Z_INT : -1039   (mg)
    X_INT	: 0099  | Y_INT : -071  | Z_INT : -959   (mg)
    X_INT	: 0016  | Y_INT : -024  | Z_INT : -927   (mg)
    X_INT	: 0080  | Y_INT : 0003  | Z_INT : -991   (mg)
    X_INT	: 0104  | Y_INT : 0000  | Z_INT : -1000   (mg)
    X_INT	: 0096  | Y_INT : -079  | Z_INT : -1120   (mg)
    X_INT	: 0095  | Y_INT : 0016  | Z_INT : -1071   (mg)
    X_INT	: -015  | Y_INT : -111  | Z_INT : -1056   (mg)
    X_INT	: 0132  | Y_INT : -039  | Z_INT : -1144   (mg)
    X_INT	: 0080  | Y_INT : -023  | Z_INT : -1008   (mg)
    X_INT	: 0064  | Y_INT : -039  | Z_INT : -1056   (mg)
    X_INT	: 0056  | Y_INT : -100  | Z_INT : -1024   (mg)
    X_INT	: 0096  | Y_INT : -095  | Z_INT : -1148   (mg)
    X_INT	: 0064  | Y_INT : 0015  | Z_INT : -895   (mg)
    X_INT	: 0080  | Y_INT : -151  | Z_INT : -992   (mg)
    X_INT	: 0139  | Y_INT : -031  | Z_INT : -991   (mg)
    X_INT	: 0128  | Y_INT : -058  | Z_INT : -1024   (mg)
    X_INT	: 0128  | Y_INT : -079  | Z_INT : -1056   (mg)
    X_INT	: 0112  | Y_INT : -044  | Z_INT : -975   (mg)
    X_INT	: 0096  | Y_INT : 0000  | Z_INT : -1056   (mg)
    X_INT	: 0048  | Y_INT : -063  | Z_INT : -1084   (mg)
    X_INT	: 0007  | Y_INT : -031  | Z_INT : -1078   (mg)
    X_INT	: 0062  | Y_INT : -047  | Z_INT : -1016   (mg)
    X_INT	: 0071  | Y_INT : -015  | Z_INT : -1182   (mg)
    X_INT	: 0031  | Y_INT : -047  | Z_INT : -1016   (mg)
    X_INT	: 0064  | Y_INT : -096  | Z_INT : -1027   (mg)
    X_INT	: 0064  | Y_INT : 0036  | Z_INT : -992   (mg)
    X_INT	: 0104  | Y_INT : -108  | Z_INT : -1024   (mg)
    X_INT	: 0096  | Y_INT : 0016  | Z_INT : -1088   (mg)
    X_INT	: 0096  | Y_INT : 0008  | Z_INT : -1168   (mg)
    X_INT	: 0040  | Y_INT : -024  | Z_INT : -959   (mg)
    X_INT	: 0015  | Y_INT : -095  | Z_INT : -1020   (mg)
    X_INT	: 0124  | Y_INT : 0016  | Z_INT : -1132   (mg)
    X_INT	: 0096  | Y_INT : -096  | Z_INT : -1071   (mg)
    X_INT	: 0035  | Y_INT : -055  | Z_INT : -927   (mg)
    X_INT	: 0068  | Y_INT : -060  | Z_INT : -895   (mg)
    X_INT	: 0016  | Y_INT : -080  | Z_INT : -895   (mg)
    X_INT	: 0035  | Y_INT : -055  | Z_INT : -1087   (mg)
    X_INT	: 0064  | Y_INT : 0001  | Z_INT : -995   (mg)
    X_INT	: 0112  | Y_INT : -030  | Z_INT : -1152   (mg)
    X_INT	: 0024  | Y_INT : -095  | Z_INT : -976   (mg)
    X_INT	: -001  | Y_INT : -063  | Z_INT : -936   (mg)
    X_INT	: 0064  | Y_INT : -046  | Z_INT : -992   (mg)
    X_INT	: 0003  | Y_INT : -001  | Z_INT : -1071   (mg)
    X_INT	: 0128  | Y_INT : -039  | Z_INT : -944   (mg)
    X_INT	: 0063  | Y_INT : -039  | Z_INT : -1016   (mg)
    X_INT	: 0072  | Y_INT : -060  | Z_INT : -960   (mg)
    X_INT	: 0032  | Y_INT : -063  | Z_INT : -975   (mg)
    X_INT	: 0096  | Y_INT : -038  | Z_INT : -983   (mg)
    X_INT	: 0079  | Y_INT : 0032  | Z_INT : -1022   (mg)
    X_INT	: 0064  | Y_INT : -016  | Z_INT : -879   (mg)
    X_INT	: 0024  | Y_INT : -060  | Z_INT : -960   (mg)
    X_INT	: 0000  | Y_INT : 0000  | Z_INT : -936   (mg)
    X_INT	: -003  | Y_INT : -055  | Z_INT : -988   (mg)
    X_INT	: 0031  | Y_INT : -039  | Z_INT : -958   (mg)
    X_INT	: 0049  | Y_INT : -096  | Z_INT : -1024   (mg)
    X_INT	: 0024  | Y_INT : -047  | Z_INT : -968   (mg)
    X_INT	: 0112  | Y_INT : -111  | Z_INT : -1104   (mg)
    X_INT	: 0064  | Y_INT : -151  | Z_INT : -943   (mg)
    X_INT	: 0124  | Y_INT : -031  | Z_INT : -1027   (mg)
    X_INT	: 0100  | Y_INT : -039  | Z_INT : -1016   (mg)
    X_INT	: 0072  | Y_INT : 0000  | Z_INT : -1008   (mg)
    X_INT	: 0096  | Y_INT : -063  | Z_INT : -1104   (mg)
    X_INT	: 0096  | Y_INT : -055  | Z_INT : -1112   (mg)
    X_INT	: 0056  | Y_INT : -047  | Z_INT : -888   (mg)
    X_INT	: 0048  | Y_INT : -076  | Z_INT : -959   (mg)
    X_INT	: 0007  | Y_INT : 0032  | Z_INT : -1071   (mg)
    X_INT	: 0064  | Y_INT : -056  | Z_INT : -991   (mg)
    X_INT	: 0080  | Y_INT : -063  | Z_INT : -976   (mg)
    X_INT	: 0015  | Y_INT : -027  | Z_INT : -972   (mg)
    X_INT	: 0080  | Y_INT : 0015  | Z_INT : -1023   (mg)
    X_INT	: 0048  | Y_INT : -063  | Z_INT : -1008   (mg)
    X_INT	: 0096  | Y_INT : -055  | Z_INT : -1008   (mg)
    X_INT	: 0128  | Y_INT : -063  | Z_INT : -1088   (mg)
    X_INT	: 0080  | Y_INT : -031  | Z_INT : -991   (mg)
    X_INT	: 0024  | Y_INT : -079  | Z_INT : -1080   (mg)
    X_INT	: 0063  | Y_INT : -079  | Z_INT : -1064   (mg)
    X_INT	: 0063  | Y_INT : -003  | Z_INT : -1016   (mg)
    X_INT	: 0132  | Y_INT : -095  | Z_INT : -1071   (mg)
    X_INT	: 0015  | Y_INT : -031  | Z_INT : -1023   (mg)
    X_INT	: 0096  | Y_INT : -016  | Z_INT : -1007   (mg)
    X_INT	: 0064  | Y_INT : -080  | Z_INT : -983   (mg)
    X_INT	: 0051  | Y_INT : -087  | Z_INT : -927   (mg)
    X_INT	: 0068  | Y_INT : -116  | Z_INT : -959   (mg)
    X_INT	: 0009  | Y_INT : -064  | Z_INT : -1023   (mg)
    X_INT	: 0052  | Y_INT : 0006  | Z_INT : -1024   (mg)
    X_INT	: 0032  | Y_INT : -031  | Z_INT : -944   (mg)
    X_INT	: 0067  | Y_INT : -015  | Z_INT : -1023   (mg)
    X_INT	: 0080  | Y_INT : -020  | Z_INT : -959   (mg)
    X_INT	: 0096  | Y_INT : -052  | Z_INT : -1027   (mg)
    X_INT	: 0112  | Y_INT : -096  | Z_INT : -1055   (mg)
    X_INT	: 0032  | Y_INT : -111  | Z_INT : -984   (mg)
    X_INT	: 0101  | Y_INT : -031  | Z_INT : -1087   (mg)
    X_INT	: 0096  | Y_INT : -079  | Z_INT : -1056   (mg)
    X_INT	: 0032  | Y_INT : -097  | Z_INT : -879   (mg)
    X_INT	: 0047  | Y_INT : -015  | Z_INT : -1023   (mg)
    X_INT	: 0064  | Y_INT : 0003  | Z_INT : -983   (mg)
    X_INT	: 0064  | Y_INT : -111  | Z_INT : -1072   (mg)
    X_INT	: 0051  | Y_INT : -031  | Z_INT : -1055   (mg)
    X_INT	: 0144  | Y_INT : -030  | Z_INT : -1152   (mg)
    

    The PCB was not in its enclosure, so it is not lying perfectly flat and was moved a bit (especially in the beginning).

    , do you see similar behavior?

    Best regards,

    Didrik

  • Hi Didrik, if I'm honest, last week I was all over the SPI comunication trying different configurations to reduce the inaccuracies. I don't know if the build I sent in .hex form was the same build as the results above as it was a build from the next day but most likely they were different builds.

    The build I am using at the moment is more stable than the last ones but it still spikes on my end with movement above 250mg while stationary. I find the initial boot up is generally fine but after one sleep cycle followed by another motion detected cycle, when the device next goes to sleep you can see spiking results that are a little too close to the threshold for my liking. The problem of demonstrating this is that the device loves to change it's response with every flash. Sometimes it works amazing and then others it self reacts and you need to increase the thresholds.

    Last week 250mg was perfect, today I need 300mg to prevent false positives which requires a decent shove. Unfortunately, if I set INT1 to be only for Activity and Inactivity Interrupts, the callback on INT1's pin will read two instances of the INT1 pin going low, it never reads a HIGH response on the edge detection, just LOW when it reads the pin.

    I might have to change how the whole thing works to run Linked mode and impliment a status reg reader that can tell what interrupt spawned it and set INT1 on the nRF91 to Rising HIGH detection only. Problem with that is that an interrupt callback will hang if a function is called inside it (even a small one, which I would need to read the register quickly) so I'll have to figure out a way to implement this so that the ISRs actually get read in my main application as a simple pin HIGH/LOW was much simpler.

    EDIT: Realised I haven't actually been flashing the ACTIVITY TIME register. Might be able to silence the spikes  now with that.

Related