Compare commits

..

505 commits

Author SHA1 Message Date
Brent Rubell
9b79afc177
Merge pull request #798 from adafruit/as5600
As5600
2025-08-28 13:48:02 -04:00
tyeth
e60be99cbd Merge branch 'main' into as5600 2025-08-27 20:13:12 +01:00
Tyeth Gundry
19d7984a9e
Merge pull request #799 from adafruit/mlx90632
Mlx90632
2025-08-27 18:21:30 +01:00
Tyeth Gundry
8c0e9803b3 fix(partitions): 4MB NoOTA in platformIO.ini 2025-08-26 19:16:38 +01:00
Tyeth Gundry
4258c12206 chore(as5600): doxygen for readSensor 2025-08-26 18:43:45 +01:00
Tyeth Gundry
7a275e5d02 fix(as5600): check before delete 2025-08-26 18:31:45 +01:00
Tyeth Gundry
d2d51db455 PR feedback and clang format 2025-08-22 18:18:32 +01:00
Tyeth Gundry
71b8dd42d2 Doxygen fixes 2025-08-22 13:21:14 +01:00
Tyeth Gundry
6deba1dea6 clang-format 2025-08-22 13:04:10 +01:00
Tyeth Gundry
5be2eb1b4a Drop logging around model id, accuracy etc. 2025-08-22 13:03:01 +01:00
Tyeth Gundry
6de22b6d25 Add delete/nullptr check to begin (dtor not called) 2025-08-22 12:58:59 +01:00
tyeth
9fc7c60893 fix(as5600): change angle to be relative to 360 2025-08-21 16:34:28 +01:00
tyeth
fc71187a3f fix(as5600): correct fail logic in configureSensor() 2025-08-21 16:24:14 +01:00
tyeth
dda19cd00a fix(as5600): set angle correctly and log if no magnet 2025-08-21 16:14:24 +01:00
tyeth
78367af420 clang format 2025-08-21 15:24:56 +01:00
tyeth
0a43f57744 Add AS5600 2025-08-21 15:23:47 +01:00
tyeth
39a15fd584 clang 2025-08-20 17:21:19 +01:00
tyeth
40a7ecbce7 clean up object and stop infinite loops 2025-08-20 17:20:39 +01:00
tyeth
d3919890fb adjust read logic for MLX90632 if not continuous reads (offline/low-power mode?) 2025-08-20 16:25:18 +01:00
tyeth
79f372af44 fix(mlx90632): skip re-reading if recently read 2025-08-20 16:11:18 +01:00
tyeth
96fa8d2066 fix(partitions): update 4mb to No OTA in platformIO.ini 2025-08-20 15:44:36 +01:00
tyeth
dc5ff4ae9f clang-format 2025-08-20 14:54:32 +01:00
tyeth
32f85f7b47 add(mlx90632): alias B model to D driver 2025-08-20 14:45:45 +01:00
tyeth
28dff4e04d add(mlx90632): implement extended mode 2025-08-20 14:23:22 +01:00
tyeth
f007fe83ef refactor(mlx90632d): support extended range at init 2025-08-20 14:20:24 +01:00
tyeth
54ee1a632a refactor(mlx90632): use -d model distinction for medical 2025-08-20 14:13:45 +01:00
tyeth
e873237b5e add(driver): Add MLX90632 driver w/ debug info 2025-08-20 12:33:33 +01:00
Tyeth Gundry
e06ebab53a
Merge pull request #794 from tyeth/git-describe-fork-fix
fix(CI): make git version work on forks
2025-08-18 20:33:03 +01:00
tyeth
bc97ca02ad fix(CI): make git version work on forks 2025-08-18 19:40:22 +01:00
Tyeth Gundry
5e79a3725b
Merge pull request #791 from Monstertov/fix-typos
Spelling and grammar corrections in project files
2025-08-18 17:41:54 +01:00
Monstertov
68db0345da Resolved a minor textual error by changing 'supress' to 'suppress' 2025-08-14 00:44:50 +02:00
Monstertov
7f9bbb01ae Addressed typo: changed 'pubish' to 'publish' 2025-08-14 00:44:50 +02:00
Monstertov
a4c53f7727 Improved clarity by fixing typo: 'occured' corrected to 'occurred' 2025-08-14 00:44:50 +02:00
Monstertov
81c8b2697f Corrected a spelling mistake: 'occured' → 'occurred' 2025-08-14 00:44:50 +02:00
Monstertov
9b14c3932b Improved clarity by fixing typo: 'occured' corrected to 'occurred' 2025-08-14 00:44:50 +02:00
Monstertov
bfb5ef2e80 Corrected a spelling mistake: 'reseted' → 'reset' 2025-08-14 00:44:50 +02:00
Monstertov
255a958ec1 Improved clarity by fixing typo: 'detatch' corrected to 'detach' 2025-08-14 00:44:50 +02:00
Monstertov
7fd61698c2 Fixed typo in documentation/code: 'recieves' was replaced with 'receives' 2025-08-14 00:44:50 +02:00
Monstertov
0106eefbad Fixed typo in documentation/code: 'recieves' was replaced with 'receives' 2025-08-14 00:44:50 +02:00
Monstertov
c28334635d Corrected a spelling mistake: 'recieves' → 'receives' 2025-08-14 00:44:50 +02:00
Monstertov
1224fd01bc Addressed typo: changed 'recieved' to 'received' 2025-08-14 00:44:50 +02:00
Monstertov
4003fdc574 Addressed typo: changed 'identifer' to 'identifier' 2025-08-14 00:44:49 +02:00
Monstertov
e59d7913d4 Addressed typo: changed 'identifer' to 'identifier' 2025-08-14 00:44:49 +02:00
Monstertov
65476e8278 Corrected a spelling mistake: 'avaliable' → 'available' 2025-08-14 00:44:49 +02:00
Brent Rubell
114aa7aa7b
Merge pull request #790 from adafruit/add-fruitjam
Add Adafruit Fruit Jam - Mini RP2350 Computer
2025-08-13 15:56:52 -04:00
brentru
5e76adca6a Drop semver down to b110 2025-08-13 15:47:23 -04:00
Tyeth Gundry
f4788c0207
Merge pull request #789 from tyeth/ina228
Add INA228 to online mode (included as base lib for INA23x)
2025-08-13 20:39:07 +01:00
brentru
98f045e3c7 Addres @tyeth's review 2025-08-13 15:15:22 -04:00
Tyeth Gundry
315e4e8791 clang format and fix millivolts returned from bus voltage 2025-08-13 19:17:03 +01:00
brentru
80a6cdc6e0 Add Arduino_ prefix in boards.h 2025-08-13 14:13:33 -04:00
brentru
1cee8e8ca5 Add CI 2025-08-13 13:45:43 -04:00
brentru
5088cb6c8b Add AirLift 2025-08-13 13:42:31 -04:00
Tyeth Gundry
0b61e2b8a9 Add INA228 (included as base lib for INA23x) 2025-08-13 18:13:30 +01:00
brentru
74e2f53aa7 Working on FruitJam 2025-08-13 12:49:29 -04:00
brentru
0b6964b131 Fix for rp2350/rp2040 to use pstolzar 2025-08-12 16:46:03 -04:00
brentru
6304d73d88 Fix platformio.ini build script for pico sdks, weird and hardcoded 2025-08-12 16:37:25 -04:00
Tyeth Gundry
895bd13011
Merge pull request #765 from adafruit/ina238
Ina238 + 237 via a refactor of INA260 too.
2025-08-08 16:01:24 +01:00
Tyeth Gundry
029602abb0
Update build-clang-doxy.yml - switch back to main now confirmed same 2025-07-30 16:41:51 +01:00
Tyeth Gundry
ae5f4199ea
Update Wippersnapper.h - v110 2025-07-25 13:54:47 +01:00
Tyeth Gundry
fbacaa46aa
Update library.properties - v110 2025-07-25 13:53:59 +01:00
Tyeth Gundry
591f801f8a
Merge pull request #771 from kbsriram/add-dfrobot-beetle-esp32c3
Support for DFRobot Beetle ESP32C3.
2025-07-24 18:07:39 +01:00
tyeth
2e975746b5 Merge branch 'main' into ina238 2025-07-24 17:41:34 +01:00
tyeth
51dcd252bc Revert "Temporarily swap ci-arduino to ci-wippersnapper-2025-07-10-noota"
This reverts commit 51b9335df8.
2025-07-24 17:20:54 +01:00
tyeth
94bcecc020 Revert "Temporarily swap boards branch to migrate-4mb-to-esptool"
This reverts commit 860822a172.
2025-07-24 17:19:43 +01:00
Tyeth Gundry
10c9ef1542
Merge pull request #781 from adafruit/migrate-s3-boards
Migrate-s3-boards
2025-07-24 16:10:27 +01:00
tyeth
4dd956eee9 Adjust sleep retry to be >60s with fuzz 2025-07-23 20:49:01 +01:00
tyeth
ca3d5c7d19 Add error catching to tinyuf2 steps 2025-07-23 20:22:25 +01:00
tyeth
00ca0190f6 Make curl fail properly with bad http status codes 2025-07-23 19:10:55 +01:00
Tyeth Gundry
c7c007b6b9 Provide more info if tinyuf2 release fetch failure 2025-07-23 19:10:55 +01:00
Tyeth Gundry
d8595b215c Update version to 1.0.0-beta.109 2025-07-23 19:10:55 +01:00
Tyeth Gundry
81f43d589e Remove bootloader offsets as now in tinyuf2 flash_args file 2025-07-23 19:10:55 +01:00
Tyeth Gundry
6a98837c3c Reorder targets in esptool job by chip then alpha 2025-07-23 19:10:55 +01:00
Tyeth Gundry
effe76b2e1 Switch 4MB S3 boards to esptool job 2025-07-23 19:10:54 +01:00
Tyeth Gundry
8b02c9b910
Merge pull request #780 from adafruit/migrate-s2-boards
Migrate S2 boards to web-native-usb build task
2025-07-23 15:48:08 +01:00
tyeth
921527a9e2 Ensure build works without offsets before removal 2025-07-22 02:48:24 +01:00
tyeth
52edecfa07 Bump version to 108 2025-07-22 02:46:41 +01:00
tyeth
2667caf75f Migrate S2 boards to web-native-usb build task 2025-07-22 02:43:19 +01:00
Tyeth Gundry
c653e06fcf
Merge pull request #779 from adafruit/featherS2-migration
tinyuf2 build task changes (PR #774) plus Feather s2 migration
2025-07-21 20:20:58 +01:00
Tyeth Gundry
e0ccdc28fd Merge branch 'use_s3_tinyuf2_bins' into featherS2-migration 2025-07-18 21:43:00 +01:00
Tyeth Gundry
69cf749316 Split up tinyuf2 steps 2025-07-18 21:40:18 +01:00
Tyeth Gundry
714974ff13 JQ filter 2025-07-18 21:36:28 +01:00
Tyeth Gundry
0c08eddde0 Update version to 1.0.0-beta.107 2025-07-18 20:11:28 +01:00
Tyeth Gundry
01a99d9313 cleanup tinyuf2 downlaod + error handling 2025-07-18 20:10:19 +01:00
Tyeth Gundry
5964f2ee5b WIP: swap boards branch 2025-07-18 20:10:19 +01:00
Tyeth Gundry
61590ea1c0 Update tinyuf2 fetch process to use bootloaderBoardName 2025-07-18 20:10:19 +01:00
tyeth
0a757d6b8f Overwrite tinyusb boot preference 2025-07-18 20:10:19 +01:00
tyeth
b9746ad1c5 Copy bootloader/partition table files for flash_args 2025-07-18 20:10:19 +01:00
tyeth
9297c020ad Swap to using flash_args file for bin offsets 2025-07-18 20:10:19 +01:00
tyeth
17bc2a2c47 CI 2025-07-18 20:10:19 +01:00
tyeth
592c75abcd Correct XIAO tinyusb link 2025-07-18 20:10:19 +01:00
tyeth
df4d9163a6 Use tinyuf2 combined.bin as image base 2025-07-18 20:10:19 +01:00
Tyeth Gundry
3ed453636c Swap Feather ESP32-S2 to web-native-usb task 2025-07-18 20:09:32 +01:00
Tyeth Gundry
09e4a79ab1 cleanup tinyuf2 downlaod + error handling 2025-07-18 20:09:32 +01:00
Tyeth Gundry
26c6c32077 WIP: swap boards branch 2025-07-18 20:09:32 +01:00
Tyeth Gundry
7bf7357328 Update tinyuf2 fetch process to use bootloaderBoardName 2025-07-18 20:09:32 +01:00
tyeth
2fc427c908 Overwrite tinyusb boot preference 2025-07-18 20:09:32 +01:00
tyeth
451ac02e2e Copy bootloader/partition table files for flash_args 2025-07-18 20:09:32 +01:00
tyeth
3ad6500f61 Swap to using flash_args file for bin offsets 2025-07-18 20:09:31 +01:00
tyeth
87cea3a14d CI 2025-07-18 20:09:31 +01:00
tyeth
9f70757b9c Correct XIAO tinyusb link 2025-07-18 20:09:31 +01:00
tyeth
21144c0ce1 Use tinyuf2 combined.bin as image base 2025-07-18 20:09:31 +01:00
Tyeth Gundry
331c6c85ba
Merge pull request #778 from adafruit/pin-temp-lib
Pin to https://github.com/milesburton/Arduino-Temperature-Control-Lib
2025-07-18 20:08:19 +01:00
Tyeth Gundry
b45d08b0cd
make that v4.0.3 2025-07-18 19:27:08 +01:00
Tyeth Gundry
6d5c8c4a7b
pin to official release 4.0.3 not fork! 2025-07-18 19:25:05 +01:00
Tyeth Gundry
e6d7f40b7a
Got clone needs branch ref / fork
--branch pin_pid_fix https://github.com/tyeth/milesburton_Arduino-Temperature-Control-Library.git
2025-07-18 18:53:41 +01:00
Tyeth Gundry
f62527af5b
Pin to https://github.com/milesburton/Arduino-Temperature-Control-Library.git#456b2b3a79bc7b9b6ee60454d6511eb6a77aef81
Due to #777
2025-07-18 18:31:10 +01:00
Brent Rubell
f3c85efb53
Merge pull request #776 from adafruit/bump-semver-b106
Bump Semver for SSL Cert Merge
2025-07-17 09:46:33 -04:00
brentru
a6e23a95c4 bump version for ssl cert 2025-07-17 09:33:18 -04:00
Brent Rubell
5f8c3ac364
Merge pull request #770 from adafruit/update-fingerprint-2025
Update SSL Fingerprint for 2025
2025-07-16 10:12:56 -04:00
Tyeth Gundry
5513004820
Merge pull request #772 from adafruit/tyeth-xiao-board-name
Update Wippersnapper_Boards.h
2025-07-16 13:20:13 +01:00
Tyeth Gundry
c21ffb7512
Update Wippersnapper_Boards.h 2025-07-16 12:45:15 +01:00
KB Sriram
002cdfd6da Update preprocessor defines for arduino builds. 2025-07-15 06:46:37 -07:00
KB Sriram
0489a41130 Update CI flows to build DFRobot Beetle esp32c3. 2025-07-14 14:23:16 -07:00
brentru
19bb4016ff Update SSL fingerprint on esp8266 iface 2025-07-14 16:14:42 -04:00
KB Sriram
2091034df0 Support for DFRobot Beetle ESP32C3.
See https://github.com/adafruit/Wippersnapper_Boards/issues/195
2025-07-13 16:18:47 -07:00
Tyeth Gundry
398fb7d8b3
Merge branch 'main' into ina238 2025-07-11 22:52:14 +01:00
Tyeth Gundry
b637366898
Merge pull request #764 from adafruit/xiao-s3
Xiao s3
2025-07-11 22:50:44 +01:00
Tyeth Gundry
51b9335df8 Temporarily swap ci-arduino to ci-wippersnapper-2025-07-10-noota 2025-07-11 18:05:50 +01:00
Tyeth Gundry
860822a172 Temporarily swap boards branch to migrate-4mb-to-esptool 2025-07-11 17:36:04 +01:00
Tyeth Gundry
29ef4c20d9 make esptool not pinned 2025-07-11 17:32:18 +01:00
Tyeth Gundry
3308d7268f Use latest esptool for Cx builds 2025-07-11 17:06:18 +01:00
Tyeth Gundry
08fa3ac978 Migrate 4MB flash devices to No OTA esptool install method 2025-07-11 17:01:00 +01:00
Tyeth Gundry
a4723b7ff2 rename merge_bin to merge-bin 2025-07-11 16:43:34 +01:00
Tyeth Gundry
f95ec8d84d Update flash param names for newest esptool 2025-07-11 16:27:45 +01:00
Tyeth Gundry
c9e728c0a0 Merge branch 'upstream-main' into ina238 2025-07-11 16:03:51 +01:00
Tyeth Gundry
9a8033638c
Merge pull request #769 from tyeth/omron-D6T
Omron D6T thermal IR sensor (I2C)
2025-07-11 15:57:42 +01:00
Tyeth Gundry
ba22d203d3 Bump version for release v1.0.0-beta.105 2025-07-11 15:54:51 +01:00
Tyeth Gundry
1c50e12d89 D6T-1A: Move initialisation values to constructor 2025-07-11 15:47:01 +01:00
Tyeth Gundry
a1cdc0142f Add Wire include back to I2C Driver (for cpp include chain) 2025-07-11 15:45:07 +01:00
Tyeth Gundry
50b924c937 Cleanup header docstrings, and remove <wire.h> (breaks pio) 2025-07-11 15:41:15 +01:00
Tyeth Gundry
00deb173a8 Cleanup includes and unnecessary prints 2025-07-11 15:17:14 +01:00
Tyeth Gundry
fe32ce6170 clang format 2025-07-11 14:40:45 +01:00
Tyeth Gundry
999bd73547 Merge remote-tracking branch 'upstream/main' into omron-D6T 2025-07-11 13:28:12 +01:00
Tyeth Gundry
3e2f7e4043 Merge remote-tracking branch 'upstream/main' into ina238 2025-07-11 13:18:35 +01:00
Tyeth Gundry
9695762e75 Revert "Test other task for xiao"
This reverts commit ebd3938ae9.
2025-07-10 21:16:41 +01:00
Tyeth Gundry
0d6a5538b0 fix if defined for xiao 2025-07-10 21:16:24 +01:00
Tyeth Gundry
ebd3938ae9
Test other task for xiao 2025-07-10 20:29:28 +01:00
Tyeth Gundry
ec4e48bb86 CI: Fix continue-on-error usage 2025-07-10 19:28:57 +01:00
Tyeth Gundry
a8be947ec5 Enable PSRAM and kick CI 2025-07-10 19:23:12 +01:00
Tyeth Gundry
47bcf53134 Move XIAO S3 to zip+uf2 build task 2025-07-10 19:08:45 +01:00
tyeth
71f829bbdc Correct Board ID for XIAO S3 2025-07-10 19:07:51 +01:00
tyeth
bc99adf69b 8MB Partitions 2025-07-10 19:07:08 +01:00
tyeth
305cc45680 Build assets for XIAO ESP32S3 2025-07-10 19:07:08 +01:00
tyeth
f95481c52b Add Seeed Studio XIAO ESP32S3 2025-07-10 19:07:07 +01:00
Tyeth Gundry
13aa6419e6
Merge pull request #763 from adafruit/add-s3-devkitc-1-n8
Add s3 devkitc 1 n8
2025-07-10 18:58:37 +01:00
Tyeth Gundry
6ccd81433a
Switch board repo back to main 2025-07-10 18:57:30 +01:00
Tyeth Gundry
13bfecf33a
Merge pull request #760 from adafruit/sh1107
Add SH1107 for 128x64/32 OLED featherwings
2025-07-09 20:37:28 +01:00
Tyeth Gundry
c3bc7a83d6 Release version 1.0.0-beta.104 2025-07-09 20:36:55 +01:00
Tyeth Gundry
c5b8706980 clang format? 2025-07-09 20:07:02 +01:00
Tyeth Gundry
7f0f1a2df3 clang format 2025-07-09 18:37:12 +01:00
Tyeth Gundry
1e313842b6 clang format again 2025-07-09 17:27:52 +01:00
Tyeth Gundry
e0d9da4d47 Remove non default args to SSD1306 ctor 2025-07-09 17:13:01 +01:00
Tyeth Gundry
0c55b0320d Rename OLED featherwings 2025-07-09 17:11:04 +01:00
Tyeth Gundry
09c8eb0387 Remove splash screen display + delay 2025-07-09 17:08:41 +01:00
Tyeth Gundry
e632bc6373 clang format 2025-07-09 17:00:25 +01:00
Tyeth Gundry
651395638d PR Feedback 2025-07-09 15:12:43 +01:00
Tyeth Gundry
7b83905e55
Add auto created merged bin to web-native-usb assets 2025-07-09 14:07:40 +01:00
Brent Rubell
a89218cae1
Merge pull request #575 from adafruit/funhouse-display-config-recreate
Regenerate displayconfig.json if erroneous
2025-07-08 15:18:44 -04:00
tyeth
02223db340 clang format 2025-07-08 19:08:26 +01:00
tyeth
4b2859d6fb add rotation to ConfigureSSD1306 func for SH1107 2025-07-08 19:08:26 +01:00
tyeth
d46f29c84a Separate out rotation for future usage and add notes 2025-07-08 19:08:26 +01:00
tyeth
d97123bf75 Set Rotation for 128x64 OLED featherwing 2025-07-08 19:08:26 +01:00
tyeth
def13e627c SSD1306: don't call begin again on i2c (2nd bus) 2025-07-08 19:08:26 +01:00
tyeth
b93d58203d Add 32x64 SSD1306 2025-07-08 19:08:26 +01:00
tyeth
3d3d44b5ab Add 64x32 OLEDs (SH1107) 2025-07-08 19:08:16 +01:00
Tyeth Gundry
cdc6588e57 Add 128x32 OLED featherwings as SSD1306 2025-07-08 19:07:55 +01:00
Tyeth Gundry
f7ec0e5d4a
reset bootloader offset to 0x0 for esp32s3 devkit 2025-07-08 15:59:15 +01:00
tyeth
0bdbc05092 Add BSP comment for funhouse 2025-07-08 14:35:08 +01:00
Tyeth Gundry
aa2d7d40c3 Match Arduino-CLI partitions for S3 devkit 2025-07-08 14:30:48 +01:00
Tyeth Gundry
7f491da2f8 Update offset for esp32s3 devkit 2025-07-08 14:29:38 +01:00
tyeth
db31909eb0 PR feedback, relocate retry out of parseDisplayConfig 2025-07-08 12:30:04 +01:00
Tyeth Gundry
12db602a62 Regenerate displayconfig.json if erroneous 2025-07-08 12:30:04 +01:00
Tyeth Gundry
d109ea6905 feather 8mb partition 2025-07-08 12:08:38 +01:00
Tyeth Gundry
5fa3e2dc0c WIP: Swap boards branch to PR 2025-07-07 23:34:19 +01:00
Tyeth Gundry
3a9137480d Move esp32s3 devkitc to zip build task 2025-07-07 22:46:08 +01:00
tyeth
3be45da123 tested on win11 with 3.13 BSP, tinyUSB 3.7.0, and no rename_usb_config 2025-07-05 13:57:59 +01:00
tyeth
ebf5e40edd Update build flags for esp32s3 devkit 2025-07-04 18:59:12 +01:00
tyeth
b047125981 8MB partitions for 8MB boards 2025-07-02 23:43:52 +01:00
Tyeth Gundry
44024f6d15 Add missing private pointer for D6T-1A 2025-07-02 20:12:44 +01:00
Tyeth Gundry
f7c094c759 D6T: specify cell/pixel for temp reading 2025-07-02 20:05:13 +01:00
Tyeth Gundry
275bedeec7 D6T: Floats and Model name swap 2025-07-02 19:47:40 +01:00
Tyeth Gundry
172646a55a Correct D6T model name and privates usage 2025-07-02 19:31:57 +01:00
Tyeth Gundry
cfdbfd6c79 clang-format 2025-07-02 18:34:21 +01:00
Tyeth Gundry
4e9d959004 D6T: Swap to single read for both metrics 2025-07-02 18:33:27 +01:00
Tyeth Gundry
b35c2c2e56 Add OMRON D6T thermal sensor 2025-07-02 18:23:48 +01:00
tyeth
b4bf4362a4 QTPY S3 No PSRAM uses 8MB partition 2025-07-01 15:05:41 +01:00
tyeth
1c6813f529 Resolve dependency chain - Split INA260 + 2XX to cpp files, forward declare INA classes to hide enums from each other 2025-06-30 14:14:37 +01:00
tyeth
b3915857c8 Add INA237 + INA238 2025-06-29 23:33:28 +01:00
tyeth
af62bccf0d Specify 8MB partition for S3 feather (no PSRAM) 2025-06-29 21:44:05 +01:00
Tyeth Gundry
f6af170e60 Add optional psram for esp32s3 dev 2025-06-26 22:34:48 +01:00
Tyeth Gundry
92d769e321 Correct ifdef for s3 devkit 2025-06-26 22:33:36 +01:00
Tyeth Gundry
7ce619455d Add ESP32S3 build target in CI 2025-06-26 22:04:48 +01:00
Tyeth Gundry
9a144fdb01 Add ESP32S3 DevKitC-1 (N8 with 8MB flash and no PSRAM) 2025-06-26 22:03:41 +01:00
Tyeth Gundry
ab3284ecb1
Add SH1107 for 128x64/32 OLED featherwings 2025-06-19 16:30:53 +01:00
Brent Rubell
13d4ca9368
Merge pull request #759 from adafruit/fix-i2c-display-cr
Patch - \r handling for I2C Displays
2025-06-18 12:43:35 -04:00
brentru
b9a33a7397 Fix for SSD1306 2025-06-18 12:31:15 -04:00
brentru
159cf772b5 Fix again \r not showing 2025-06-17 17:06:14 -04:00
brentru
ed75830d68 Show non japanese set for / 2025-06-17 16:44:20 -04:00
brentru
6333e8e8d2 Fix \r display 2025-06-17 16:37:00 -04:00
brentru
e5a3acfb39 \r\n sequence escape 2025-06-17 13:52:21 -04:00
brentru
cb65ab35bb Patch #2 2025-06-17 13:37:49 -04:00
brentru
e2225f53e4 Patch - \r handling 2025-06-17 12:21:36 -04:00
brentru
4494e3ea13 Bump semver to b103 2025-06-17 11:28:23 -04:00
Brent Rubell
b06aea09f4
Update library.properties 2025-06-17 11:26:59 -04:00
Brent Rubell
02ace5cf52
Merge pull request #751 from adafruit/api-v1-add-i2c-output
[API v1]: Add support for I2C Output Components
2025-06-17 11:20:57 -04:00
brentru
d784e8a7ca Clang 2025-06-09 11:44:54 -04:00
brentru
dd97c84df2 Match 64972ad..1786350 2025-06-09 11:24:59 -04:00
brentru
5c61a83323 Add 20x4 2025-06-09 11:00:08 -04:00
brentru
67b851fb7b Fix - Chardisplay 16x2 2025-06-09 10:56:07 -04:00
brentru
6e9ce5cbc3 Fix - degree symbol on 7seg display 2025-06-06 13:55:10 -04:00
brentru
67abbc6cdf Fix - do not publish i2c output write back to io, there is no matching resp! 2025-06-06 12:47:35 -04:00
brentru
6bf81185f5 7seg- fix right justification bug, max chars 2025-06-06 12:37:06 -04:00
Tyeth Gundry
3eed1bcb16
Merge pull request #756 from adafruit/sparkle-motion-stick
Sparkle motion stick
2025-06-06 16:29:48 +01:00
brentru
050216d0eb alphanum - build degree symbol out of segement raw bitmask 2025-06-05 16:23:24 -04:00
brentru
eed66c7984 clear on ctor dtor 2025-06-05 14:59:13 -04:00
brentru
964760ad96 Add large OLED 2025-06-05 14:33:28 -04:00
brentru
6e7daf9027 fix SSD1306 bugs 2025-06-05 14:30:25 -04:00
tyeth
7c674fa52a Set funhouse to use Adafruit SDfat fork 2.2.54 2025-06-05 16:58:10 +01:00
tyeth
d7008d9cb0 Add build asset .generate and .skip files 2025-06-03 21:36:32 +01:00
tyeth
f544a7c5ed Bump release version to beta.102 2025-06-03 21:00:41 +01:00
tyeth
d8727d7075 Add Sparkle Motion Stick 2025-06-03 21:00:26 +01:00
Tyeth Gundry
d0463bf3b6
Merge pull request #752 from adafruit/fix-duty-cycle
Fix LEDC PWM DutyCycle
2025-05-23 20:08:20 +01:00
Tyeth Gundry
564191c4eb Bump version to 1.0.0-beta.101 2025-05-23 19:57:27 +01:00
Tyeth Gundry
bb0d40644a Clang-format PWM fix 2025-05-23 19:56:49 +01:00
brentru
486422c821 Fix build error 2025-05-21 17:03:08 -04:00
brentru
ab82347fc2 Attempt to fix the AnalogWrite issue 2025-05-21 17:00:32 -04:00
brentru
86896852e4 Turn display off before dtor'ing 2025-05-21 12:27:37 -04:00
brentru
9e1d67722c Doxygen 2025-05-20 14:52:28 -04:00
brentru
c4c0fcdb26 Add deps.! 2025-05-20 14:36:14 -04:00
brentru
fa0b3c6555 Put back auto-config scaffolding 2025-05-20 14:34:19 -04:00
brentru
47afeb7b7f Works on both display sizes 2025-05-20 14:30:09 -04:00
brentru
a86ead8457 Test on 128x32, new PBs to match 8e89fdf 2025-05-20 11:29:03 -04:00
brentru
8529924d16 Looking into SSD1306 not writing properly 2025-05-19 16:49:05 -04:00
brentru
ff4a4167d0 Add Write Msg 2025-05-19 15:55:18 -04:00
brentru
c1d96985b5 Integrate PR a1a0ab6..8e89fdf 2025-05-19 15:19:15 -04:00
brentru
092c796ed1 Fully integrate SSD1306 driver, missing write func 2025-05-19 14:42:56 -04:00
brentru
0e19aa0675 add ssd driver 2025-05-19 14:23:32 -04:00
brentru
c281ed8971 push clang 2025-05-16 17:10:47 -04:00
brentru
6202ecac62 Fix LED matrix write 2025-05-16 16:58:42 -04:00
brentru
c470fa3093 Tie in enable/disable for charlcd writes 2025-05-16 16:53:47 -04:00
brentru
3ae7029a51 Add new Pbs to match 6c842d81bf332dfc0fbfef4d2045c2d934e467f3 2025-05-16 15:58:21 -04:00
brentru
420d319cc6 address @tyeth review 2025-05-16 10:55:56 -04:00
brentru
a4d9e9d6eb clang again 2025-05-15 15:20:27 -04:00
brentru
f6c406ab86 Clang 2025-05-15 14:50:28 -04:00
brentru
00bb2bf62d Add 7seg driver 2025-05-15 11:28:58 -04:00
brentru
645fd4d77c Add CharLCD 2025-05-15 11:12:04 -04:00
brentru
cc3a3c5095 Add write commands for quadalphanum 2025-05-14 16:55:59 -04:00
brentru
5265e25462 compiles OK 2025-05-14 13:05:59 -04:00
brentru
d25aba8e72 bring in new PBs, new drivers 2025-05-14 12:53:21 -04:00
Tyeth Gundry
bcf1d08d58
Merge pull request #746 from adafruit/745-update-v1-codebase-to-use-latest-release-of-pm25-library-is_pm1006-flag
Update PM2.5 begin_UART call for PM1006 (PM25AQI v2.0.0)
2025-05-12 17:37:40 +01:00
Tyeth Gundry
f92df0a2c9 Update PM2.5 begin_UART call for PM1006 (PM25AQI v2.0.0) 2025-05-09 12:29:36 +00:00
Tyeth Gundry
3fa0d82d66
Update Wippersnapper.h - bump version to 1.0.0-beta.100 2025-04-04 18:58:54 +01:00
Tyeth Gundry
88f2a87b19
Update library.properties - bump version to 1.0.0-beta.100 2025-04-04 18:57:54 +01:00
Tyeth Gundry
f1e608691b
Merge pull request #718 from adafruit/add-INA260
Add INA260
2025-04-04 17:29:55 +01:00
tyeth
e50a1648a9 Add INA260 2025-04-04 00:38:53 +01:00
Tyeth Gundry
8e5bf4f798
Merge pull request #715 from adafruit/back-to-upstream-SPIFlash
Revert "use brentru SPIFLash fork"
2025-03-18 17:05:00 +00:00
tyeth
e18d7cb4ae Revert "use brentru SPIFLash fork"
This reverts commit cd5e7e01fb.
2025-03-18 16:45:57 +00:00
Brent Rubell
9c6ee194d4
Merge pull request #714 from adafruit/SCD-pointers-v98-fix
SCD-pointers-v98-fix
2025-03-14 10:42:32 -05:00
tyeth
5658c88d1f Correct SCD30 data check 2025-03-14 15:08:31 +00:00
tyeth
1f69fde777 Update to version 1.0.0-beta.99 2025-03-14 14:50:29 +00:00
tyeth
2bbdc1edae Fix event pointer usage for SCD sensors 2025-03-14 14:49:36 +00:00
Tyeth Gundry
31eed58731
Merge pull request #712 from adafruit/fix-i2c-scan-issue
Fix: I2C Scan on ESP32-S2
2025-03-11 21:41:00 +00:00
brentru
322c72e14b remove setclock call 2025-03-11 15:46:19 -04:00
brentru
6b3996ae57 track addresses 2025-03-11 11:49:46 -04:00
brentru
e0bb91f422 fix @tyeth reivew 2025-03-10 16:03:11 -04:00
brentru
6401b504b5 dont always print address, reorder conditional for performance boost marginal 2025-03-10 15:38:14 -04:00
brentru
89873252d4 fixing scan issue.. 2025-03-10 13:36:43 -04:00
Brent Rubell
0218e061ef
Merge pull request #711 from adafruit/revert-forked-deps
Revert SDFat Forked Dependency for Pico
2025-03-07 13:20:03 -06:00
brentru
cd5e7e01fb use brentru SPIFLash fork 2025-03-07 14:08:38 -05:00
brentru
a360a92054 install sdfat first in order? 2025-03-07 13:48:31 -05:00
brentru
80f1d87973 put back direct clone for rp2x 2025-03-07 13:39:20 -05:00
brentru
fde128ca3a fork only 2025-03-07 13:17:34 -05:00
brentru
3b20073662 try workflow? 2025-03-07 13:02:05 -05:00
brentru
25f28b4fdf revert sdfat 2025-03-07 10:09:19 -05:00
Brent Rubell
afd0e86d19
Merge pull request #708 from adafruit/fix-neopixel-bug-c6
Fix Issues: Pixel and Status Pixel
2025-03-07 09:07:47 -06:00
Tyeth Gundry
0bf00bcafa
Merge pull request #709 from tyeth/scd30-scd4x-others-poll-min-1sec
Scd30 scd4x others poll min 1sec
2025-03-07 15:06:02 +00:00
Tyeth Gundry
16c6723d3c clang format 2025-03-07 01:56:41 +00:00
Tyeth Gundry
ba1f09fde9
Merge branch 'main' into scd30-scd4x-others-poll-min-1sec 2025-03-07 01:39:59 +00:00
Tyeth Gundry
272c1fc5f8 style changes 2025-03-07 01:01:37 +00:00
Tyeth Gundry
712e434a87
Merge pull request #694 from adafruit/local-non-zero-initialised
Update I2C initialisation of locals
2025-03-06 20:15:17 +00:00
brentru
47f306c311 fix ser 2025-03-06 15:03:15 -05:00
brentru
393fffa145 Reflect using dtor instead 2025-03-06 15:01:50 -05:00
Tyeth Gundry
bcd3bd7288 Update to Google CPP style guide 2025-03-06 18:39:02 +00:00
Tyeth Gundry
d79457f92d
Merge pull request #695 from adafruit/add-lps28
Add LPS28DFW
2025-03-05 22:27:42 +00:00
Tyeth Gundry
547d46cf1b
Merge branch 'main' into add-lps28 2025-03-05 22:26:30 +00:00
Tyeth Gundry
628b98a411
Merge pull request #690 from adafruit/pico2w-ds18b20
fix: timeout datatype in haltError
2025-03-05 22:20:56 +00:00
Tyeth Gundry
d4e88a39be Update SEN6x to min 1second polling 2025-03-05 22:14:33 +00:00
Tyeth Gundry
093d51779f Refactor SEN5x to minimum poll period 1sec 2025-03-05 22:02:39 +00:00
Tyeth Gundry
722a41d3fb Correct formattiing 2025-03-05 21:44:39 +00:00
Tyeth Gundry
66fe637443 Update SCD4x to sensor event types + zero inits 2025-03-05 21:33:03 +00:00
Tyeth Gundry
39971499f2 Add minimum poll interval of 1second to SCD4x/SCD30 2025-03-05 21:21:30 +00:00
brentru
c6f15b5f1a Remove RMT header 2025-03-05 15:11:16 -05:00
brentru
fce17a3c38 Fix for C6 2025-03-05 14:53:12 -05:00
Tyeth Gundry
dfa628fea9 Swap to ints for haltError 2025-03-05 19:15:53 +00:00
tyeth
f64833ad74 fix: timeout datatype in haltError 2025-03-05 19:09:51 +00:00
brentru
53c95ace17 Look at C6 bug 2025-03-04 16:46:21 -05:00
Brent Rubell
e92e740192
Merge pull request #706 from brentru/fix-sdfat-conflict
Fix SDFat Conflict for Pico
2025-03-03 08:39:22 -06:00
brentru
abe3c9756b Add GFX 2025-02-28 16:21:05 -05:00
brentru
e2ae5a0494 Add sdfat 2025-02-28 16:08:50 -05:00
brentru
987fd605df Return to original fork 2025-02-28 16:02:33 -05:00
brentru
e77cec2730 Sensirion Core 2025-02-28 15:52:41 -05:00
brentru
e694a935ee unified sensor 2025-02-28 15:46:18 -05:00
brentru
a7a10a3d6f Add adafruit_sensor 2025-02-28 15:42:12 -05:00
brentru
7dea9042e3 fix busdevice 2025-02-28 15:39:41 -05:00
brentru
8329d2531f list out 2025-02-28 14:56:21 -05:00
brentru
b307521a77 bump ci 2025-02-28 14:49:04 -05:00
brentru
3f827eb080 Link locally, use branch 2025-02-28 14:46:55 -05:00
brentru
26e3b6490a link header 2025-02-28 14:40:41 -05:00
brentru
e187db7d91 add fork file 2025-02-28 14:37:57 -05:00
Tyeth Gundry
20d936d10d
Switch LPS28 to full range 2025-02-25 21:33:31 +00:00
Tyeth Gundry
abf14e0252
Update LPS28DFW to use extreme range of 260-4060hPa
param mode true for FS_MODE=1 (1/2048 hPa/LSB), false for FS_MODE=0 (1/4096 hPa/LSB)
2025-02-19 21:40:21 +00:00
Tyeth Gundry
929eb9a83a
Update WipperSnapper_I2C_Driver_LPS28DFW.h 2025-02-19 21:08:47 +00:00
Brent Rubell
250cbf0106
Update README.md 2025-02-19 14:29:41 -05:00
tyeth
df71485155 Fix: use correct short name for LPS28DFW 2025-02-19 14:36:49 +00:00
tyeth
df2b6b06f4 LPS28DFW: log reasons for failures 2025-02-19 14:30:10 +00:00
tyeth
36a4c89fce Add LPS28DFW 2025-02-19 13:28:27 +00:00
tyeth
923428aa6c Update I2C initialisation of locals 2025-02-14 16:34:27 +00:00
Brent Rubell
7ab9e78834
Merge pull request #689 from tyeth/scd4x-header-rename
Update WipperSnapper_I2C_Driver_SCD4X.h - renamed include
2025-02-13 15:43:37 -06:00
tyeth
b91a38752a clang format ifdefs 2025-01-31 15:57:41 +00:00
tyeth
c2fac61aae Update begin and getDataReadyStatus 2025-01-31 15:44:43 +00:00
tyeth
861d67745d Fix multiple ifdef warning 2025-01-31 15:38:39 +00:00
Tyeth Gundry
417009a564
Update WipperSnapper_I2C_Driver_SCD4X.h - update instantiation 2025-01-31 15:07:53 +00:00
Tyeth Gundry
fac20289eb
Update WipperSnapper_I2C_Driver_SCD4X.h - update class name 2025-01-31 14:52:38 +00:00
Tyeth Gundry
9c9a98dd9b
Update WipperSnapper_I2C_Driver_SCD4X.h - renamed include 2025-01-31 14:40:41 +00:00
Tyeth Gundry
4f1d110436
Update Wippersnapper.h - bump version to 1.0.0-beta.97 2025-01-24 19:42:19 +00:00
Tyeth Gundry
c17db48512
Update library.properties - bump version to 1.0.0-beta.97 2025-01-24 19:41:40 +00:00
Tyeth Gundry
19dd739b82
Merge pull request #685 from adafruit/sparkle-motion-mini
Add Sparkle motion mini
2025-01-23 22:05:03 +00:00
Tyeth Gundry
8c1d1c0d8e
Bump version to 1.0.0-beta.96 2025-01-23 20:04:58 +00:00
tyeth
13e8800825 Remove PSRAM from Sparkle Motion Mini 2025-01-23 18:27:47 +00:00
Tyeth Gundry
37b339e941
Add .test.skip and .generate files for Mini Sparkle Motion 2025-01-22 00:02:58 +00:00
Tyeth Gundry
7ce32d8511
Add Mini Sparkle Motion board 2025-01-22 00:00:08 +00:00
Tyeth Gundry
a0c8c75919
Merge pull request #682 from adafruit/staging-ssl-jan2025
Swap staging root certificate to ISRG Root X1
2025-01-15 14:25:05 +00:00
tyeth
64ce6eb922 Swap staging root certificate to ISRG Root X1 2025-01-14 21:00:46 +00:00
Tyeth Gundry
a744b2fe17
Update library.properties - bump version to 1.0.0-beta.95 2025-01-14 19:41:35 +00:00
Tyeth Gundry
b59c15e8e8
Update Wippersnapper.h - bump version to 1.0.0-beta.95 2025-01-14 19:41:15 +00:00
Tyeth Gundry
d3cd109059
Merge pull request #681 from adafruit/fixed-sen66
Fixed SEN66 CO2 overflow


Merges #675
Closes #675
Fixes #678
2025-01-14 19:30:55 +00:00
Tyeth Gundry
d9455c30e0
Merge pull request #680 from adafruit/delete_unused_boards
Delete unused boards
2025-01-14 19:15:05 +00:00
tyeth
a5c4811a3b Drop SAMD21 builds from CI dependencies 2025-01-10 18:27:33 +00:00
Tyeth Gundry
519b0ddf90 Update build-clang-doxy.yml - drop nano-33-iot + mkrwifi1010 2025-01-10 18:27:18 +00:00
tyeth
3504dc952e clang-format 2025-01-10 18:20:39 +00:00
tyeth
044029caa0 Update copyrights and fix CO2 to catch overflow not NAN
Closes SEN66 returns 65535 for first data read, better to skip first value than mess up all the graphs #678
2025-01-10 18:17:13 +00:00
tyeth
0f65b97ad5 Drop SAMD21 builds from CI dependencies 2025-01-10 17:48:41 +00:00
tyeth
fe2eae61ba Remove Nano-33-IOT and MKRWIFI1010 boards 2025-01-10 17:39:38 +00:00
Tyeth Gundry
70cf730454
Update build-clang-doxy.yml - drop nano-33-iot + mkrwifi1010 2025-01-10 17:09:25 +00:00
Martin Ebner
8086b44129 fixed typo in include 2024-12-23 09:15:31 +01:00
Martin Ebner
0957f827bb typo in library.properties 2024-12-23 00:54:39 +01:00
Martin Ebner
9df4d89aa1 add to library and WipperSnapper_I2C 2024-12-23 00:46:21 +01:00
Martin Ebner
aba5d513f8 derived from sen5x driver 2024-12-23 00:32:58 +01:00
tyeth
570c166691 Merge remote-tracking branch 'upstream/uat-xmas2024'
Closes #661
Closes #664
Closes #668
Closes #670
Closes #672
Closes #673
2024-12-21 02:39:20 +00:00
tyeth
0923b82715 20s wifi attempt timeout for PicoW/2W 2024-12-21 02:36:35 +00:00
tyeth
4c0febc001 Merge remote-tracking branch 'upstream/vcnl4200' into uat-xmas2024 2024-12-20 23:22:38 +00:00
tyeth
f46c204285 Merge remote-tracking branch 'tyeth/tinyusb-reattach-print-reset-time' into uat-xmas2024 2024-12-20 23:21:40 +00:00
tyeth
418e785c54 Merge remote-tracking branch 'upstream/status_led_brightness' into uat-xmas2024 2024-12-20 23:21:18 +00:00
tyeth
8b62a09914 Merge remote-tracking branch 'tyeth/WDT-RP2040-enable-after-wifi-connect' into uat-xmas2024 2024-12-20 23:21:01 +00:00
tyeth
bcd502d941 Merge remote-tracking branch 'upstream/pico2w' into uat-xmas2024 2024-12-20 23:19:36 +00:00
tyeth
e78470e4c7 Merge remote-tracking branch 'tyeth/wireless-rssi-sorting' into uat-xmas2024 2024-12-20 23:14:46 +00:00
tyeth
0de83b9925 Always show Wifi scan results (RSSI, channel, bssid) 2024-12-20 18:53:52 +00:00
Tyeth Gundry
9af386754d
Merge pull request #674 from adafruit/ci-nano-pb-failures
Check NanoPB failures and restore cache if needed
2024-12-20 18:11:47 +00:00
tyeth
24cf18051b Correct verbiage for RP2040 rather than Pico 2024-12-20 18:10:20 +00:00
tyeth
86936f2acf Move enableWDT to after wifi connection for all platforms 2024-12-20 18:08:47 +00:00
Tyeth Gundry
952ef3ce60
Check NanoPB failures and restore cache if needed 2024-12-20 17:50:17 +00:00
tyeth
34cd2bd7d9 Add VCNL4200 2024-12-19 22:38:44 +00:00
tyeth
b594a3b872 Add custom WDT timeout for ESP8266 2024-12-19 18:25:55 +00:00
tyeth
f87a2083ac Swap WDT timeout to milliseconds in haltError to match Arch differerences 2024-12-19 17:43:12 +00:00
tyeth
04dbf36da5 Parameterise the reset timeout for haltError 2024-12-19 17:15:46 +00:00
tyeth
9ddb1206d3 Use defined default + rem 2nd check of brightness 2024-12-19 17:02:40 +00:00
tyeth
2475f33072 RP2040 WDT=8.3secs - enable after wifi connect 2024-12-17 23:36:39 +00:00
tyeth
04f1c3cce1 USB Reattach fixes + Specify reset time remaining + secrets != 0xFF 2024-12-17 23:09:16 +00:00
tyeth
45461242f2 Report BSSID's to help distinguish wifi networks 2024-12-17 22:34:41 +00:00
tyeth
53ca34914f Stop blinding status lights 2024-12-17 22:08:19 +00:00
tyeth
e92cd181ec Add Pico2W definition to boards list + fix LEDs 2024-12-17 19:15:15 +00:00
tyeth
1ceafabf7a Swap RP2040 CI-Arduino branch back to ci-wippersnapper 2024-12-17 19:15:15 +00:00
tyeth
0f91cb9cfb Swap back to official repos since upstreaming 2024-12-17 19:15:15 +00:00
tyeth
9b8479425c Add .test.skip/.generate and CI test 2024-12-17 19:15:15 +00:00
tyeth
8ea03941be Add tinyusb to pico2w non debug target 2024-12-17 19:15:15 +00:00
tyeth
99ece2f7d3 Add RPi Pico2W build 2024-12-17 19:15:15 +00:00
Brent Rubell
16bc28af11
Merge pull request #667 from adafruit/patch-usb-msc-bug
Fix USB-MSC not re-attaching
2024-12-10 12:24:25 -06:00
brentru
2409c85e29 Address feedback 2024-12-10 13:07:06 -05:00
brentru
0a3e82204a re-attach USB msc bug 2024-12-09 11:53:24 -05:00
Tyeth Gundry
b5dd8ed474
Merge pull request #665 from mikeysklar/bme68x-pressure-units
bme68x pressure units
2024-12-06 18:35:26 +00:00
Mikey Sklar
3a66b011b0 bme68x pressure units
bme68x is show units as pascals.
2024-12-06 10:07:40 -08:00
Tyeth Gundry
b75aae3e2d
Merge pull request #662 from tyeth/wifi-testvar-fix
Update ConfigJson.cpp - set default password to blank and ssid to unset-ssid
2024-11-21 18:19:19 +00:00
Tyeth Gundry
ecc98848f2
Update Wippersnapper.h - bump version to 1.0.0-beta.94 2024-11-21 18:17:06 +00:00
Tyeth Gundry
b3b81e4944
Update library.properties - bump version to 1.0.0-beta.94 2024-11-21 18:16:32 +00:00
Tyeth Gundry
5fee86b9f0
Update ConfigJson.cpp - set default password to blank and ssid to unset-ssid 2024-11-21 17:46:25 +00:00
Tyeth Gundry
e898d1b51d
Update Wippersnapper.h - bump version to 1.0.0-beta.93 2024-11-15 20:13:46 +00:00
Tyeth Gundry
a1a4ff2ed4
Update library.properties - bump version to 1.0.0-beta.93 2024-11-15 20:08:42 +00:00
Tyeth Gundry
353b036d22
Merge pull request #652 from adafruit/add-nanopb-cache
Add caching for nanopb
2024-11-15 17:52:13 +00:00
Tyeth Gundry
0e9993b125
Merge pull request #635 from tyeth/use_analogReadMilliVolts-for-esp32-scaledAnalogRead-false
Use analogReadMilliVolts for esp32 and update hysteresis
2024-11-15 17:22:06 +00:00
Tyeth Gundry
18f08eb31a
Merge pull request #660 from thussaiththelaw/main
Added aht21 sensor to the drivers
2024-11-15 15:12:02 +00:00
tyeth
9c6187f41a Correct hysteresis and stop overflow 2024-11-14 15:25:50 +00:00
thussaiththelaw
0411093a49
Added aht21 sensor to the drivers
the aht21 uses the same library as the aht20, but a different i2c address is used so this needed to be added so the the aht21 sensor can be used.
2024-11-12 14:30:22 -07:00
tyeth
7b10b132ec Tweak passed arguments 2024-10-25 18:14:47 +01:00
tyeth
872a3f5d77 Cleanup + log thresholds 2024-10-25 18:14:47 +01:00
tyeth
2947fb63bb Add param to docstring 2024-10-25 18:14:47 +01:00
tyeth
265ce3d5b9 Refactor to calculateHysteresis 2024-10-25 18:14:47 +01:00
tyeth
0d4c7ef1d5 Switch Analog Voltage on esp32 to use analogReadMilliVolts and tweak hysteresis 2024-10-25 18:14:47 +01:00
tyeth
016e076550 Use dollar curly braces for evaluating ifs 2024-10-25 16:46:09 +01:00
tyeth
83721a01dc Correct failure negation 2024-10-25 16:13:10 +01:00
tyeth
d9adf25ed1 Only used cached NanoPB if necessary 2024-10-25 16:05:28 +01:00
Brent Rubell
270344d6cb
Merge pull request #654 from adafruit/qtpy-test-dbm
Reduce connection errors on QT Py ESP32-Sx due to 3D Antennas
2024-10-24 12:23:01 -05:00
brentru
6a2f67ae0b update platformio.ini to use 3.0.7 2024-10-24 13:06:33 -04:00
brentru
bd05dd2802 point workflow to arduino not tyeth! 2024-10-24 11:24:52 -04:00
brentru
7fe6cfa534 inclusion guard around dbm setter, for all qt py 2024-10-24 10:44:06 -04:00
Brent Rubell
63b812b4d9
Merge pull request #647 from tyeth/add-metro-s3
Add metro s3
2024-10-24 09:25:45 -05:00
brentru
45af854ed2 reduce dBm to 15dBm for all, for now, will need to ifdef guard 2024-10-23 19:09:29 -04:00
tyeth
453dc6d62c set to cache v4 2024-10-22 21:24:50 +01:00
tyeth
0760b45e44 Add caching for nanopb 2024-10-22 21:00:16 +01:00
brentru
7b419274ab bump to beta 92 2024-10-22 14:58:41 -04:00
Brent Rubell
db79e617f2
Merge pull request #651 from adafruit/test-c6-builds
Fix C6 Build
2024-10-22 13:57:47 -05:00
Brent Rubell
f0ebfd0e9c
Merge pull request #648 from adafruit/fix-release-task-extract-assets
Update release task to use nested build-files assets
2024-10-22 13:46:11 -05:00
brentru
3e48594c63 switch back to ci-arduino adafruit origin 2024-10-22 12:45:36 -04:00
brentru
c3bc657488 enforce matrix offset again 2024-10-22 12:40:18 -04:00
brentru
b0e8902675 0x0 fix 2024-10-22 12:08:42 -04:00
brentru
e3e09946ff drop all additions except esptool 4.6 2024-10-22 11:42:20 -04:00
brentru
d0dc679c5e use esptool 4.6 instead for esp32 platforms merge 2024-10-22 11:41:33 -04:00
brentru
5731ce2c56 keep offset 0x0 2024-10-22 11:16:57 -04:00
brentru
d8bc70ad24 keep 2024-10-22 11:16:30 -04:00
brentru
45ffc1e916 attempt to fill flash size 2024-10-22 10:36:28 -04:00
brentru
a999a73e9f print matrix offset 2024-10-21 17:13:53 -04:00
tyeth
3086e0d362 Rename Metro-S3 build targets to match ci-arduino 2024-10-21 21:36:25 +01:00
tyeth
9d3442c72d Correct build targets for S2/S3 debug 2024-10-21 21:36:25 +01:00
tyeth
92286c87ee Add platformIO entry + CI entries for Metro-S3/2 2024-10-21 21:36:24 +01:00
tyeth
0c3636cc69 Add support for Adafruit Metro ESP32-S3
Also add normal + debug CI builds for Metro S2+S3
2024-10-21 21:36:24 +01:00
brentru
9b2255ac1a add offset back for c6 and debug c6 2024-10-21 15:44:41 -04:00
Tyeth Gundry
800a87ebad
Merge pull request #649 from tyeth/update-staging-cert-2024-10-21
Update E5 cert for staging
2024-10-21 20:37:38 +01:00
Tyeth Gundry
f73d6fe941
Bump version to 91 2024-10-21 20:36:08 +01:00
brentru
9570cc583a fix offset attempt 2024-10-21 15:14:23 -04:00
Tyeth Gundry
1d10247540
Update E5 cert for staging 2024-10-21 18:17:53 +01:00
Tyeth Gundry
9844ee3ee7
Update release task to use nested build-files assets 2024-10-21 17:37:44 +01:00
Tyeth Gundry
13cd5b0ffb
Merge pull request #646 from adafruit/rev-tft-rename-skip-files
Add skips + generates for S3 Rev TFT debug
2024-10-18 20:25:38 +01:00
tyeth
04c39b0c34 Add skips + generates for S3 Rev TFT debug 2024-10-18 19:40:50 +01:00
Tyeth Gundry
e2045f0cd3
Merge pull request #645 from adafruit/set-rev-tft-debug-noota
Set debug build of s3-rev-tft to no_ota
2024-10-18 18:43:55 +01:00
Tyeth Gundry
ebc002a673
Set debug build of s3-rev-tft to no_ota 2024-10-18 18:31:45 +01:00
Tyeth Gundry
c0af0ade93
Merge pull request #643 from tyeth/new-pio-build-targets-funhouse-qtpys3n4r2-esp32s3devkitc
New pio build targets
2024-10-15 21:37:16 +01:00
Tyeth Gundry
e2815766d8
Merge pull request #607 from adafruit/598-preprocessor-script-for-printing-the-library-versions-to-boot_outtxt
Print the library versions to boot log
2024-10-15 19:57:07 +01:00
tyeth
86e05d2545 Remove blank line 2024-10-11 19:50:36 +01:00
tyeth
ebc522ffe4 Swap back to adafruit/ci-arduino 2024-10-11 19:44:56 +01:00
tyeth
d8c6b94b50 Cleanup espressif esp32s3 devkitc-1 target + add non-debug 2024-10-11 17:43:36 +01:00
brentru
66ab83ffa5 one . 2024-10-11 17:38:59 +01:00
brentru
13b1a3de3e build 2024-10-11 17:38:59 +01:00
brentru
dc73b7ddc8 build uf2 for examples/wippersnapper_debug/..feather_esp32s3_reverse_tft_debug.generate 2024-10-11 17:38:39 +01:00
brentru
3530c2eae9 skip debug build for this platform 2024-10-11 17:38:39 +01:00
brentru
8c66505a98 only debug this feather 2024-10-11 17:38:39 +01:00
brentru
cf3b61f81e build from brentru, add revtft debug target 2024-10-11 17:38:39 +01:00
Tyeth Gundry
30c871ef73 Switch to BSP 3.0.5 2024-10-11 17:38:39 +01:00
Tyeth Gundry
e0ebc7bb5e Add debug profile for qtpy_s3_n4r2 2024-10-11 17:38:39 +01:00
Tyeth Gundry
708b9de1f4 Add QTPY ESP32-S3 N4R2 2024-10-11 17:38:39 +01:00
tyeth
a12f51db9a Correct funhouse debug build flags 2024-10-11 17:38:39 +01:00
tyeth
d965898c7e WipperSnapper on Funhouse causes bootloop and crash.
Investigate #630
2024-10-11 17:38:39 +01:00
tyeth
2ef6d725e2 Print build dependencies on boot 2024-10-10 21:03:50 +01:00
Tyeth Gundry
901e2a4879
Merge pull request #631 from adafruit/fix-upload-download-artifact
Update Depreciated Workflow Action
2024-10-10 20:45:26 +01:00
Tyeth Gundry
d01e5d748d
Merge pull request #642 from adafruit/add-merge-to-fix-upload-download-artifact-v4
Add merge to fix upload download artifact v4
2024-10-10 20:44:51 +01:00
Tyeth Gundry
96af0e0a20
Update build-clang-doxy.yml 2024-10-10 17:19:06 +01:00
tyeth
7b51b5a41e fix one name + shorten SAMD-no-fs 2024-09-27 14:07:14 +01:00
tyeth
9dfccb6a47 Update action/andstor/file-existence-action to v3 2024-09-27 13:59:09 +01:00
tyeth
198a0e5226 Update actions/setup-python to v5 2024-09-27 13:57:16 +01:00
tyeth
574ad66ffd Add merge steps + fix c6 dev asset name 2024-09-27 13:37:51 +01:00
Tyeth Gundry
6e49411893
Merge pull request #623 from tyeth/add-HDC302x
Add HDC3021/HDC302x
2024-09-24 19:31:22 +01:00
Tyeth Gundry
06427ff916
Merge pull request #600 from adafruit/tweak-sgp30-init
Adjust SGP30 init to not call IAQinit unnecessarily
2024-09-24 19:30:50 +01:00
Tyeth Gundry
784a166af4
Merge pull request #632 from adafruit/scd30-read-data-at-once
Add retry if data not ready for SCD30
2024-09-24 19:30:33 +01:00
tyeth
2a0564b970 return true in a readable way for HDC302x 2024-09-24 18:01:09 +01:00
tyeth
d1898c962d Refactor SCD30 to improve readability 2024-09-24 17:50:00 +01:00
tyeth
8ee25a5fea format SCD30 2024-09-24 17:50:00 +01:00
tyeth
4eb816e2cc Add retry if data not ready for SCD30 2024-09-24 17:50:00 +01:00
tyeth
5d0241fd91 drop unnecessary call to _sgp30.IAQinit 2024-09-24 17:49:48 +01:00
tyeth
e1206880d9 Ignore first reading of HDC320x 2024-09-24 17:49:20 +01:00
Tyeth Gundry
0210209a94 Add HDC3021/HDC302x 2024-09-24 17:49:20 +01:00
Tyeth Gundry
2da710586f
Merge pull request #634 from adafruit/fix-funhouse-using-bsp-for-partition
fix funhouse build checking paths
2024-09-24 17:47:06 +01:00
tyeth
d286ff5899 fix funhouse build checking paths 2024-09-24 17:25:24 +01:00
Brent Rubell
47da59470d
Merge pull request #633 from adafruit/update-bcd-to-use-adafruit-ci
Update build action to build on adafruit/ci-arduino's new wippersnapper branch
2024-09-23 14:44:13 -05:00
brentru
3ab29705d0 Update action to build on adafruit/ci-arduino's new wippersnapper branch 2024-09-23 14:45:18 -04:00
brentru
9e9a19b359 update deprecated action, download artifact, to v4 2024-09-13 15:20:20 -04:00
brentru
bcb158093a fix gh release 2024-09-12 14:55:39 -04:00
brentru
41f2813956 release with v3 instead of v4 2024-09-12 14:54:54 -04:00
brentru
8c2978d378 update deprecated action download-artifact, bump other release action 2024-09-12 14:44:33 -04:00
Brent Rubell
1ab027e7b8
Merge pull request #629 from adafruit/patch-wifi-scan-issue
Fix WiFi Scan Issue
2024-09-12 13:29:47 -05:00
brentru
8f16b4fb6d push updated ref to all esp32x boards 2024-09-12 13:36:08 -04:00
brentru
a3d74c9c0b shorten names 2024-09-12 12:52:54 -04:00
brentru
9ecd9cae58 patch wifi scan issue 2024-09-12 11:27:26 -04:00
Brent Rubell
8e8ac1a85f
Merge pull request #626 from adafruit/fix-version-beta
Fix version to Beta 89
2024-09-05 13:58:28 -05:00
brentru
a429d9f429 push to beta 89 2024-09-05 14:49:32 -04:00
Brent Rubell
a751f1aade
Merge pull request #625 from adafruit/fix-fs-enumeration-bug
Fix TinyUSB Enumeration bug on ESP32-S3
2024-09-05 13:47:11 -05:00
brentru
420793d1d4 put back fs 2024-09-05 13:51:34 -04:00
brentru
76f3f6aa63 rm ws_ 2024-09-05 13:50:20 -04:00
brentru
ccb12e1e02 dont point esp32 there! 2024-09-05 12:59:26 -04:00
brentru
bde9d2f5fd point to new ref 2024-09-05 12:58:53 -04:00
brentru
1236bd025b point dev to new ref 2024-09-05 12:49:13 -04:00
brentru
b59f126dd0 wrong ref! 2024-09-05 12:23:33 -04:00
brentru
4e698782ea checkout ref 2024-09-05 12:19:19 -04:00
brentru
a5e68f0f8b add fix for tinyusb enumeration bug 2024-09-05 11:46:50 -04:00
Tyeth Gundry
59900023f6
Merge pull request #615 from adafruit/add-adafruit-feather-esp32c6
Add Adafruit Feather ESP32-C6
2024-08-20 21:22:17 +01:00
Tyeth Gundry
5c4dda0fe4 Prelease for C6 and comment/format platformio 2024-08-20 21:17:04 +01:00
tyeth
4e9cd30c00 Tweak debug builds for CI to drop _debug from board name 2024-08-20 18:50:13 +01:00
tyeth
b52f6ff976 Add C6 Debug target 2024-08-20 18:11:54 +01:00
tyeth
5f6b814aed Swap PIOArduino to develop 2024-08-20 18:11:43 +01:00
tyeth
176ff81433 Set CDC on and DebugLevel=Info for Feather C6 2024-08-20 17:28:53 +01:00
tyeth
d2e0d0929f Ignore OneWire and use OneWireNg 2024-08-14 19:45:19 +01:00
tyeth
ea3cc6205b Cleanup Espressif C6 build flags 2024-08-13 15:30:32 +01:00
tyeth
c7c441eda9 Temporarily switch OneWire to fork with C6 fix 2024-08-13 15:19:46 +01:00
tyeth
64d73b27ad Add Espressif C6 4mb PlatformIO target 2024-08-13 14:41:55 +01:00
tyeth
baa61c340c Add .test.skip and .genereate files for Feather C6 2024-08-13 14:00:07 +01:00
tyeth
9303d7b22a Specify offset arduino-platform's not as array 2024-08-13 13:49:19 +01:00
tyeth
b374aca37d Update build workflow to add C6 2024-08-13 13:44:15 +01:00
tyeth
97999e5eaa Initial adding of board def for C6 2024-08-13 13:10:35 +01:00
398 changed files with 20243 additions and 128803 deletions

View file

@ -5,6 +5,11 @@ name: WipperSnapper Build CI
on: on:
workflow_dispatch: workflow_dispatch:
inputs:
board:
description: 'Build ONLY this board (must match a matrix entry exactly, or leave empty for all)'
required: false
default: ''
pull_request: pull_request:
workflow_call: workflow_call:
secrets: secrets:
@ -18,19 +23,52 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
arduino-platform: ["funhouse_noota"] arduino-platform:
include: [
- offset: "0x1000" "feather_esp32s2",
"feather_esp32s2_reverse_tft",
"feather_esp32s2_tft",
"funhouse_noota",
"magtag",
"metroesp32s2",
"qtpy_esp32s2",
"esp32s3_devkitc_1_n8",
"feather_esp32s3_4mbflash_2mbpsram",
"feather_esp32s3_reverse_tft",
"feather_esp32s3_tft",
"qtpy_esp32s3_n4r2",
"xiao_esp32s3",
]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) WS_VERSION="unknown"
if git describe --dirty --tags >/dev/null 2>&1; then
WS_VERSION=$(git describe --dirty --tags)
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -45,7 +83,8 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet --branch 2.2.54 https://github.com/adafruit/SdFat.git /home/runner/Arduino/libraries/SdFat
git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library
git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341
@ -104,6 +143,7 @@ jobs:
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.elf wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.elf mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.elf wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.elf
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.map wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.map mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.map wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.map
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.bootloader.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.bootloader.bin mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.bootloader.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.bootloader.bin
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.merged.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.merged_auto.bin
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.partitions.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.partitions.bin mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.partitions.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.partitions.bin
- name: Get Board Flash Parameters - name: Get Board Flash Parameters
id: get_board_json id: get_board_json
@ -119,6 +159,58 @@ jobs:
echo $content echo $content
echo EOF echo EOF
} >> "$GITHUB_OUTPUT" } >> "$GITHUB_OUTPUT"
- name: fetch tinyuf2 combined.bin
run: |
BOARD_NAME="${{fromJson(steps.get_board_json.outputs.boardJson).bootloaderBoardName}}"
set +e
for attempt in 1 2 3; do
echo "Attempt $attempt: Fetching tinyuf2 release info for board $BOARD_NAME"
API_RESPONSE=$(curl --silent --fail https://api.github.com/repos/adafruit/tinyuf2/releases/latest)
if [ $? -ne 0 ]; then
echo "Attempt $attempt: curl failed to fetch release info."
if [ "$attempt" -eq 3 ]; then exit 1; else sleep $((60 + RANDOM % 40)); continue; fi
fi
DOWNLOAD_URL=$(echo "$API_RESPONSE" | jq -r '.assets[] | select(.browser_download_url | contains("tinyuf2-'$BOARD_NAME'-") and endswith(".zip")) | .browser_download_url // empty'); JQ_EXIT=$?
if [ $JQ_EXIT -ne 0 ] || [ -z "$DOWNLOAD_URL" ]; then
echo "Attempt $attempt: jq failed or no matching zip found."
if [ "$attempt" -eq 3 ]; then exit 1; else sleep $((60 + RANDOM % 40)); continue; fi
fi
echo "Attempt $attempt: Downloading $DOWNLOAD_URL"
wget "$DOWNLOAD_URL" -O tinyuf2.zip
if [ $? -eq 0 ]; then
unzip -o tinyuf2.zip -d .
if [ $? -ne 0 ]; then
echo "Attempt $attempt: unzip failed"
if [ "$attempt" -eq 3 ]; then exit 1; else sleep $((60 + RANDOM % 40)); continue; fi
fi
break
else
echo "Attempt $attempt: wget failed to download $DOWNLOAD_URL"
if [ "$attempt" -eq 3 ]; then exit 1; else sleep $((60 + RANDOM % 40)); fi
fi
done
set -e
- name: move partition and bootloader files for tinyuf2 (to match flash_args)
run: |
# Copy files where they're expected to make flash_args happy
mkdir bootloader
cp bootloader.bin bootloader/bootloader.bin
mkdir partition_table
cp partition-table.bin partition_table/partition-table.bin
- name: Create new_flash_args file from flash_args with added app bin + output file
run: |
# Create new_flash_args with esptool parameters first and output file
echo "--flash-mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}}" > new_flash_args
echo "--flash-freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}}" >> new_flash_args
echo "--flash-size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}}" >> new_flash_args
echo "-o wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.combined.bin" >> new_flash_args
# Append flash_args content to new_flash_args, skipping the first line
tail -n +2 flash_args >> new_flash_args
# Append main app to flash_args file
echo "0x10000 wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.bin" >> new_flash_args
- name: Check boot_app0 file existence (esp32sx built from core, not-source) - name: Check boot_app0 file existence (esp32sx built from core, not-source)
id: check_files id: check_files
uses: andstor/file-existence-action@v3 uses: andstor/file-existence-action@v3
@ -134,23 +226,17 @@ jobs:
ls /home/runner/Arduino/hardware/espressif/esp32/tools/partitions ls /home/runner/Arduino/hardware/espressif/esp32/tools/partitions
- name: boot_app0 file from arduino-cli core - name: boot_app0 file from arduino-cli core
if: steps.check_files.outputs.files_exists == 'true' if: steps.check_files.outputs.files_exists == 'true'
run: mv /home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin run: cp /home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin
- name: boot_app0 file from esp32 source bsp - name: boot_app0 file from esp32 source bsp
if: steps.check_files.outputs.files_exists == 'false' if: steps.check_files.outputs.files_exists == 'false'
run: mv /home/runner/Arduino/hardware/espressif/esp32/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin run: cp /home/runner/Arduino/hardware/espressif/esp32/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin
- name: Create combined binary using Esptool merge_bin - name: Copy boot_app0 file to ota_data_initial.bin (overwrite tinyuf2 boot preference)
run: cp wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin ota_data_initial.bin
- name: Create combined binary using Esptool merge-bin
run: | run: |
echo ${{ steps.get_board_json.outputs.boardJson }} echo ${{ steps.get_board_json.outputs.boardJson }}
echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }} echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }}
python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge_bin \ python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge-bin @new_flash_args
--flash_mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \
--flash_freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \
--flash_size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \
-o wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.combined.bin \
${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.bootloader.bin \
0x8000 wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.partitions.bin \
0xe000 wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.boot_app0.bin \
0x10000 wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.bin
- name: Zip build artifacts - name: Zip build artifacts
run: | run: |
zip -r wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.zip wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.* zip -r wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.zip wippersnapper.${{ matrix.arduino-platform }}.fatfs.${{ env.WS_VERSION }}.*
@ -178,30 +264,36 @@ jobs:
matrix: matrix:
arduino-platform: arduino-platform:
[ [
"magtag",
"metroesp32s2",
"metro_esp32s3", "metro_esp32s3",
"feather_esp32s2",
"feather_esp32s2_tft",
"feather_esp32s2_reverse_tft",
"feather_esp32s3", "feather_esp32s3",
"feather_esp32s3_4mbflash_2mbpsram",
"feather_esp32s3_tft",
"qtpy_esp32s3", "qtpy_esp32s3",
"qtpy_esp32s2",
"feather_esp32s3_reverse_tft",
"qtpy_esp32s3_n4r2",
] ]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -211,7 +303,7 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library
git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341
@ -284,27 +376,48 @@ jobs:
[ [
"wippersnapper_feather_esp32", "wippersnapper_feather_esp32",
"qtpy_esp32", "qtpy_esp32",
"sparklemotionmini_esp32",
"sparklemotionstick_esp32",
"feather_esp32_v2", "feather_esp32_v2",
"itsybitsy_esp32", "itsybitsy_esp32",
"dfrobot_beetle_esp32c3",
"wippersnapper_qtpy_esp32c3", "wippersnapper_qtpy_esp32c3",
"wippersnapper_feather_esp32c6" "wippersnapper_feather_esp32c6"
] ]
include: include:
- offset: "0x1000" - offset: "0x1000"
- offset: "0x0"
arduino-platform: "dfrobot_beetle_esp32c3"
- offset: "0x0" - offset: "0x0"
arduino-platform: "wippersnapper_qtpy_esp32c3" arduino-platform: "wippersnapper_qtpy_esp32c3"
- offset: "0x0" - offset: "0x0"
arduino-platform: "wippersnapper_feather_esp32c6" arduino-platform: "wippersnapper_feather_esp32c6"
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -319,7 +432,7 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
- name: Download stable Nanopb - name: Download stable Nanopb
id: download-nanopb id: download-nanopb
@ -352,7 +465,7 @@ jobs:
mv nanopb/pb.h src/nanopb/nanopb.pb.h mv nanopb/pb.h src/nanopb/nanopb.pb.h
- name: Install Dependencies - name: Install Dependencies
run: | run: |
pip install esptool==4.6 pip install esptool
- name: build ESP32 platforms - name: build ESP32 platforms
run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} --build_timeout 48000 run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} --build_timeout 48000
- name: Check artifacts - name: Check artifacts
@ -390,14 +503,14 @@ jobs:
echo $content echo $content
echo EOF echo EOF
} >> "$GITHUB_OUTPUT" } >> "$GITHUB_OUTPUT"
- name: Create combined binary using Esptool merge_bin - name: Create combined binary using Esptool merge-bin
run: | run: |
echo ${{ steps.get_board_json.outputs.boardJson }} echo ${{ steps.get_board_json.outputs.boardJson }}
echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }} echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }}
python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge_bin \ python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge-bin \
--flash_mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \ --flash-mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \
--flash_freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \ --flash-freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \
--flash_size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \ --flash-size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \
-o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \ -o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \
${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \ ${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \
0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \ 0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \
@ -426,15 +539,31 @@ jobs:
"metro_m4_airliftlite_tinyusb", "metro_m4_airliftlite_tinyusb",
] ]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -446,8 +575,8 @@ jobs:
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/adafruit/WiFiNINA.git /home/runner/Arduino/libraries/WiFiNINA git clone --quiet https://github.com/adafruit/WiFiNINA.git /home/runner/Arduino/libraries/WiFiNINA
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet https://github.com/PaulStoffregen/OneWire.git /home/runner/Arduino/libraries/OneWire
git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino
- name: Download stable Nanopb - name: Download stable Nanopb
id: download-nanopb id: download-nanopb
@ -498,17 +627,33 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
arduino-platform: ["picow_rp2040_tinyusb", "picow_rp2350_tinyusb"] arduino-platform: ["picow_rp2040_tinyusb", "picow_rp2350_tinyusb", "fruit_jam_tinyusb"]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -521,7 +666,6 @@ jobs:
run: | run: |
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/brentru/Adafruit_SPIFlash.git /home/runner/Arduino/libraries/Adafruit_SPIFlash
git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino
- name: Download stable Nanopb - name: Download stable Nanopb
id: download-nanopb id: download-nanopb
@ -572,15 +716,31 @@ jobs:
matrix: matrix:
arduino-platform: ["feather_esp8266"] arduino-platform: ["feather_esp8266"]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -590,8 +750,8 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino library - name: Install extra Arduino library
run: | run: |
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet https://github.com/PaulStoffregen/OneWire.git /home/runner/Arduino/libraries/OneWire
- name: Download stable Nanopb - name: Download stable Nanopb
id: download-nanopb id: download-nanopb
continue-on-error: true continue-on-error: true
@ -650,6 +810,7 @@ jobs:
matrix: matrix:
arduino-platform: arduino-platform:
[ [
"esp32s3_devkitc_1_n8_debug",
"feather_esp32s2_debug", "feather_esp32s2_debug",
"feather_esp32s2_tft_debug", "feather_esp32s2_tft_debug",
"feather_esp32s3_debug", "feather_esp32s3_debug",
@ -660,15 +821,31 @@ jobs:
"metro_esp32s3_debug", "metro_esp32s3_debug",
] ]
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -678,7 +855,7 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library
git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341
@ -756,15 +933,31 @@ jobs:
- offset: "0x0" - offset: "0x0"
arduino-platform: "wippersnapper_feather_esp32c6_debug" arduino-platform: "wippersnapper_feather_esp32c6_debug"
steps: steps:
- name: "skip if unwanted"
continue-on-error: true
if: |
github.event_name == 'workflow_dispatch' &&
github.event.inputs.board != '' &&
matrix.arduino-platform != github.event.inputs.board
run: |
echo "don't build this one!"; exit 1
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: "3.x" python-version: "3.x"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Get WipperSnapper version - name: Get WipperSnapper version
run: | run: |
git fetch --prune --unshallow --tags git remote add adafruit https://github.com/adafruit/Adafruit_Wippersnapper_Arduino.git || true
git describe --dirty --tags git fetch --prune --unshallow --all --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags) if git describe --dirty --tags >/dev/null 2>&1; then
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
else
# Fallback for forks: 1.0.0-{owner}-{short-sha}
REPO_OWNER=$(echo $GITHUB_REPOSITORY | cut -d'/' -f1)
SHORT_SHA=$(git rev-parse --short HEAD)
echo >>$GITHUB_ENV WS_VERSION="1.0.0-${REPO_OWNER}-${SHORT_SHA}"
fi
echo "WS_VERSION: $WS_VERSION"
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with: with:
repository: adafruit/ci-arduino repository: adafruit/ci-arduino
@ -779,7 +972,7 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: Install extra Arduino libraries - name: Install extra Arduino libraries
run: | run: |
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library git clone --quiet --branch v4.0.3 https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
- name: Download stable Nanopb - name: Download stable Nanopb
id: download-nanopb id: download-nanopb
@ -852,14 +1045,14 @@ jobs:
echo $content echo $content
echo EOF echo EOF
} >> "$GITHUB_OUTPUT" } >> "$GITHUB_OUTPUT"
- name: Create combined binary using Esptool merge_bin - name: Create combined binary using Esptool merge-bin
run: | run: |
echo ${{ steps.get_board_json.outputs.boardJson }} echo ${{ steps.get_board_json.outputs.boardJson }}
echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }} echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }}
python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge_bin \ python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge-bin \
--flash_mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \ --flash-mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \
--flash_freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \ --flash-freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \
--flash_size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \ --flash-size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \
-o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \ -o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \
${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \ ${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \
0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \ 0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \
@ -927,10 +1120,10 @@ jobs:
run: bash ci/actions_install.sh run: bash ci/actions_install.sh
- name: clang - name: clang
run: python3 ci/run-clang-format.py -r -e "ci/*" -e "bin/*" -e src/nanopb -e src/protos -e src/wippersnapper -e src/pb.h -e src/provisioning/tinyusb src/ run: python3 ci/run-clang-format.py -r -e "ci/*" -e "bin/*" -e src/nanopb -e src/wippersnapper -e src/pb.h -e src/provisioning/tinyusb src/
- name: doxygen - name: doxygen
env: env:
GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }}
PRETTYNAME: "Adafruit.io WipperSnapper Library" PRETTYNAME: "Adafruit.io WipperSnapper Library"
run: bash ci/doxy_gen_and_deploy.sh run: bash ci/doxy_gen_and_deploy.sh

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: Brent Rubell for Adafruit Industries, 2022-2024 # SPDX-FileCopyrightText: Brent Rubell for Adafruit Industries, 2022
# #
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
name: WipperSnapper Release Callee name: WipperSnapper Release Callee
@ -12,16 +12,16 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Download build artifacts from build-platform steps - name: Download build artifacts from build-platform steps
uses: actions/download-artifact@v2 uses: actions/download-artifact@v4
with: with:
name: build-files path: .
- name: List Files - name: List Files
run: ls run: ls
- name: Upload Assets to the GitHub Release - name: Upload Assets to the GitHub Release
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v2
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/')
with: with:
files: | files: |
wippersnapper.*.uf2 build-files/wippersnapper.*.uf2
wippersnapper.*.bin build-files/wippersnapper.*.bin
wippersnapper.*.zip build-files/wippersnapper.*.zip

View file

@ -1,37 +1,21 @@
# SPDX-FileCopyrightText: Brent Rubell for Adafruit Industries, 2022-2025 # SPDX-FileCopyrightText: Brent Rubell for Adafruit Industries, 2022
# #
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
name: WipperSnapper Release Workflow name: WipperSnapper Release Workflow
on: on:
release: release:
types: [published] types: [published]
workflow_call:
secrets: secrets:
GH_REPO_TOKEN: GH_REPO_TOKEN:
required: true required: true
jobs:
check-branch:
runs-on: ubuntu-latest
outputs:
should_run: ${{ steps.check.outputs.should_run }}
steps:
- id: check
run: |
if [[ $GITHUB_REF == *"offline-mode"* ]]; then
echo "should_run=false" >> $GITHUB_OUTPUT
else
echo "should_run=true" >> $GITHUB_OUTPUT
fi
shell: bash
jobs:
call-workflow-build: call-workflow-build:
needs: check-branch
if: needs.check-branch.outputs.should_run == 'true'
uses: adafruit/Adafruit_Wippersnapper_Arduino/.github/workflows/build-clang-doxy.yml@main uses: adafruit/Adafruit_Wippersnapper_Arduino/.github/workflows/build-clang-doxy.yml@main
secrets: secrets:
GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }}
call-workflow-release: call-workflow-release:
needs: [check-branch, call-workflow-build] needs: call-workflow-build
if: needs.check-branch.outputs.should_run == 'true' uses: adafruit/Adafruit_Wippersnapper_Arduino/.github/workflows/release-callee.yml@main
uses: adafruit/Adafruit_Wippersnapper_Arduino/.github/workflows/release-callee.yml@main

View file

@ -1,287 +0,0 @@
# SPDX-FileCopyrightText: Brent Rubell for Adafruit Industries, 2025
#
# SPDX-License-Identifier: MIT
name: WipperSnapper Release Workflow for "Offline Mode" Alpha Feature
on:
push:
branches:
- offline-mode
release:
types: [published]
branches:
- offline-mode
workflow_call:
secrets:
GH_REPO_TOKEN:
required: true
jobs:
clang:
name: 🔎 Clang
runs-on: ubuntu-latest
steps:
- uses: actions/setup-python@v5
with:
python-version: "3.x"
- uses: actions/checkout@v4
- uses: actions/checkout@v4
with:
repository: adafruit/ci-arduino
ref: ci-wippersnapper
path: ci
- name: pre-install
run: bash ci/actions_install.sh
- name: clang
run: python3 ci/run-clang-format.py -r -e "ci/*" -e "bin/*" -e src/nanopb -e src/protos -e src/pb.h -e src/provisioning/tinyusb src/
test-offline-mode:
name: 🧪 Test Offline Mode
runs-on: ubuntu-latest
needs: clang
steps:
- name: Check out repository code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install -r tests/requirements.txt
- name: Install Wokwi CI Server
uses: wokwi/wokwi-ci-server-action@v1
- name: Install Wokwi CLI
run: curl -L https://wokwi.com/ci/install.sh | sh
- name: Install PIO Libraries for esp32dev target
run: pio pkg install --environment=esp32dev
- name: Build PlatformIO Project
run: platformio run --environment esp32dev
- name: Move new build file to test folder
run: cp .pio/build/esp32dev/firmware.elf tests/bin/offline/firmware.elf
- name: Run Wokwi Tests
run: pytest tests/test_offline.py --junitxml=report.xml -v
env:
WOKWI_CLI_TOKEN: ${{ secrets.WOKWI_CLI_TOKEN }}
- name: Publish Wokwi Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: |
/home/runner/work/Adafruit_Wippersnapper_Arduino/Adafruit_Wippersnapper_Arduino/report.xml
build-esp32sx:
name: 🏗️ ESP32-Sx
runs-on: ubuntu-latest
needs: [clang]
strategy:
fail-fast: false
matrix:
arduino-platform:
[
"metroesp32s2",
"metro_esp32s3",
"feather_esp32s2",
"feather_esp32s2_tft",
"feather_esp32s2_reverse_tft",
"feather_esp32s3",
"feather_esp32s3_4mbflash_2mbpsram",
"feather_esp32s3_tft",
"qtpy_esp32s3",
"qtpy_esp32s2",
"feather_esp32s3_reverse_tft",
"qtpy_esp32s3_n4r2",
]
steps:
- uses: actions/setup-python@v5
with:
python-version: "3.x"
- uses: actions/checkout@v4
- name: Get WipperSnapper version
run: |
git fetch --prune --unshallow --tags
git describe --dirty --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
- uses: actions/checkout@v4
with:
repository: adafruit/ci-arduino
ref: ci-wippersnapper
path: ci
- name: Install CI-Arduino
run: bash ci/actions_install.sh
- name: Install extra Arduino libraries
run: |
git clone --quiet https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/adafruit/Adafruit_HX8357_Library.git /home/runner/Arduino/libraries/Adafruit_HX8357_Library
git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341
git clone --quiet https://github.com/adafruit/Adafruit_STMPE610.git /home/runner/Arduino/libraries/Adafruit_STMPE610
git clone --quiet https://github.com/adafruit/Adafruit-ST7735-Library.git /home/runner/Arduino/libraries/Adafruit-ST7735-Library
git clone --quiet https://github.com/adafruit/Adafruit_TouchScreen.git /home/runner/Arduino/libraries/Adafruit_TouchScreen
git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino
git clone --depth 1 --branch wippersnapper https://github.com/brentru/lvgl.git /home/runner/Arduino/libraries/lvgl
git clone --depth 1 --branch development https://github.com/brentru/Adafruit_LvGL_Glue.git /home/runner/Arduino/libraries/Adafruit_LittlevGL_Glue_Library
- name: Download stable Nanopb
id: download-nanopb
continue-on-error: true
run: |
wget https://jpa.kapsi.fi/nanopb/download/nanopb-0.4.8.tar.gz
- if: ${{ failure() || steps.download-nanopb.outcome != 'success' }}
name: Restore cached nanopb
id: cache-nanopb-restore
uses: actions/cache/restore@v4
env:
cache-name: cache-node-modules
with:
path: ./nanopb-0.4.8.tar.gz
key: nanopb-0.4.8.tar.gz
- if: ${{ steps.download-nanopb.outcome == 'success' }}
name: Save nanopb to cache
id: cache-nanopb-save
uses: actions/cache/save@v4
env:
cache-name: cache-node-modules
with:
path: ./nanopb-0.4.8.tar.gz
key: nanopb-0.4.8.tar.gz
- name: Install stable Nanopb
run: |
tar -xf nanopb-0.4.8.tar.gz
# Copy files to WipperSnapper's src/nanopb directory
cp nanopb/pb_common.* nanopb/pb_encode.* nanopb/pb_decode.* src/nanopb
mv nanopb/pb.h src/nanopb/nanopb.pb.h
- name: List all files in Adafruit_LittlevGL_Glue_Library folder
run: |
ls /home/runner/Arduino/libraries/Adafruit_LittlevGL_Glue_Library
- name: Copy lv_conf.h file in Adafruit_LittlevGL_Glue_Library to the arduino library folder
run: |
cp /home/runner/Arduino/libraries/Adafruit_LittlevGL_Glue_Library/lv_conf.h /home/runner/Arduino/libraries
- name: Build for ESP32-SX
run: |
python3 ci/build_platform.py ${{ matrix.arduino-platform }} --build_timeout 48000
- name: list files (tree)
run: |
tree
- name: Rename build artifacts to reflect the platform name
run: |
mv examples/*/build/*/Wippersnapper_demo.ino.uf2 wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
mv examples/*/build/*/Wippersnapper_demo.ino.bin wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.bin
- name: upload build artifacts
uses: actions/upload-artifact@v4
with:
name: build-files-${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}
path: |
wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.bin
build-rp2040:
name: 🏗️ RP2040, RP2350
runs-on: ubuntu-latest
needs: [clang]
strategy:
fail-fast: false
matrix:
arduino-platform: ["pico_rp2040_tinyusb",
"pico_rp2350_tinyusb",
"feather_rp2040_adalogger_tinyusb",
"metro_rp2350_tinyusb"
]
steps:
- uses: actions/setup-python@v5
with:
python-version: "3.x"
- uses: actions/checkout@v4
- name: Get WipperSnapper version
run: |
git fetch --prune --unshallow --tags
git describe --dirty --tags
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
- uses: actions/checkout@v4
with:
repository: adafruit/ci-arduino
ref: ci-wippersnapper
path: ci
- name: Install CI-Arduino
run: bash ci/actions_install.sh
# manually install OneWireNG/TempControlLib for OneWireNg (RP2040 Supported OneWire w/backwards compat.)
- name: Install extra Arduino libraries
run: |
git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
git clone --quiet https://github.com/pstolarz/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
git clone --quiet https://github.com/adafruit/Adafruit_TinyUSB_Arduino /home/runner/Arduino/libraries/Adafruit_TinyUSB_Arduino
git clone --quiet --branch fix-for-pico https://github.com/brentru/SdFat.git /home/runner/Arduino/libraries/SdFat_-_Adafruit_Fork/
- name: Download stable Nanopb
id: download-nanopb
continue-on-error: true
run: |
wget https://jpa.kapsi.fi/nanopb/download/nanopb-0.4.8.tar.gz
- if: ${{ failure() || steps.download-nanopb.outcome != 'success' }}
name: Restore cached nanopb
id: cache-nanopb-restore
uses: actions/cache/restore@v4
env:
cache-name: cache-node-modules
with:
path: ./nanopb-0.4.8.tar.gz
key: nanopb-0.4.8.tar.gz
- if: ${{ steps.download-nanopb.outcome == 'success' }}
name: Save nanopb to cache
id: cache-nanopb-save
uses: actions/cache/save@v4
env:
cache-name: cache-node-modules
with:
path: ./nanopb-0.4.8.tar.gz
key: nanopb-0.4.8.tar.gz
- name: Install stable Nanopb
run: |
tar -xf nanopb-0.4.8.tar.gz
# Copy files to WipperSnapper's src/nanopb directory
cp nanopb/pb_common.* nanopb/pb_encode.* nanopb/pb_decode.* src/nanopb
mv nanopb/pb.h src/nanopb/nanopb.pb.h
- name: build RP2040 platforms
run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} --build_timeout 48000
- name: Rename build artifacts to reflect the platform name
run: |
mv examples/*/build/*/Wippersnapper_demo_offline.ino.uf2 wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
- name: upload build artifacts
uses: actions/upload-artifact@v4
with:
name: build-files-${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}
path: |
wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
merge-job-build-files:
name: Merge Artifacts for build-files
runs-on: ubuntu-latest
needs: [build-esp32sx, build-rp2040]
steps:
- name: Merge Artifacts from Builds
uses: actions/upload-artifact/merge@v4
with:
name: build-files
pattern: build-files-!(dev)-*
delete-merged: true
release-wippersnapper:
name: 🚀 Upload Release Files
runs-on: ubuntu-latest
needs: merge-job-build-files
if: github.event_name == 'release' && startsWith(github.ref, 'refs/tags/')
steps:
- name: Download build artifacts from build-platform steps
uses: actions/download-artifact@v4
with:
name: build-files
- name: List Files
run: ls
- name: Upload Assets to the GitHub Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: |
wippersnapper.*.uf2
wippersnapper.*.bin
wippersnapper.*.zip

25
.gitignore vendored
View file

@ -39,30 +39,17 @@ html/*
# VSCode artifacts # VSCode artifacts
.vscode/* .vscode/*
src/.vscode/settings.json src/.vscode/settings.json
.DS_STORE .DS_STORE
examples/Wippersnapper_demo/build/ examples/Wippersnapper_demo/build/
# Virtual environment directories
.venv/
venv/
# Python artifacts
tests/__pycache__/
# Platformio artifacts # Platformio artifacts
.pio/ .pio/
# These sometimes contain credentials, don't commit them! # Secrets
src/Wippersnapper_demo_wokwi.ino
data/ data/
examples/Wippersnapper_demo_offline/.theia/
examples/Wippersnapper_demo_offline/.vscode/
examples/Wippersnapper_demo_offline/build/
# Test results # Misc. Data
report.xml tests/
venv/
# VSCode settings
.vscode/settings.json
CLAUDE.md

22
.vscode/settings.json vendored
View file

@ -1,23 +1,11 @@
{ {
"files.associations": { "files.associations": {
"limits": "c", "limits": "c",
"type_traits": "c", "type_traits": "c"
"vector": "cpp",
"array": "cpp",
"deque": "cpp",
"string": "cpp",
"unordered_map": "cpp",
"string_view": "cpp",
"initializer_list": "cpp",
"span": "cpp",
"*.tcc": "cpp",
"list": "cpp",
"unordered_set": "cpp",
"format": "cpp",
"text_encoding": "cpp",
"regex": "cpp"
}, },
"C_Cpp.dimInactiveRegions": false, "C_Cpp.dimInactiveRegions": true,
"dotnet.defaultSolution": "disable", "dotnet.defaultSolution": "disable",
"cmake.configureOnOpen": false "cmake.configureOnOpen": false,
"C_Cpp.clang_format_fallbackStyle": "Google",
"C_Cpp.clang_format_style": "file"
} }

751
Doxyfile

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2020-2024 Adafruit Industries Copyright (c) 2020-2021 Adafruit Industries
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View file

@ -5,26 +5,25 @@
# Adafruit WipperSnapper # Adafruit WipperSnapper
![Build CI](https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/actions/workflows/build-clang-doxy.yml/badge.svg)[![Documentation](https://github.com/adafruit/ci-arduino/blob/master/assets/doxygen_badge.svg)](http://adafruit.github.io/Adafruit_Wippersnapper_Arduino/html/index.html) ![Build CI](https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/actions/workflows/build-clang-doxy.yml/badge.svg)[![Documentation](https://github.com/adafruit/ci-arduino/blob/master/assets/doxygen_badge.svg)](http://adafruit.github.io/Adafruit_Wippersnapper_Arduino/html/index.html)
Adafruit.io WipperSnapper is a firmware designed to turn any Wi-Fi capable board into an Internet-of-Things (IoT) device. No code required! Adafruit.io WipperSnapper is a firmware designed to turn any Wi-Fi-capable board into an Internet-of-Things (IoT) device. No programming is required!
WipperSnapper works with [multiple microcontroller architectures](https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/?tab=readme-ov-file#supported-platforms) and development boards. It is designed to be easily extensible to support new sensors, inputs, and outputs. WipperSnapper works with multiple microcontroller architectures such as ESP8266, ESP32, ESP32-Sx, ESP32-Cx, RP2040, RP2350, and ATSAMD51.
A **free** [Adafruit IO](https://io.adafruit.com) account is required to use WipperSnapper. You will need a **free** [Adafruit IO](https://io.adafruit.com) account to use WipperSnapper.
**NOTE: WipperSnapper firmware is in beta** and is actively being developed. Please [report bugs via the issues page on this repository](https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/issues/new?assignees=&labels=&projects=&template=bug_report.md&title=).
# Get Started # Get Started
[Learn how to install and use WipperSnapper by following this guide on the Adafruit Learning System - QuickStart: Adafruit IO WipperSnapper](https://learn.adafruit.com/quickstart-adafruit-io-wippersnapper). [Learn how to install and use WipperSnapper by following this guide on the Adafruit Learning System - QuickStart: Adafruit IO WipperSnapper](https://learn.adafruit.com/quickstart-adafruit-io-wippersnapper).
## Get WipperSnapper
Pre-compiled binaries and UF2 files for supported hardware are provided on the [releases page](https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/releases) of this repository.
## Supported Platforms ## Supported Platforms
|Platform| MCU(s) | |Platform| MCU(s) |
|--|--| |--|--|
|[ESP32-x](https://github.com/espressif/arduino-esp32)| ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6 | |[ESP32-x](https://github.com/espressif/arduino-esp32)| ESP32, ESP32-Sx, ESP32-C3 |
|[ESP8266](https://github.com/esp8266/Arduino)| ESP8266 | |[ESP8266](https://github.com/esp8266/Arduino)| ESP8266 |
|[RP2040](https://github.com/earlephilhower/arduino-pico)| RP2040 MCU w/WiFi (i.e: Pico W) | |[RP2040](https://github.com/earlephilhower/arduino-pico)| RP2040 MCU w/WiFi (i.e: Pico W) |
|[RP2350](https://github.com/earlephilhower/arduino-pico)| RP2350 MCU w/WiFi (i.e: Pico 2W) |
|[ATSAMD](https://github.com/adafruit/ArduinoCore-samd/)| SAMD51 MCU w/separate WiFi Co-Processor (i.e: Adafruit "AirLift")| |[ATSAMD](https://github.com/adafruit/ArduinoCore-samd/)| SAMD51 MCU w/separate WiFi Co-Processor (i.e: Adafruit "AirLift")|
## Contributing to Adafruit.io and WipperSnapper ## Contributing to Adafruit.io and WipperSnapper

View file

@ -1 +0,0 @@
{"exportVersion": "1.0.0", "exportedBy": "tester", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6, "rtc": "DS3231", "statusLEDBrightness": 0.1}, "components": [{"componentAPI": "analogio", "name": "Analog Pin", "pinName": "A0", "type": "analog_pin", "mode": "ANALOG", "direction": "INPUT", "sampleMode": "TIMER", "analogReadMode": "PIN_VALUE", "period": 30}, {"componentAPI": "ds18x20", "name": "DS18B20: Temperature Sensor (\u00b0F)", "sensorTypeCount": 2, "sensorType1": "object-temp-fahrenheit", "sensorType2": "object-temp", "pinName": "D4", "sensorResolution": 12, "period": 30}], "checksum": 236}

View file

@ -1 +0,0 @@
{"exportVersion": "1.0.0", "exportedBy": "wokwi", "exportedAt": "2024-10-28T18:58:23.976Z", "exportedFromDevice": {"board": "metroesp32s3", "firmwareVersion": "1.0.0-beta.93", "referenceVoltage": 2.6, "totalGPIOPins": 11, "totalAnalogPins": 6}, "components": [{"componentAPI": "digitalio", "name": "Button (D4)", "pinName": "D4", "type": "push_button", "mode": "DIGITAL", "sampleMode": "TIMER", "direction": "INPUT", "period": 5, "pull": "UP", "isPin": true}]}

Binary file not shown.

View file

@ -1,40 +0,0 @@
// Adafruit IO WipperSnapper
//
// This sketch is for devices which lack USB-MSD or LittleFS support such
// as the ESP32Dev for Wokwi Simulator
//
// Adafruit invests time and resources providing this open source code.
// Please support Adafruit and open source hardware by purchasing
// products from Adafruit!
//
// Brent Rubell for Adafruit Industries, 2025
//
// All text above must be included in any redistribution.
#include "ws_adapters.h"
#define WS_DEBUG // Enable debug output
/************************ Adafruit IO Config *******************************/
// Visit io.adafruit.com if you need to create an account,
// or if you need your Adafruit IO key.
#define IO_USERNAME "YOUR_AIO_USERNAME"
#define IO_KEY "YOUR_AIO_KEY"
#define IO_URL "io.adafruit.com"
#define IO_PORT 8883
/**************************** WiFi Config ***********************************/
#define WIFI_SSID "YOUR_WIFI_SSID"
#define WIFI_PASS "YOUR_WIFI_PASSWORD"
ws_adapter_wifi wipper(IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS, IO_URL, IO_PORT);
void setup() {
// Provisioning must occur prior to serial init.
wipper.provision();
Serial.begin(115200);
// while (!Serial) delay(10);
wipper.connect();
}
void loop() { wipper.run(); }

View file

@ -1,22 +1,33 @@
// Adafruit IO WipperSnapper // Adafruit IO WipperSnapper Beta
//
//
// NOTE: This software is a BETA release and in active development.
// Please report bugs or errors to https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/issues
//
// //
// Adafruit invests time and resources providing this open source code. // Adafruit invests time and resources providing this open source code.
// Please support Adafruit and open source hardware by purchasing // Please support Adafruit and open source hardware by purchasing
// products from Adafruit! // products from Adafruit!
// //
// Brent Rubell for Adafruit Industries, 2020-2025 // Brent Rubell for Adafruit Industries, 2021-2022
// //
// All text above must be included in any redistribution. // All text above must be included in any redistribution.
#include "ws_adapters.h" #include "Wippersnapper_Networking.h"
ws_adapter_wifi wipper; Wippersnapper_WiFi wipper;
#define WS_DEBUG // Enable debug output! // Enable debug output for beta builds
#define WS_DEBUG
void setup() { void setup() {
Serial.begin(115200); // Provisioning must occur prior to serial init.
wipper.provision(); wipper.provision();
Serial.begin(115200);
//while (!Serial) delay(10);
wipper.connect(); wipper.connect();
} }
void loop() { void loop() {

View file

@ -1 +0,0 @@
picow_rp2350_tinyusb

Some files were not shown because too many files have changed in this diff Show more