Skip to content

Commit 881c28d

Browse files
committed
rename since there's a lot o chips
1 parent 4d2a1bc commit 881c28d

File tree

6 files changed

+51
-37
lines changed

6 files changed

+51
-37
lines changed

README.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
Introduction
33
============
44

5-
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-ft62xx/badge/?version=latest
5+
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-focaltouch/badge/?version=latest
66

7-
:target: https://circuitpython.readthedocs.io/projects/ft62xx/en/latest/
7+
:target: https://circuitpython.readthedocs.io/projects/focaltouch/en/latest/
88

99
:alt: Documentation Status
1010

@@ -13,7 +13,7 @@ Introduction
1313
:alt: Discord
1414
1515
CircuitPython driver for common low-cost FocalTech capacitive touch chips.
16-
Currently supports FT6206
16+
Currently supports FT6206 & FT6236
1717

1818
Dependencies
1919
=============
@@ -34,12 +34,12 @@ Usage Example
3434
import time
3535
import busio
3636
import board
37-
from ft62xx import adafruit_ft62xx
37+
import adafruit_focaltouch
3838
3939
# Create library object using our Bus I2C port
4040
i2c = busio.I2C(board.SCL, board.SDA)
4141
42-
ft = adafruit_ft62xx.Adafruit_FT6206(i2c, debug=True)
42+
ft = adafruit_focaltouch.Adafruit_FT6XXX(i2c, debug=True)
4343
4444
while True:
4545
n = ft.touched
@@ -58,7 +58,7 @@ Contributing
5858
============
5959

6060
Contributions are welcome! Please read our `Code of Conduct
61-
<https://github.com/adafruit/Adafruit_CircuitPython_ft62xx/blob/master/CODE_OF_CONDUCT.md>`_
61+
<https://github.com/adafruit/Adafruit_CircuitPython_FocalTouch/blob/master/CODE_OF_CONDUCT.md>`_
6262
before contributing to help this project stay welcoming.
6363

6464
Building locally
@@ -83,4 +83,4 @@ Then run the build:
8383

8484
.. code-block:: shell
8585
86-
circuitpython-build-bundles --filename_prefix adafruit-circuitpython-ft62xx --library_location .
86+
circuitpython-build-bundles --filename_prefix adafruit-circuitpython-focaltouch --library_location .

adafruit_ft62xx.py renamed to adafruit_focaltouch.py

Lines changed: 33 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
2121
# THE SOFTWARE.
2222
"""
23-
`adafruit_ft62xx`
23+
`adafruit_focaltouch`
2424
====================================================
2525
2626
TODO(description)
@@ -31,7 +31,7 @@
3131
# imports
3232

3333
__version__ = "0.0.0-auto.0"
34-
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_ft62xx.git"
34+
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_FocalTouch.git"
3535

3636
try:
3737
import struct
@@ -45,42 +45,56 @@
4545

4646
_FT6206_DEFAULT_I2C_ADDR = 0x38
4747

48-
_FT6206_REG_DATA = 0x00
49-
_FT6206_REG_NUMTOUCHES = 0x02
50-
_FT6206_REG_FACTORYMODE = 0x40
51-
_FT6206_REG_THRESHHOLD = 0x80
52-
_FT6206_REG_POINTRATE = 0x88
53-
_FT6206_REG_FIRMVERS = 0xA6
54-
_FT6206_REG_CHIPID = 0xA3
55-
_FT6206_REG_VENDID = 0xA8
56-
57-
class Adafruit_FT6206:
48+
_FT6XXX_REG_DATA = 0x00
49+
_FT6XXX_REG_NUMTOUCHES = 0x02
50+
_FT6XXX_REG_THRESHHOLD = 0x80
51+
_FT6XXX_REG_POINTRATE = 0x88
52+
_FT6XXX_REG_LIBH = 0xA1
53+
_FT6XXX_REG_LIBL = 0xA2
54+
_FT6XXX_REG_CHIPID = 0xA3
55+
_FT6XXX_REG_FIRMVERS = 0xA6
56+
_FT6XXX_REG_VENDID = 0xA8
57+
_FT6XXX_REG_RELEASE = 0xAF
58+
59+
class Adafruit_FocalTouch:
5860
"""
5961
A driver for the FocalTech capacitive touch sensor.
6062
"""
6163

6264
_debug = False
65+
chip = None
6366

6467
def __init__(self, i2c, address=_FT6206_DEFAULT_I2C_ADDR, debug=False):
6568
self._i2c = I2CDevice(i2c, address)
6669
self._debug = debug
6770

68-
if self._read(_FT6206_REG_VENDID, 1)[0] != 17 or self._read(_FT6206_REG_CHIPID, 1)[0] != 6:
69-
raise RuntimeError("Did not find FT6206 chip")
71+
chip_data = self._read(_FT6XXX_REG_LIBH, 9)
72+
lib_ver, chip_id, g_mode, pwr_mode, firm_id, skip, vend_id = struct.unpack('>HBBBBBB', chip_data)
73+
74+
if vend_id != 0x11:
75+
raise RuntimeError("Did not find FT chip")
76+
77+
if chip_id == 0x06:
78+
chip = "FT6206"
79+
elif chip_id == 0x64:
80+
chip = "FT6236"
7081

7182
if debug:
72-
print("Firmware vers %d" % self._read(_FT6206_REG_FIRMVERS, 1)[0])
73-
print("Point rate %d Hz" % self._read(_FT6206_REG_POINTRATE, 1)[0])
74-
print("Thresh %d" % self._read(_FT6206_REG_THRESHHOLD, 1)[0])
83+
print("Library vers %04X" % lib_ver)
84+
print("Firmware ID %02X" % firm_id)
85+
print("Point rate %d Hz" % self._read(_FT6XXX_REG_POINTRATE, 1)[0])
86+
print("Thresh %d" % self._read(_FT6XXX_REG_THRESHHOLD, 1)[0])
87+
88+
7589

7690
@property
7791
def touched(self):
78-
return self._read(_FT6206_REG_NUMTOUCHES, 1)[0]
92+
return self._read(_FT6XXX_REG_NUMTOUCHES, 1)[0]
7993

8094
@property
8195
def touches(self):
8296
touchpoints = []
83-
data = self._read(_FT6206_REG_DATA, 32)
97+
data = self._read(_FT6XXX_REG_DATA, 32)
8498

8599
for t in range(2):
86100
point_data = data[t*6+3 : t*6+9]

api.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

22
.. If you created a package, create one automodule per module in the package.
33
4-
.. automodule:: adafruit_ft62xx
4+
.. automodule:: adafruit_focaltouch
55
:members:

conf.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
master_doc = 'README'
3232

3333
# General information about the project.
34-
project = u'Adafruit ft62xx Library'
34+
project = u'Adafruit FocalTouch Library'
3535
copyright = u'2017 ladyada'
3636
author = u'ladyada'
3737

@@ -96,7 +96,7 @@
9696
html_static_path = ['_static']
9797

9898
# Output file base name for HTML help builder.
99-
htmlhelp_basename = 'AdafruitFt62xxLibrarydoc'
99+
htmlhelp_basename = 'AdafruitFocalTouchLibrarydoc'
100100

101101
# -- Options for LaTeX output ---------------------------------------------
102102

@@ -122,7 +122,7 @@
122122
# (source start file, target name, title,
123123
# author, documentclass [howto, manual, or own class]).
124124
latex_documents = [
125-
(master_doc, 'Adafruitft62xxLibrary.tex', u'Adafruitft62xx Library Documentation',
125+
(master_doc, 'AdafruitFocalTouchLibrary.tex', u'AdafruitFocalTouch Library Documentation',
126126
author, 'manual'),
127127
]
128128

@@ -131,7 +131,7 @@
131131
# One entry per manual page. List of tuples
132132
# (source start file, name, description, authors, manual section).
133133
man_pages = [
134-
(master_doc, 'Adafruitft62xxlibrary', u'Adafruit ft62xx Library Documentation',
134+
(master_doc, 'AdafruitFocalTouchlibrary', u'Adafruit FocalTouch Library Documentation',
135135
[author], 1)
136136
]
137137

@@ -141,7 +141,7 @@
141141
# (source start file, target name, title, author,
142142
# dir menu entry, description, category)
143143
texinfo_documents = [
144-
(master_doc, 'Adafruitft62xxLibrary', u'Adafruit ft62xx Library Documentation',
145-
author, 'Adafruitft62xxLibrary', 'One line description of project.',
144+
(master_doc, 'AdafruitFocalTouchLibrary', u'Adafruit FocalTouch Library Documentation',
145+
author, 'AdafruitFocalTouchLibrary', 'One line description of project.',
146146
'Miscellaneous'),
147147
]

examples/print_touches.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import time
22
import busio
33
import board
4-
import adafruit_ft62xx
4+
import adafruit_focaltouch
55

66
# Create library object using our Bus I2C port
77
i2c = busio.I2C(board.SCL, board.SDA)
88

9-
ft = adafruit_ft62xx.Adafruit_FT6206(i2c, debug=False)
9+
ft = adafruit_focaltouch.Adafruit_FocalTouch(i2c, debug=True)
1010

1111
while True:
1212
n = ft.touched

examples/simple_paint.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import busio
55
import board
66
import digitalio
7-
from ft62xx import adafruit_ft62xx
7+
import adafruit_focaltouch
88

99
# Create library object using our Bus I2C & SPI port
1010
i2c = busio.I2C(board.SCL, board.SDA)
@@ -20,7 +20,7 @@
2020
# Fill with black!
2121
display.fill(color565(0, 0, 0))
2222

23-
ft = adafruit_ft62xx.Adafruit_FT6206(i2c)
23+
ft = adafruit_focaltouch.Adafruit_FocalTouch(i2c)
2424

2525
while True:
2626
if ft.touched:

0 commit comments

Comments
 (0)