-
-
Notifications
You must be signed in to change notification settings - Fork 274
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clean up hardware detection & add support for a variant of Solo USB C that uses capacitive touch keys instead of the dome button. #342
base: master
Are you sure you want to change the base?
Conversation
Out of curiosity, who is we? |
Can you use the same nets and sampling capacitor (1nF) for capacitive touch as is done in "Somu"/nano-A? |
@nickray I'm planning to run a "learn SMD" workshop in my office using these. As a Google employee, by default Google claims copyright to my open source contributions and needs to approve non-whitelisted licenses. |
@conorpp It's too late for me to change the sampling cap since I already ordered and received all the components (I believe that the Somu isn't included in the BOM text file, which is what I used to place my parts order). It should be trivial to swap it out, though. Either way, the TSC threshold is likely to be different than the Somu's due to very different electrode geometry. |
Yes, please delete the test pad connected to PB6 so we can use the same nets. Sorry I forgot about that test pad. I suspect that the TSC threshold, with the same sampling cap, will be about the same (could be wrong). But we can keep it the way it is currently since it's more flexible anyways. |
targets/stm32l432/src/device.c
Outdated
@@ -290,7 +290,7 @@ void device_init(int argc, char *argv[]) | |||
|
|||
hw_init(LOW_FREQUENCY); | |||
|
|||
if (! tsc_sensor_exists()) | |||
if (nfc_peripheral_exists()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this if statement and nfc_peripheral_exists()
can be removed. So it would just be:
_NFC_status = nfc_init();
NFC init already detects if an NFC peripheral is there, and additionally if it's being passively powered. This allows Solo to become an Tap by simply adding the AS3956 chip. I'd like this remain true for USB-C Solo. I hadn't thought about future touch sensing Solos when I first wrote that if statement :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Updated to use the same nets. |
dbcd2a6
to
ef8caad
Compare
@conorpp any ideas how I can shave off another 44 bytes? |
… C that uses capacitive touch keys instead of the dome button.
…size. Currently getting these linker errors in Travis: /usr/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/bin/ld: bootloader.elf section `.data' will not fit in region `flash' /usr/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 60 bytes
a91437a
to
825b9c4
Compare
@conorpp ping |
… the upstream firmware so it shouldn't need the threshold modified.
even those done in your free time while not working? |
See solokeys/solo-hw#13.