Help requested to understand SCP1000 CFG register access

Your source for all things Atmel.

Moderator: phalanx

Post Reply
rlh99
Posts: 11
Joined: Tue Nov 17, 2009 8:26 pm

Help requested to understand SCP1000 CFG register access

Post by rlh99 » Wed Nov 18, 2009 5:53 pm

The SCP1000 datasheet (SCP1000_product_family_specification_rev_0.08-3.pdf) shows the CFG register as having an address of 0x00, and legal contents of 0x05 and 0x0D (sections 3.1 and 3.3) and has an example of the direct-register actions required when writing to the CFG register (section 3.3.1). All well and good, everything is consistent.

But... in all code examples that I can find, including the one from VTI (tn46_c-code_example_for_scp1000-d01_rev_0.1_[1].pdf), accesses to the CFG register set up an address of 0x2D in the ADDPTR register and a data value of 0x03 in the DATAWR register. According to the datasheet that is not a legal address or data.

Am I not understanding something? Comments from anyone who has used this device will be greatly appreciated.

Note: I don't have a device yet, I'm still waiting for my order to arrive.

Roger

gm
Posts: 203
Joined: Fri May 04, 2007 3:08 pm

Post by gm » Thu Nov 19, 2009 8:48 am

That register is "MODTEST2" and is used to configure the SCP1000 for "low noise". The description was in the version rev .05 but it looks like it was removed from subsequent versions.

Here is the description:

MODTEST2
Noise level configuration:
0x03 – reduced noise level
other combinations are reserved.
Wait 100 ms after noise level is configured.

Since this is what most implementations would use, they probably realized that it should just be a part of the normal initialization procedure.

rlh99
Posts: 11
Joined: Tue Nov 17, 2009 8:26 pm

Post by rlh99 » Thu Nov 19, 2009 4:34 pm

Thanks gm, that explains it perfectly. The document from VTI which describes the differences between ASIC Rev B and Rev C notes that it is no longer necessary to configure for low noise, but it doesn't make any reference to register names/numbers etc. The only indirect-access register in the new document (besides the TWI address register) is the CFG, and I assumed (silly me!) that the example code was intending to access that register.

Have you used the SCP1000 successfully? Any comments on performance or difficulties?

Again, thanks for your reply.

Regards,

Roger

gm
Posts: 203
Joined: Fri May 04, 2007 3:08 pm

Post by gm » Sat Nov 21, 2009 2:37 pm

We were doing some long-term testing with them and I was running 5 of them simultaneously along with two other precision pressure sensors, reporting pressure every 2 seconds. There is usually a small offset from the actual pressure but they did track very well compared to the reference precision pressure sensors.

There was an anomaly that I have yet to track down and I have been working on other projects in the meantime (so I'm trying to remember the details), about every 8000 samples or so, the reported pressure would rise for a few millibars and then after a few hundred samples would then settle back down. It happened with all 5 and would happen at approximately, not exactly, the same time. Very weird but it could have been my software.

When things slow down a bit I will revisit these sensors and sort out what the problems was.

Let me know if you experience anything similar.

Thanks,

Greg

rlh99
Posts: 11
Joined: Tue Nov 17, 2009 8:26 pm

Post by rlh99 » Sat Nov 21, 2009 6:07 pm

Hmm, very odd, every 4 - 5 hours. With the suggested use of this type of sensor to assist in-building (hi-rise) gps location, I've idly wondered about the effect that aircon might have, but several millibars is a significant value...

I'm laying out the controller module today, and making provision for connecting a BMP085 as well. My SCP1000 will probably arrive in a week or 10 days so I'll see how things go then.

Regards,

Roger

Post Reply