Project:HM55B
From London Hackspace Wiki
Module
$20-25 compass module for embedded systems. SMD will be cheaper.
Testing with the BusPirate
BusPirate settings:
- M (mode)
- 8 (3-wire raw)
- 4 (400KHz)
- 2 (3.3V high)
- W (turn on 5V output)
Reset:
\[/_\/_\/_\/_\&:10]
RAW3WIRE>\[/_\/_\/_\/_\&:10] CLOCK, 0 CS ENABLED CLOCK, 1 DATA OUTPUT, 0 CLOCK, 0 CLOCK, 1 DATA OUTPUT, 0 CLOCK, 0 CLOCK, 1 DATA OUTPUT, 0 CLOCK, 0 CLOCK, 1 DATA OUTPUT, 0 CLOCK, 0 DELAY 0b00001010uS CS DISABLED
Take sample (1100 is the response for success, 00xx is for incomplete, xx11 is error, see p9 of datasheet)
\[/-\/_\/_\/_\&&]&:10[&:10/-\/-\/_\/_\!!!!&!!!!!!!!!!!&!!!!!!!!!!!]
READ BIT: 1 READ BIT: 1 READ BIT: 0 READ BIT: 0 DELAY 0b00000001uS READ BIT: 0 READ BIT: 0 READ BIT: 0 READ BIT: 0 READ BIT: 0 READ BIT: 0 READ BIT: 1 READ BIT: 0 READ BIT: 0 READ BIT: 0 READ BIT: 0 DELAY 0b00000001uS READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 1 READ BIT: 0 READ BIT: 0
Note that &:50000 isn't enough of a delay, but && works, presumably because BusPirate parser adds a huge delay. This means that we don't know how fast this module can be clocked, because each ! will be > 50ms apart.
Sample values:
0,-6
-1,-11
-1,-19