Thank you for the reply.
As a sanity check, I went back to Debian 7.5. And it just worked without
having to do any extra configuration. See below for a dump of results. My
compass device appears at its default address 0x21. I sent a command
(0x72) to read EEPROM register 0x00 and read back the expected byte (0x42).
With the Debian 8.7 image, I got error messages when I tried the *i2cget*
and *i2cset* commands. I also noticed that the *i2cdetect -y -r 1* command
runs very slowly compared to the Debian 7.5 image, it takes a second or so
to print each address entry.
Is there some extra configuration I need to do in Debian 8.7? Like edit
the *uEnv.txt* file? Load an overlay? Or tweak a DTS file?
Thanks!
debian@beaglebone:~$ uname -a
Linux beaglebone 3.8.13-bone50 #1 SMP Tue May 13 13:24:52 UTC 2014 armv7l
GNU/Linux
debian@beaglebone:~$ i2cdetect -y -r 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- 21 -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- UU UU UU UU -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
debian@beaglebone:~$ i2cset -y 1 0x21 0x72 0x00
debian@beaglebone:~$ i2cget -y 1 0x21
0x42
On Sunday, June 18, 2017 at 12:18:23 AM UTC-5, RobertCNelson wrote:
>
> On Sat, Jun 17, 2017 at 11:51 PM, mark whitney <[email protected]
> <javascript:>> wrote:
> > Hello,
> >
> > I'm trying to work through the I2C examples in the Molloy book. But I'm
> > using a Honeywell HMC6352 compass since I had one lying around. It can
> work
> > from 2.7V to 5V and operates at a bus frequency of 100KHz. I verified
> that
> > it works by hooking it up to a 5V microcontroller. I can query its
> > registers. But I haven't had any luck communicating with it on a
> BeagleBone
> > Black.
> >
> > I'm using 3.9V pull-up resistors for SDA and SCL. Here is info about my
> > kernel version, cape slots, and the I2C pins:
> >
> > debian@beaglebone:~$ uname -a
> > Linux beaglebone 4.4.54-bone16 #1 Fri Mar 17 04:56:31 UTC 2017 armv7l
> > GNU/Linux
> > debian@beaglebone:~$ sudo cat $SLOTS
> > 0: PF---- -1
> > 1: PF---- -1
> > 2: PF---- -1
> > 3: PF---- -1
> > 4: P-O-L- 0 Override Board Name,00A0,Override Manuf,cape-universaln
> > debian@beaglebone:~$ config-pin -i P9.19
> > Pin is not modifyable: P9_19 i2c2_scl
> > debian@beaglebone:~$ config-pin -i P9.20
> > Pin is not modifyable: P9_20 i2c2_sda
> > debian@beaglebone:~$
> >
> > It looks like everything is okay. Am I missing any steps? I saw some
> info
> > about adding an I2C overlay. Is that still necessary with the universal
> > cape?
> >
> > BTW, I also tried the 4.4.54-ti-r93 kernel without success.
> >
> > Thanks for any advice. This noob is stumped. :-)
>
> the i2c port on P9_19/P9_20 is already enabled by default.
>
> Regards,
>
>
> --
> Robert Nelson
> https://rcn-ee.com/
>
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/a9228b13-db3a-476d-a2b4-0865192550f0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.