.. leading zeros are required for `frontmatter` to treat them as dates
rather than strings, apparently per the YAML specification.
This was done by script:
```py
import re
import datetime
import pathlib
import sys
import frontmatter
rx = re.compile(r'^(\s*)date_added:.*$', re.M)
for path_str in sys.argv[1:]:
print(path_str)
path = pathlib.Path(path_str)
post = frontmatter.load(path)
date_added = post.get("date_added", "")
if isinstance(date_added, datetime.date):
continue
if isinstance(date_added, str):
try:
date_added = datetime.datetime.strptime(date_added, "%Y-%m-%d")
except ValueError as exc:
print(f"Failed to parse date {date_added} in {path_str}: {exc}")
continue
date_added = date_added.date()
content = path.read_text("utf-8")
new_content = rx.sub(lambda m: f"{m.group(1)}date_added: {date_added}", content)
assert content != new_content
path.write_text(new_content, "utf-8")
```
2.1 KiB
| layout | board_id | title | name | manufacturer | board_url | board_image | date_added | family | bootloader_id | features | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| download | unexpectedmaker_feathers2_prerelease | Unexpected Maker FeatherS2 Prerelease Download | Unexpected Maker FeatherS2 Prerelease | Unexpected Maker |
|
unexpectedmaker_feathers2_prerelease.jpg | 2020-06-14 | esp32s2 | unexpectedmaker_feathers2 |
|
Pre-Release version of the FeatherS2 For those that purchased the pre-release version and would like to run CircuitPython on it without having to compile from source.
Features & Specifications
- 32-bit 240 MHz single-core processor
- 16 MB SPI Flash
- 8 MB extra PSRAM
- 2.4 GHz Wi-Fi - 802.11b/g/n
- 3D Antenna
- 2x 700 mA 3.3 V LDO regulator
- Optimised power path for low-power battery usage
- LiPo battery management
- Power (red), Charge (orange) & IO13 (blue) LEDs
- 21x GPIO
- USB-C
- USB backfeed protection
- APA102 RGB LED (CLK IO45, DATA IO40)
- ALS-PT19 Ambient Light Sensor (IO14)
- QWIIC/STEMMA connector
- Feather format
2x LDO Voltage Regulators? Yup! The first one is for the general operation of the board and the ESP32-S2, RAM and Flash.
The second LDO is for you to use to connect external 3V3 modules, sensors and peripherals, and it has programmable EN control tied to GPIO21 + it’s connected to the deep sleep capabilities of the S2, so if the S2 goes into deep sleep, the 2nd LDO is automatically shut down for you!
You can find out more about the FeatherS2 at feathers2.io, including how to install the UF2 Bootloader.
Purchase
The FeatherS2 pre-release boards are no longer available for purchase now that the final release version is out, which you can grab from these locations: