You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,7 +24,7 @@ Prior to megaTinyCore 2.6.0, manual installation of megaTinyCore would cause V1.
24
24
I buy a lot of electronics stuff on AliExpress. It's a great marketplace for things that are made by Chinese companies and are mostly generic, including loads of components unavailable to individuals in the global West any other way (ex, min order is a reel or something like that - if you can even find a component vendor that works with the no-name chinese chip maker). It is not a great place for the latest semiconductor product lines from major Western manufacturers, especially in the midst of a historic shortage of said chips. The modern AVR devices, when they are available through those channels at all, are **frequently reported to be fake or defective** (like ATtiny412s that think they're 416s and may not correctly execute power on reset). For that matter, **you probably don't want to buy any AVR microcontrollers on AliExpress**... Assembled boards, like Arduino Nano clones, generally work if you avoid the ones with the third party LGT8 chips and watch out for the ones with the ATmega168p instead of the '328p - but there are a lot of reports of bogus microcontrollers when they're sold as bare chips (I have heard of fake ATtiny85s that were actually remarked ATtiny13s; it's not just modern AVRs that get faked). There are a lot of interesting theories for where those bogus chips came from, and Microchip has remained totally silent on the issue.
25
25
26
26
## Using This Document
27
-
This document is best viewed online (as opposed to opening the markdown file in your favorite text editor), so that links are clickable and inline images are shown, and probably most importantly, to make tables render correctly sometimes. Again, this [document can be found on github](<https://github.com/SpenceKonde/megaTinyCore>](<https://github.com/SpenceKonde/megaTinyCore>)
27
+
This document is best viewed online (as opposed to opening the markdown file in your favorite text editor), so that links are clickable and inline images are shown, and probably most importantly, to make tables render correctly sometimes. Again, this [document can be found on github](<https://github.com/SpenceKonde/megaTinyCore>]
Copy file name to clipboardExpand all lines: megaavr/libraries/Wire/README.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,7 +53,7 @@ Availability of pin mappings by pincount for AVR Dx-series
53
53
In all cases, the part specific documentation included with the core takes precedence over this document and will include information about parts not mentioned here.
54
54
55
55
## Default Buffer Sizes
56
-
This can be overridden with compiler parameters (particularly suitable if using PIO which makes that easy) with `-DBUFFER_LENGTH = `.
56
+
This can be overridden with compiler parameters (particularly suitable if using PIO which makes that easy) with `-DBUFFER_LENGTH = ...`.
57
57
The size of the buffer is based simply on the available RAM on the part (note that multiple buffers may be needed depending on operational modes).
`*` The DA and DD (but not the DB) datasheets imply that the minimum guaranteed high is 1.45V in SMbus mode if running at less than 2.5v.
279
279
280
-
See also (Ref_Digital.md#INLVL)[the digital I/O reference] for the analogous data for these pins when used in non-I2C mode, in normal mode, and wheresupported, TTL mode.
280
+
See also [the digital I/O reference](Ref_Digital.md#INLVL) for the analogous data for these pins when used in non-I2C mode, in normal mode, and wheresupported, TTL mode.
281
281
282
282
283
283
@@ -335,11 +335,11 @@ Calling `begin()` with no arguments starts the master. It does not start slave m
335
335
Users who built their systems correctly, on the other hand, if they (as is commonly done to interface with lower voltage sensors) ran I2C at 3.3v and the MCU at 5V, using the canonical library, if they were attentive, they'd probably wonder why the voltage on the data lines was slightly higher than 3.3v while idle (thankfully the low strength of the pullups allows evemn the frailest protection diodes to keep the lower voltage chip safe - the current flowing from an internalpullup on a 5v chip to the protectio ndiode of a 3.3v chip (neglectign the diode drop, because that varies between what the device is, it will always lower the current by reducing the voltage drop). )
336
336
337
337
**This version of Wire does not turn on the pullups** This means that if external pullups are missing, even the simplest I2C configurations will not work. Even a multimeter is then sufficient to determine that the SCL and SDA lines are not HIGH.
338
-
* Locate the pullup resistors if you believe you have installed them, Otherwise, power down the system and install the necessary pullups.
339
-
* If you find pullups, but one or both of them does not appear to be pulling up the data line, examine the solder joints for cold solder joints (which should be reworked via the usual methods), and the resistors for damage (chip reistors, rarely, can crack during assembly, and must be replaced. High rates of such failure indicate a problem with your assembly, component selection, or operating conditions). Power down system and perform appropriate repairs, if needed, and and measure resistance from ground to the malfunctioning line, if it is ~0 ohms, locate the solder bridge between the line and ground and correct it.
340
-
* Following above, if the lines are still not going HIGH, and you've checked that the other side of those pullups really does have the proper voltage on the high side, and really does have the same (incorrect) voltage on the SCL or SDA side, then something is dragging the bus down to ground.
341
-
* 2 bullet points ago, you should have tested with power off, and confirmed that neither line is shorted to ground. You did do that right? If you see a short here on the multimeter, but can't locate it,
342
-
* Disconnect the slave device. Power on the system, and upload code that calls Wire.begin() but does nothing else. measure the voltage on the SCL and SDA lines. If they are not high, and you've ruled out solder bridges testing with power off
338
+
* Locate the pullup resistors if you believe you have installed them, Otherwise, power down the system and install the necessary pullups.
339
+
* If you find pullups, but one or both of them does not appear to be pulling up the data line, examine the solder joints for cold solder joints (which should be reworked via the usual methods), and the resistors for damage (chip reistors, rarely, can crack during assembly, and must be replaced. High rates of such failure indicate a problem with your assembly, component selection, or operating conditions). Power down system and perform appropriate repairs, if needed, and and measure resistance from ground to the malfunctioning line, if it is ~0 ohms, locate the solder bridge between the line and ground and correct it.
340
+
* Following above, if the lines are still not going HIGH, and you've checked that the other side of those pullups really does have the proper voltage on the high side, and really does have the same (incorrect) voltage on the SCL or SDA side, then something is dragging the bus down to ground.
341
+
* 2 bullet points ago, you should have tested with power off, and confirmed that neither line is shorted to ground. You did do that right? If you see a short here on the multimeter, but can't locate it,
342
+
* Disconnect the slave device. Power on the system, and upload code that calls Wire.begin() but does nothing else. measure the voltage on the SCL and SDA lines. If they are not high, and you've ruled out solder bridges testing with power off
0 commit comments