<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
{mso-style-priority:99;
mso-style-link:"Sprechblasentext Zchn";
margin:0cm;
margin-bottom:.0001pt;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";
mso-fareast-language:EN-US;}
span.E-MailFormatvorlage17
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:windowtext;}
span.E-MailFormatvorlage18
{mso-style-type:personal;
font-family:"Arial","sans-serif";
color:#1F497D;}
span.E-MailFormatvorlage19
{mso-style-type:personal-reply;
font-family:"Arial","sans-serif";
color:#1F497D;}
span.SprechblasentextZchn
{mso-style-name:"Sprechblasentext Zchn";
mso-style-priority:99;
mso-style-link:Sprechblasentext;
font-family:"Tahoma","sans-serif";
mso-fareast-language:EN-US;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE-AT" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">Yes, normally all devices should answer to acknowledge…<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">3.1.13 General call address<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">The general call address is for addressing every device connected to the I2C-bus at the
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">same time. However, if a device does not need any of the data supplied within the general
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">call structure, it can ignore this address by not issuing an acknowledgment. If a device
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">does require data from a general call address, it acknowledges this address and behave
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">as a slave-receiver. The master does not actually know how many devices acknowledged
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">if one or more devices respond. The second and following bytes are acknowledged by
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">every slave-receiver capable of handling this data. A slave who cannot process one of
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">these bytes must ignore it by not-acknowledging. Again, if one or more slaves acknowledge,
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">the not-acknowledge will not be seen by the master. The meaning of the general call
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D">address is always specified in the second byte (see Figure 16).<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US" style="font-size:9.0pt;font-family:"Arial","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">See I2C spec. at http://www.nxp.com/documents/user_manual/UM10204.pdf<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">Ciao<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">Peter<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Arial","sans-serif";color:#1F497D"><a href="http://www.ullrich.at.tt"><span lang="EN-US">http://www.ullrich.at.tt</span></a></span><span style="font-family:"Arial","sans-serif";color:#1F497D">
<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif";mso-fareast-language:DE-AT">Von:</span></b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif";mso-fareast-language:DE-AT"> Synth-diy [mailto:synth-diy-bounces@dropmix.xs4all.nl]
<b>Im Auftrag von </b>Rob Spencer<br>
<b>Gesendet:</b> Dienstag, 16. Februar 2016 10:12<br>
<b>An:</b> 'synth-diy'<br>
<b>Betreff:</b> Re: [sdiy] STM32 vs WM8731<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Thanks Peter, I’ll try that.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Quick question, when you say 0 is a general call, will anything that’s listening on the bus respond?<o:p></o:p></span></p>
</div>
<div>
<div id="MAC_OUTLOOK_SIGNATURE">
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Rob Spencer<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">gmsn.co.uk<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">07590 267835<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="color:black">From: </span></b><span style="color:black">Ullrich Peter<br>
<b>Date: </b>Tuesday, 16 February 2016 08:44<br>
<b>To: </b>Rob Spencer, 'synth-diy'<br>
<b>Subject: </b>Re: [sdiy] STM32 vs WM8731</span><span style="font-size:12.0pt;color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Arial","sans-serif";color:#1F497D">Hi Rob!</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Arial","sans-serif";color:#1F497D"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">As a little I2C trouble shooter I normally make a little routine that’s called I2C_Scan that just makes a master transmit or receive to all addresses from 1 to 127
(0 is normally general call) and just checks if it receives an acknowledge or not followed by a stop condition that ends the communication without sending or receiving any data byte.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">All addresses that get an acknowledge will be printed to the debugging console/serial interface and a summary tells how many addresses/devices have been found on
the bus.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">If you don’t get a response from your WM8731 then I would look for eventual hardware errors.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D">Ciao<br>
Peter</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Arial","sans-serif";color:#1F497D"> </span><span style="color:black"><o:p></o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:black">Von:</span></b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:black"> Synth-diy [<a href="mailto:synth-diy-bounces@dropmix.xs4all.nl">mailto:synth-diy-bounces@dropmix.xs4all.nl</a>]
<b>Im Auftrag von </b>Rob<br>
<b>Gesendet:</b> Dienstag, 16. Februar 2016 09:37<br>
<b>An:</b> 'synth-diy'<br>
<b>Betreff:</b> [sdiy] STM32 vs WM8731</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">Just continuing on the STM32 discussions…</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">I’ve been trying to get a Nucleo-F411RE talking to a WM8731, but not having much luck getting it to communicate over I2C</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">I send the following from the STM32:</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> WM8731Status[0] = HAL_I2C_Master_Transmit(&hi2c1, 0x34, WM8731PowerOn1, 1, 10000);</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">But I don’t get an Ack from the WM8731:</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> <a href="https://www.dropbox.com/s/yhen98n17pyrqgr/Screenshot%202016-02-16%2008.22.15.png?dl=0">
https://www.dropbox.com/s/yhen98n17pyrqgr/Screenshot%202016-02-16%2008.22.15.png?dl=0</a></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">Here’s the schematic for the WM8731 setup:</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> <a href="https://www.dropbox.com/s/e6fkerkmf95ldzf/Screenshot%202016-02-16%2008.20.29.png?dl=0">
https://www.dropbox.com/s/e6fkerkmf95ldzf/Screenshot%202016-02-16%2008.20.29.png?dl=0</a></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">I’m pretty sure everything on the STM32 side is setup correctly, and I’m working on the assumption that there’s not a lot to do with the WM8731. Once all the power is connected and the I2C mode and
address pins are set low it should just receive I2C messages. I think the issue might be around the address, but I’ve tried all combinations I can think of.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">Any help would be much appreciated as my wife is getting tired of me shouting at the darn thing!</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">Many thanks in advance</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">Rob</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:black">gmsn.co.uk</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:7.0pt;color:black;mso-fareast-language:DE-AT"><br>
<br>
<br>
The information contained in this e-mail message is privileged and confidential and is for the exclusive use of the addressee. The person who receives this message and who is not the addressee, one of his employees or an agent entitled to hand it over to the
addressee, is informed that he may not use, disclose or reproduce the contents thereof, and is kindly asked to notify the sender and delete the e-mail immediately.</span><span style="font-size:10.5pt;color:black;mso-fareast-language:DE-AT"><o:p></o:p></span></p>
</div>
</div>
</div>
<span style="font-size: 9px;"><br><br><br>The information contained in this e-mail message is privileged and confidential and is for the exclusive use of the addressee. The person who receives this message and who is not the addressee, one of his employees or an agent entitled to hand it over to the addressee, is informed that he may not use, disclose or reproduce the contents thereof, and is kindly asked to notify the sender and delete the e-mail <span style="font-size: 11px;"></span>immediately.<br><br></span></body>
</html>