Commit graph

359 commits

Author SHA1 Message Date
rbaron
930239e385 Cleanup + double_reset counter 2023-06-07 08:26:05 +02:00
rbaron
015ce94bbd Cleanup 2023-06-07 08:10:23 +02:00
rbaron
987c4f52c0 Removes async debug counters API - not needed 2023-06-07 08:08:34 +02:00
rbaron
509350457f [ZigBee sample] Introduce debug counters
In the effort to increse reliability of the Zigbee sample, #126 and #130
introduced handling for possibly rare, hard-to-debug events that may be
occurring. While these changes seem to help in practive, we don't know
exactly how often, if ever, they are triggered.

This PR introduces debug_counters in hope to add some visilibty in these
hard-to-debug, rare conditions.

Calling `prst_debug_counters_increment("some_counter")` will increment a
value stored in flash. These values are then dumped via logging when the
device boots. Moving forward we can also consider exposing these values
via a ZigBee cluster.
2023-06-07 08:08:34 +02:00
rbaron
bcc5a853d0
Merge pull request #130 from oleo65/zigbee-schedule-steering-restart
Zigbee schedule steering restart
2023-06-07 08:07:44 +02:00
Ole Odendahl
3aa33cdd89
Fixed api of restart watchdog. 2023-06-02 11:39:52 +02:00
Ole Odendahl
ce748c4759
Added restart watchdog timeout to Kconfig. 2023-06-02 11:31:58 +02:00
Ole Odendahl
5cede82dc5
Changing api of restart handler to only expose needed functions.
This encapsulates the low level timer logic from the caller.
2023-06-02 11:16:49 +02:00
Ole Odendahl
9285a6bc41
Added comment to describe nordic funny function name. 2023-06-02 11:15:46 +02:00
Ole Odendahl
6f10dc9e19
Fixed clang format. 2023-06-02 11:07:47 +02:00
Ole Odendahl
c52d5f7a48
Added steering restart handler to signal handler steering branch.
Made the device flash less frequently to save power on unexpected connection drops.
2023-06-02 11:07:47 +02:00
Ole Odendahl
727138415e
Added restart handler module. 2023-06-02 11:07:46 +02:00
Ole Odendahl
69c0ed3694
Separated two signals for better debugging and possibly different handling. 2023-06-02 11:07:46 +02:00
Ole Odendahl
ba786eb298
Moving steering successful flashing to success if branch. 2023-06-02 11:00:17 +02:00
rbaron
6580cf40a2
Merge pull request #126 from MJDSys/fix_KRKNWK-12017
Implement workaround for errata KRKNWK-12017
2023-05-31 21:21:08 +02:00
Matthew Dawson
54b1c48638
Implement workaround for errata KRKNWK-12017
Nordic has published an errata for the nRF Connect SDK for versions
>1.8.0 where a Zigbee End Device can end up getting stuck if the
parent device does not acknowledge the "Device Announcement packet".

They have a suggested workaround to implement in the SDK, which has
been adapted for the custom signal handler used here.

This is an effort to solve issues where my parasites would occasionally
drop off my network and require a reboot.  After 24Hrs, I've not yet
had a device disappear but it has taken >weeks before a device would
fail.  Unforunately it's hard to debug the board as the chips are in a
low power state when this occurs.
2023-05-10 10:45:30 -04:00
rbaron
e56a7748b0
Update kitspace.yaml
#125
2023-05-08 08:58:08 +02:00
rbaron
117b257336
Update README.md
Fix wiki link
2023-05-03 19:56:07 +02:00
rbaron
70d716520d
Update cases options in README.md 2023-04-19 21:41:53 +02:00
rbaron
414427df5b
Merge pull request #121 from mneuhaus/patch-1
Add Link to another Case to the Readme
2023-04-19 21:32:18 +02:00
Marc Neuhaus
fbf8e09f0d
Add Link to another Case to the Readme 2023-04-19 09:23:28 +02:00
rbaron
0ca44f737b
Merge pull request #120 from rbaron/ble-nonconn
[ble] Make advertising non-connectable
2023-04-16 14:26:41 +02:00
rbaron
7ac6d98b3b [ble] Make advertising non-connectable
I've been debugging a Shelly [bluetooth
proxy](https://www.home-assistant.io/integrations/shelly/#bluetooth-support)
feature, which didn't like b-parasite's advertising. It swallowed it before proxying it to HA.

I compared to both ATC and the legacy b-parasite advertising
(pre-nrf-connect) and found it to be related to the
non-connectable/non-scannable settings. Until this PR, we were
mistankenly settings the advertising to scannable, although with no
scannable data. The Zephyr code that sets this parameter based on the
scannable data is [here](c0fcd35531/subsys/bluetooth/host/adv.c (L860)).

My bet is that some scanners like ESPHome are okay with this, but Shelly
is not. Either way, I believe this PR makes the advertisements more
compliant.
2023-04-16 12:28:23 +02:00
rbaron
9ff5180cd7
Merge pull request #117 from rbaron/hardware-v2
Version 2.0.0
2023-03-30 19:30:06 +02:00
rbaron
fdf4609131 Update README.md with photo of v2.0.0 board 2023-03-30 19:20:33 +02:00
rbaron
00d11f50a7 Remove hardware-v2 from workflow triggers 2023-03-30 07:57:37 +02:00
rbaron
caec746c26 Mentions input sample in README.md 2023-03-30 07:57:07 +02:00
rbaron
cb40173b6b Remove debug info 2023-03-29 21:46:41 +02:00
rbaron
ebc26fcccd Cleanups 2023-03-29 21:42:41 +02:00
rbaron
dbded329a4 Build input sample as part of the CI 2023-03-29 21:30:16 +02:00
rbaron
e82c1b6bc1 Implements button handling
- DTS bindings
- Debouncing logic
- New `input` for testing and interrupt power profiling
2023-03-29 21:28:24 +02:00
rbaron
2c052cd376
Merge pull request #116 from oleo65/zigbee-identify-callback
Added zigbee identify callback
2023-03-27 19:36:59 +02:00
Ole Odendahl
20d6c893bf
Added callback for handling identify button action as declared in identify cluster. 2023-03-27 12:20:03 +02:00
rbaron
02b3970ffc Shorten job names 2023-03-19 16:45:55 +01:00
rbaron
6c618d946c Fixes workflow matrix variables and debug 2023-03-19 16:37:33 +01:00
rbaron
ead6fd434d Refactor github actions into parallel jobs 2023-03-19 16:26:12 +01:00
rbaron
bf9f4e1b5b Get GitHub to build some samples for 2.0.0 2023-03-19 15:26:58 +01:00
rbaron
a6995d1ce8 Update date on pcbnew 2023-03-19 15:06:39 +01:00
rbaron
c7128ef163 Generate fabrication files 2023-03-19 15:06:39 +01:00
rbaron
5eef25f86b Updates SW1 location and pin
Previous, SW1 was too close to RST, making it difficult to press one
without pressing another. After changing its position, it was more
convenient to route SW1 to pin 10 on U1 - That's P0.30/AIN6 both on
nRF52840 (C) and nRF52833 (E) modules.
2023-03-19 15:06:39 +01:00
rbaron
19e0354113 Fixes Q1 in PCB layout. I think 2023-03-19 15:06:39 +01:00
rbaron
5cc40a41f6 Set calibration coefficients for 2.0.0 2023-03-19 15:06:39 +01:00
rbaron
7f652ce75d BIG YIKES - Fix wrong symbol/footprint for MMBT3906 (Q1)
I previously used a basic 2N3906 and then changed its footprint to
SOT-23. This led to the wrong pin assignment.
This commit fixes it by using the correct symbol and footprint for it.

Note that the PCB layout still needs fixing.
2023-03-19 15:06:39 +01:00
rbaron
b34bc60a0a Actually use the devicetree calibration coeffs 2023-03-19 15:06:39 +01:00
rbaron
2f7a25e266 Add devicetree calibration coeffs to nrf52833 board 2023-03-19 15:06:39 +01:00
rbaron
e24530b7c3 Fix devicetree-coeffs bug 2023-03-19 15:06:39 +01:00
rbaron
1983f31af9 Store calibration polynomial in devicetree
This will enable us to transparently use different calibration for
different board revisions. The 2.0.0 revision changes the sensing
circuitry and will need its own coeffs.

In this commit, both models are run in parallel for debugging.
2023-03-19 15:06:39 +01:00
rbaron
dbf288138e Add 2.0.0 board revision & CONFIG_BOARD_REVISION Kconfig 2023-03-19 15:06:39 +01:00
rbaron
53f806a8e5 Fix stale silkscreen 1.2.0 -> 2.0.0 2023-03-19 15:06:39 +01:00
rbaron
cfc5491849 Plotted gerbers 2023-03-19 15:06:39 +01:00