Skip to content

Commit dc5efd3

Browse files
committed
0.4.0 AS5600
1 parent a4ad8b4 commit dc5efd3

File tree

6 files changed

+27
-15
lines changed

6 files changed

+27
-15
lines changed

libraries/AS5600/AS5600.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//
22
// FILE: AS56000.cpp
33
// AUTHOR: Rob Tillaart
4-
// VERSION: 0.3.8
4+
// VERSION: 0.4.0
55
// PURPOSE: Arduino library for AS5600 magnetic rotation meter
66
// DATE: 2022-05-28
77
// URL: https://github.com/RobTillaart/AS5600
@@ -56,6 +56,7 @@ AS5600::AS5600(TwoWire *wire)
5656

5757

5858
#if defined (ESP8266) || defined(ESP32)
59+
5960
bool AS5600::begin(int dataPin, int clockPin, uint8_t directionPin)
6061
{
6162
_directionPin = directionPin;
@@ -65,7 +66,6 @@ bool AS5600::begin(int dataPin, int clockPin, uint8_t directionPin)
6566
}
6667
setDirection(AS5600_CLOCK_WISE);
6768

68-
_wire = &Wire;
6969
if ((dataPin < 255) && (clockPin < 255))
7070
{
7171
_wire->begin(dataPin, clockPin);
@@ -75,6 +75,7 @@ bool AS5600::begin(int dataPin, int clockPin, uint8_t directionPin)
7575
if (! isConnected()) return false;
7676
return true;
7777
}
78+
7879
#endif
7980

8081

libraries/AS5600/AS5600.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
//
33
// FILE: AS5600.h
44
// AUTHOR: Rob Tillaart
5-
// VERSION: 0.3.8
5+
// VERSION: 0.4.0
66
// PURPOSE: Arduino library for AS5600 magnetic rotation meter
77
// DATE: 2022-05-28
88
// URL: https://github.com/RobTillaart/AS5600
@@ -12,7 +12,7 @@
1212
#include "Wire.h"
1313

1414

15-
#define AS5600_LIB_VERSION (F("0.3.8"))
15+
#define AS5600_LIB_VERSION (F("0.4.0"))
1616

1717
// default addresses
1818
const uint8_t AS5600_DEFAULT_ADDRESS = 0x36;

libraries/AS5600/CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,18 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/)
55
and this project adheres to [Semantic Versioning](http://semver.org/).
66

77

8+
## [0.4.0] - 2023-06-27
9+
- fix #39 support for Wire2 on ESP32
10+
- update readme.md
11+
12+
----
13+
814
## [0.3.8] - 2023-06-18
915
- add **void burnSetting()** improvements from #38
1016
- use with care
1117
- add sketches to burn settings (use with care!)
1218
- minor edits.
1319

14-
1520
## [0.3.7] - 2023-05-09
1621
- change **getCumulativePosition()** to use **AS5600_ANGLE**
1722
so filters can be applied.

libraries/AS5600/README.md

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,22 @@ Please share your experiences.
4545

4646
The I2C address of the **AS5600** is always 0x36.
4747

48-
The AS5600 datasheet states it supports Fast-Mode == 400 KHz
49-
and Fast-Mode-Plus == 1000 KHz.
50-
Tests with an AS5600L (UNO) failed at 400 KHz (needs investigation).
51-
5248
The sensor should connect the I2C lines SDA and SCL and the
5349
VCC and GND to communicate with the processor.
5450
Do not forget to add the pull up resistors to improve the I2C signals.
5551

52+
The AS5600 datasheet states it supports Fast-Mode == 400 KHz
53+
and Fast-Mode-Plus == 1000 KHz.
54+
55+
#### Pull ups
56+
57+
I2C performance tests with an AS5600L with an UNO failed at 400 KHz.
58+
After investigation it became clear that pull ups are mandatory.
59+
The UNO expects 5 Volt I2C signals from the AS5600.
60+
However the device only provides 3V3 pulses on the bus.
61+
So the signal was not stable fast enough (not "square enough").
62+
After applying pull ups the AS5600L worked up to 1000 KHz.
63+
5664

5765
#### DIR pin
5866

@@ -630,8 +638,8 @@ priority is relative.
630638

631639
#### Must
632640

633-
- re-organize readme (0.4.0)
634-
- rename revolution functions (0.4.0)
641+
- re-organize readme
642+
- rename revolution functions
635643
- to what?
636644

637645

@@ -650,8 +658,6 @@ priority is relative.
650658
- 1 minute (need HW)
651659
- check Timing Characteristics (datasheet)
652660
- is there improvement possible.
653-
- investigate why AS5600L failed at 400 KHz I2C
654-
- repeatable?
655661

656662

657663
#### Could

libraries/AS5600/library.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"type": "git",
1616
"url": "https://github.com/RobTillaart/AS5600.git"
1717
},
18-
"version": "0.3.8",
18+
"version": "0.4.0",
1919
"license": "MIT",
2020
"frameworks": "arduino",
2121
"platforms": "*",

libraries/AS5600/library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=AS5600
2-
version=0.3.8
2+
version=0.4.0
33
author=Rob Tillaart <[email protected]>
44
maintainer=Rob Tillaart <[email protected]>
55
sentence=Arduino library for AS5600 and AS5600L magnetic rotation meter.

0 commit comments

Comments
 (0)