Jeff Epler
ed33f65fd9
move define to proper place
2022-11-30 14:39:52 -06:00
Jeff Epler
c46e219795
Having an input-only pin is rare, save a string on other ports
2022-11-30 14:39:49 -06:00
Dan Halbert
845b68c351
Merge pull request #7204 from jepler/build-python3x
...
return to using python 3.x for builds
2022-11-30 15:18:29 -05:00
m1cha1s
d904d8e9a0
Renamed the board folder to doit_esp32_devkit_v1
2022-11-30 20:26:41 +01:00
Jeff Epler
e489b73d88
update esp-idf to merge commit
2022-11-30 12:04:47 -06:00
Dan Halbert
2f5ec1cab0
Merge pull request #7281 from jepler/esp32-trailing-dot
...
handle domain with trailing dot
2022-11-30 11:18:47 -05:00
Jeff Epler
286efc18fc
handle domain with trailing dot
...
Closes : #7032
2022-11-30 09:29:21 -06:00
Scott Shawcroft
a8c70aa7bd
Fix S3 deep sleep
...
Adding `-u ld_include_highint_hdl` forces the linker to keep the
high priority interrupt handler that calls the ipc_isr handler.
The deep sleep is waiting for this interrupt to be handled on core
0 before sleeping from core 1.
Fixes #6090
2022-11-29 17:20:38 -08:00
Scott Shawcroft
ad2d190507
Merge pull request #7247 from tannewt/picow_web_workflow
...
Enable* web workflow for Pico W
2022-11-28 14:19:42 -08:00
m1cha1s
680e56c52a
Changed creator id
2022-11-25 14:09:35 +01:00
m1cha1s
26fbb25653
Fixed formatting
2022-11-25 13:55:06 +01:00
m1cha1s
fb46e7c4d8
Defined esp32 board for the esp32 devkit v1
2022-11-25 12:13:44 +01:00
Scott Shawcroft
30563655d7
Merge pull request #7249 from dhalbert/wifi-connect-ap-api
...
correct Radio.connect() and .start_ap() signatures; clean up some code
2022-11-23 10:29:05 -08:00
Dan Halbert
17be447c4b
correct Radio.connect() and .start_ap() signatures; clean up some code
2022-11-22 17:11:03 -05:00
Dan Halbert
6d022733b3
Merge pull request #7162 from rhooper/boards-list
...
add boards list to make error message
2022-11-21 23:18:37 -05:00
Scott Shawcroft
c3a96a63c0
Enable* web workflow for Pico W
...
* Except for circuitpython.local which depends on MDNS and will be
done in a follow up PR.
Progress on #7214
2022-11-21 16:24:05 -08:00
Dan Halbert
df0150ff0e
Add common settings to sdkconfig-esp32c3.defaults
2022-11-21 15:15:26 -05:00
Dan Halbert
85a83b8150
Simplify some ESP32-C3 board sdkconfig files
2022-11-21 12:35:10 -05:00
Jeff Epler
4e0f8e7fcd
Interrupt on UART 'break'
...
Tested and working with the CH9102F USB converter on Adafruit's
Feather ESP32 V2 (& tio as the software on the host computer)
Closes : #7233
2022-11-19 10:57:21 -06:00
MicroDev
c3c1717813
refactor common port specific Makefile code
2022-11-18 23:00:28 +05:30
MicroDev
e2a3597263
add awesome new make error message
...
Copied from initial implementation on atmel-samd
Co-authored-by: Rose Hooper <rhooper@toybox.ca>
Co-authored-by: Jeff Epler <jepler@gmail.com>
2022-11-18 11:27:23 +05:30
MicroDev
3a418379d3
Merge branch 'main' of origin into ESP32-S3-DevKitC-1-N32R8
2022-11-18 09:40:20 +05:30
Neradoc
f9f1edbb08
setup PWM status LED on aithinker ESP32-C3 boards
2022-11-17 20:32:50 +01:00
Jeff Epler
12545fb060
Add prototype feather esp32s2/s3 reverse tft board definition
...
This is not final hardware and may change!
2022-11-15 20:22:20 -06:00
Scott Shawcroft
8e4e84c58b
Match channel number, not timer number
2022-11-15 16:51:47 -08:00
Scott Shawcroft
93ee54a2fb
Fix PWM status LED never_reset
...
It doesn't need never reset because the status LED is only active
when user code isn't.
This also fixes PWM never reset on espressif so that deinit will
undo it.
Fixes #6223
2022-11-15 16:14:31 -08:00
Jeff Epler
412df210ad
Merge remote-tracking branch 'origin/main' into build-python3x
2022-11-15 14:02:09 -06:00
Jeff Epler
14b20087b5
only ignore sdkconfig* files in the espressif port's top directory
...
danh and microdev1 noticed that this ignore pattern was over-broad
and caused added sdkconfig files in boards/ (which should be committed)
to be ignored and not proposed for addition by common tools like
git status, git gui, etc.
This pattern anchors the search so that it only matches in the
ports/espressif directory, so ports/espressif/sdkconfig is ignored
but ports/espressif/boards/example/sdkconfig is not ignored anymore
2022-11-14 11:29:18 -06:00
Jeff Epler
b8f5def985
return to using python 3.x for builds
2022-11-13 09:26:49 -06:00
Dan Halbert
6e9909c65e
Merge pull request #7198 from CRCibernetica/crcibernetica-ideaboard
...
Add new board crcibernetica-ideaboard
2022-11-13 09:12:43 -05:00
root
43566dec5b
allow inclusion of board while blocking build files
2022-11-13 12:13:32 +00:00
MicroDev
512cda8b73
enable microcontroller.cpu.temperature
on esp32s3
2022-11-12 10:03:00 +05:30
root
6c3b9b64da
add crcibernetica-ideaboard
2022-11-12 03:22:15 +00:00
dronecz
11ce074318
Update mpconfigboard.mk
2022-11-08 23:43:13 +01:00
dronecz
28e4834da8
Merge branch 'adafruit:main' into main
2022-11-08 01:02:46 +01:00
dronecz
a568a5c2e2
Rename sdkonfig to sdkconfig
2022-11-06 22:14:19 +01:00
dronecz
f1e658f8bb
Update sdkonfig
2022-11-06 22:07:12 +01:00
Jeff Epler
452ebe27ae
socketpool: make socket objects selectable
...
.. which will lead to them being usable in async contexts, pending
relevant changes in asyncio
2022-11-05 12:05:19 -05:00
dronecz
882100a87a
Create sdkonfig
2022-11-02 22:10:44 +01:00
dronecz
71b5e6088b
Update mpconfigboard.mk
2022-11-02 22:07:28 +01:00
dronecz
d6fe378456
Update mpconfigboard.h
2022-11-02 22:05:39 +01:00
dronecz
9b1181804c
Merge branch 'adafruit:main' into main
2022-10-30 19:16:05 +01:00
dronecz
468709abcc
Update pins.c
...
Hopefully last change nefore merge.
2022-10-30 18:51:46 +01:00
Dan Halbert
952812cdea
Merge pull request #7154 from dhalbert/alarm-lifetime
...
Save wake alarm info in static storage, simplifying recording of alarm
2022-10-30 12:28:50 -04:00
dronecz
ae8f415bd5
Update board.c
2022-10-30 02:17:38 +02:00
Neradoc
0aa41fa92e
change BOARD_USER_SAFE_MODE_ACTION into a separate sentence
2022-10-30 01:55:42 +02:00
Neradoc
934d2a7004
remove duplicate press boot button, it's already the default
2022-10-30 01:52:17 +02:00
dronecz
5d7c58da5d
Update pins.c
...
Attempt to fix build issue
2022-10-30 01:52:09 +02:00
Dan Halbert
ded134c346
store wake_alarm in a static object
2022-10-29 16:26:36 -04:00
Dan Halbert
a064b52ad7
CIRCUITPY_ESP32_CAMERA, not CIRCUITPY_USB_CAMERA
2022-10-29 10:13:11 -04:00
Dan Halbert
2ffd16a10c
Update mpconfigboard.mk
2022-10-29 09:27:09 -04:00
CDario
19fd9107a2
Merded with main branch
2022-10-29 07:46:54 +00:00
CDarius
7282bd9c9a
Removed boilerplate already handled by MP_WEAK definitions
...
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2022-10-29 09:34:45 +02:00
Dan Halbert
053d0fa8b5
Merge pull request #7145 from chukwon/fix_lolin_s3
...
fix and add lolin_s3 pins definition
2022-10-28 23:50:53 -04:00
Dan Halbert
d95a085be4
Merge pull request #7144 from CDarius/add_m5stack_core_safe_mode
...
Added safe mode button and fix coyright attribution
2022-10-28 15:59:59 -04:00
Dan Halbert
0221cc8df7
Merge remote-tracking branch 'adafruit/main' into alarm-lifetime
2022-10-28 14:11:32 -04:00
chukwon
9c66320474
fix and add lolin_s3 pins definition
2022-10-28 21:40:35 +08:00
CDario
b815a4cc5e
Added safe mode button and fix coyright attribution
2022-10-28 12:06:11 +00:00
CDario
27142d090b
Fixed copyright attribution
2022-10-28 11:08:30 +00:00
microDev
9a09c62eee
espressif add back ESP32_CAMERA
2022-10-28 13:55:33 +05:30
CDario
b276ed7af9
Fixed copyright attribution
2022-10-28 05:32:09 +00:00
CDario
b94447fde5
Added safe mode button
2022-10-28 05:00:54 +00:00
Dan Halbert
9307b62ad5
wip
2022-10-27 22:42:04 -04:00
Dan Halbert
8fe44a23d2
Merge pull request #7140 from dhalbert/esp32-s3-box-spiram-fix
...
correct SPIRAM settings for ESP32-S3-BOX
2022-10-27 16:09:59 -04:00
Dan Halbert
26688fa826
correct SPIRAM settings for ESP32-S3-BOX
2022-10-27 14:45:29 -04:00
MicroDev
baa44a2dba
Merge pull request #7133 from CDarius/fix_m5stack_core_basic
...
Fixed wrong configuration in sdkconfig
2022-10-27 18:34:07 +05:30
dronecz
d774f3d34f
Update board.c
...
Fix for CLI
2022-10-27 15:02:44 +02:00
dronecz
0e0c106740
Add Maker badge board
2022-10-27 01:06:38 +02:00
CDario
cdbad53649
Fixed wrong configuration in sdkconfig
2022-10-26 20:06:27 +00:00
CDario
be07722bbc
Added board M5Stack Atom Lite
2022-10-26 19:57:23 +00:00
Dan Halbert
5ebdf281cb
Merge pull request #7125 from dhalbert/esp-pin-alarm-fix
...
Fix setup of Espressif PinAlarms
2022-10-26 15:24:58 -04:00
Jeff Epler
366cf4a048
Merge pull request #7113 from CDarius/m5stack_core_fire
...
Added M5Stack Core Fire board
2022-10-26 09:10:50 -05:00
Jeff Epler
76ed0445bb
Merge pull request #7120 from CDarius/m5stack_core_basic
...
Added M5Stack Core Basic board
2022-10-26 09:09:11 -05:00
Dan Halbert
56d8b9451f
don't wait for pulls in PinAlarm
2022-10-25 20:42:08 -04:00
Dan Halbert
e49cd00d60
fix debug UART pins on Metro ESP32-S2
2022-10-25 20:41:08 -04:00
Georg Bøe
032bf63f2d
Raise error with positive code in recv_into for espressif
2022-10-25 22:53:01 +02:00
CDario
f6e2369bbd
Removed not available UART in board
2022-10-25 16:53:42 +00:00
CDario
f9983ff556
Added M5Stack Core Basic board
2022-10-25 16:42:14 +00:00
CDario
c8191e8830
Better pins definitions
2022-10-25 11:41:39 +00:00
CDario
5fa67548ea
Added missing sdkconfig file
2022-10-24 20:03:06 +00:00
CDario
39171d7626
Removed unnecessary compiler flags
2022-10-24 19:21:26 +00:00
CDario
beab76c325
Added M5Stack Core Fire board
2022-10-24 18:38:30 +00:00
MicroDev
773bb99c96
Merge pull request #7099 from Neradoc/add-m5stampc3-board
...
Add M5Stack Stamp C3 Board
2022-10-23 00:05:44 +05:30
Neradoc
3c5bf4e852
Update ports/espressif/boards/m5stack_stamp_c3/mpconfigboard.mk
...
Co-authored-by: MicroDev <70126934+MicroDev1@users.noreply.github.com>
2022-10-22 16:23:27 +02:00
microDev
8f0a674a1b
coproc module enhancements
...
- add light and pretend-to-deep sleep support
- check coproc running status
2022-10-22 19:08:49 +05:30
microDev
83b54d003d
implement more checks in coproc module
...
- check memory address range
- check firmware size at an earlier stage
2022-10-22 19:05:48 +05:30
askpatrickw
d147712522
Add M5 Stamp C3 board
2022-10-22 00:45:54 +02:00
Dan Halbert
da7edf80e0
Merge pull request #7091 from MicroDev1/corpoc
...
Add `CoprocAlarm`
2022-10-21 13:36:01 -04:00
microDev
5b2728bd65
reorganize espressif mpconfigport.mk
2022-10-21 17:35:59 +05:30
microDev
2285dd1838
update espressif risc-v build configuration
...
- use optimization level O2
- explicitly state risc-v arch
2022-10-21 17:11:56 +05:30
microDev
b33a2b45dc
add coproc alarm
2022-10-20 18:38:20 +05:30
microDev
5232e3f6c3
add coproc module
2022-10-20 09:09:44 +05:30
microDev
fb91c2f436
cleanup sdkconfig-esp32.defaults
...
- remove log level: set by -opt or -debug sdkconfig
- remove lwip hostname: set by board specific sdkconfig
2022-10-17 22:05:20 +05:30
microDev
434c6d5604
fix uf2 bootloader condition in makefile
2022-10-17 19:45:48 +05:30
microDev
5114ae7a31
fix 2MB-no-uf2
partition table
2022-10-17 19:44:08 +05:30
microDev
f86377e0f1
fix 4MB-no-uf2
partition table
2022-10-17 19:42:41 +05:30
microDev
e7b25dbf73
improve dualbank
errors
2022-10-15 13:20:10 +05:30
Dan Halbert
0ce84b27e8
Merge pull request #7053 from CytronTechnologies/add-pin-definitions-maker-feather-aiot-s3
...
Added Pin Definitions for Cytron Maker Feather AIoT S3
2022-10-14 11:31:53 -04:00
Kong Wai Weng
fc00a6675e
Added some pin definitions to match with the Arduino core.
2022-10-14 17:25:24 +08:00
microDev
66b539d768
fix espressif log level
2022-10-14 11:33:10 +05:30
Dan Halbert
7e4b2a09eb
Merge pull request #7000 from MicroDev1/storage-extend
...
Add Storage Extension Support
2022-10-13 10:05:55 -04:00
microDev
728fea4ca4
add storage extension python api
2022-10-13 09:53:33 +05:30
Dan Halbert
822e806f03
Merge pull request #7031 from BPI-STEAM/CircuitPython-main-bpi-picow-dev
...
Add BananaPi BPI-PicoW-S3 .
2022-10-11 22:53:37 -04:00
Wind-stormger
376df8ec7e
Add BananaPi BPI-PicoW-S3 .
...
Adds support for the BananaPi BPI-PicoW-S3 Boards.
Based on esp32s3 chip.
With one WS2812 LED, one monochrome LED, one ceramic antenna.
Support double-reset to tinyUF2.
2022-10-12 09:11:25 +08:00
Jeff Epler
c98174eea5
Add support for SSL client certificate (load_cert_chain)
...
Tested with badssl.com:
1. Get client certificates from https://badssl.com/download/
2. Convert public portion with `openssl x509 -in badssl.com-client.pem -out CIRCUITPY/cert.pem`
3. Convert private portion with `openssl rsa -in badssl.com-client.pem -out CIRCUITPY/privkey.pem` and the password `badssl.com`
4. Put wifi settings in CIRCUITPY/.env
5. Run the below Python script:
```py
import os
import wifi
import socketpool
import ssl
import adafruit_requests
TEXT_URL = "https://client.badssl.com/ "
wifi.radio.connect(os.getenv('WIFI_SSID'), os.getenv('WIFI_PASSWORD'))
pool = socketpool.SocketPool(wifi.radio)
context = ssl.create_default_context()
requests = adafruit_requests.Session(pool, context)
print(f"Fetching from {TEXT_URL} without certificate (should fail)")
response = requests.get(TEXT_URL)
print(f"{response.status_code=}, should be 400 Bad Request")
input("hit enter to continue\r")
print("Loading client certificate")
context.load_cert_chain("/cert.pem", "privkey.pem")
requests = adafruit_requests.Session(pool, context)
print(f"Fetching from {TEXT_URL} with certificate (should succeed)")
response = requests.get(TEXT_URL)
print(f"{response.status_code=}, should be 200 OK")
```
2022-10-10 15:10:53 -05:00
Dan Halbert
21c0c4c1a6
update esp-idf; allow start/stop channels in wifi scanning
2022-10-07 15:29:09 -04:00
Dan Halbert
8d82e4ba5f
Merge pull request #7008 from MicroDev1/patch
...
Cleanup `mpconfigboard.mk` of espressif boards
2022-10-06 11:20:11 -04:00
Dan Halbert
e0517c7379
Merge pull request #6999 from jepler/picow-ssl
...
pico_w: implement ssl with caveats
2022-10-06 10:51:36 -04:00
microDev
4f753251db
cleanup mpconfigboard.mk
of espressif boards
...
- move `INTERNAL_FLASH_FILESYSTEM` to `mpconfigport.mk`
- move `LONGINT_IMPL` to `mpconfigport.mk`
- move `CFG_TUD_TASK_QUEUE_SZ` to `Makefile`
2022-10-06 16:15:01 +05:30
microDev
b0ef35d50b
update storage extension implementation
2022-10-06 09:19:56 +05:30
Dan Halbert
296960dd89
shorten board.c
2022-10-05 20:23:19 -04:00
Neradoc
d31acdef6c
we don't use AUTORESET_DELAY_MS
2022-10-06 02:19:48 +02:00
Jeff Epler
a64c1a11c5
move nina-fw certificates so it can be shared with other ports
2022-10-05 14:56:25 -05:00
Jeff Epler
09023abcd2
Update espressif function prototype to match
2022-10-05 14:56:25 -05:00
Kyle Mohr
dd5f9411c8
Merge branch 'adafruit:main' into main
2022-10-05 13:44:12 -05:00
Jeff Epler
dcb650c513
pico w: add ssl module
...
Note: at this time, the ssl module on pico_w never verifies the server
certificate. This means it does not actually provide a higher security
level than regular socket / http protocols.
2022-10-05 13:12:43 -04:00
microDev
2618e11002
use next update partition
2022-10-04 19:42:48 +05:30
microDev
9fe7308b88
conditionally add storage extension
2022-10-04 17:26:28 +05:30
microDev
7d8ff20dac
add initial storage extension support
2022-10-04 17:25:48 +05:30
Kyle Mohr
02e115cbc2
Update mpconfigboard.mk
2022-10-04 00:03:59 -05:00
Kyle Mohr
330b96726a
add newlines to end of files
2022-10-04 04:56:31 +00:00
Kyle Mohr
5268ef01c9
Utilize VID/PID from native USB port
2022-10-03 23:45:28 -05:00
Kyle Mohr
cffc1bfcab
sdkconfig didn't get committed for some reason...
2022-10-03 22:54:31 -05:00
Kyle Mohr
a948dc399b
add esp32-s2-devkitc-1-n8r2 variant
2022-10-04 03:51:51 +00:00
Dan Halbert
90f6096955
fix ai-thinker creation ids; fix some typos elsewhere
2022-10-03 15:29:03 -04:00
Dan Halbert
ad79f595a5
Merge pull request #6974 from MicroDev1/patch
...
Couple Minor Fixes
2022-10-01 13:12:01 -04:00
microDev
7eaeca4eb3
update espressif port's .gitignore
2022-10-01 09:14:48 +05:30
Dan Halbert
f9e655da47
Merge pull request #6962 from dhalbert/espressif-deep-sleep-hold-pins
...
Espressif: do not hold pins during deep sleep if not necessary
2022-09-30 22:20:44 -04:00
Jeff Epler
907c5d387f
Tweak black_bindings
...
Originally, black_bindings found each contiguous "//|" block and sent
it to black independently. This was slower than it needed to be.
Instead, swap the comment prefix: when running black, take off
"//|" prefixes and put "##|" prefixes on all un-prefixed lines.
Then, after black is run, do the opposite operation
This more than doubles the overall speed of "pre-commit run --all",
from 3m20s to 55s CPU time on my local machine (32.5s to under 10s
"elapsed" time)
It also causes a small amount of churn in the bindings, because
black now sees enough context to know whether one 'def' follows another
or ends the 'def's in a 'class'. In the latter case, it adds an extra
newline, which becomes a "//|" line.
I'm less sure why a trailing comma was omitted before down in
rp2pio/StateMachine.c but let's roll with it.
2022-09-30 11:18:13 -05:00
Dan Halbert
9d1b12066d
Espressif: do not hold pins during deep sleep if not necessary
2022-09-29 20:11:48 -04:00
Dan Halbert
db065a299f
Merge pull request #6933 from jepler/ 🥧 🐮
...
Implement a useful subset of `wifi` and `socketpool` modules on 🥧 🐮
2022-09-28 18:09:24 -04:00
Jeff Epler
72bce51ce3
restore submodule commits
2022-09-28 14:48:54 -05:00
Jeff Epler
6c3cdceb45
Implement scan, connect, ping
...
My pings go out, and then they come back
```py
import os
import wifi
import ipaddress
wifi.radio.connect(os.getenv('WIFI_SSID'), os.getenv('WIFI_PASSWORD'))
ipv4 = ipaddress.ip_address("8.8.4.4")
print("Ping google.com: %f ms" % (wifi.radio.ping(ipv4)*1000))
```
2022-09-28 10:06:33 -05:00
Jeff Epler
346fff2e7c
cyw43 basic gpio support, hwaddr in boot_out
2022-09-28 10:06:33 -05:00
Jeff Epler
b2cc8d2aad
run black_bindings across all bindings
2022-09-27 15:21:42 -05:00
Dan Halbert
de80db681f
Merge pull request #6915 from dhalbert/ringbuf-cleanup
...
ringbuf cleanup
2022-09-25 17:50:21 -04:00
Dan Halbert
d44edc4a0c
Merge pull request #6937 from jepler/issue6839
...
Use new unique ID for this board
2022-09-24 23:55:06 -04:00
Jeff Epler
f12136af7f
esp32-camera: sync doc with code.
...
Closes : #6836
2022-09-23 08:54:00 -05:00
Jeff Epler
5bbbca4d44
lock and unlock i2c bus around any ops that might access it
2022-09-22 17:03:05 -05:00
Jeff Epler
a769beed3f
Use new unique ID for this board
2022-09-22 16:23:38 -05:00
Dan Halbert
ea15a9118a
ringbuf cleanup
2022-09-21 10:03:05 -04:00
Jeff Epler
1091d51af2
Merge pull request #6918 from UnexpectedCircuitPython/main
...
Added support for Unexpected Maker TinyPICO (V2/V3) and TinyPICO Nano
2022-09-17 21:39:17 -04:00
Seon Rozenblum
268b3f0dde
Added support for Unexpected Maker TinyPICO (V2/V3) and TinyPICO Nano boards using ESP32-PICO-D4
2022-09-18 09:49:30 +10:00
Paul Price
b2ffda219a
updated a pin definition
2022-09-17 16:53:24 -04:00
MicroDev
4a69dfa50c
Merge pull request #6907 from dhalbert/preserve-pins-on-deep-sleep
...
allow preserving pin state during deep sleep
2022-09-16 17:52:04 +05:30
Dan Halbert
4df8a51982
Remove unneeded workaround for Feather ESP32-S2 TFT
2022-09-15 20:06:47 -04:00
Dan Halbert
60f43b1703
allow preserving pin state during deep sleep
2022-09-15 17:35:14 -04:00
Wind-stormger
56c5f1eedf
Add BananaPi BPI-Leaf-S3.
...
Based on esp32s3, all available pins are drawn.
2M PSRAM, 8M FLASH.
A JST SH 4-pin Connector can be used for STEMMA QT / Qwiic.
A MX 1.25mm 2-Pin Connector Lithium battery power supply.
A WS2812 LED.
2022-09-15 14:18:24 +08:00
Dan Halbert
14fc4a0797
Merge pull request #6898 from dhalbert/espressif-pwmout-reset
...
Espressif pwmout reset fixes
2022-09-14 18:47:05 -04:00
Dan Halbert
ae64f9fd78
Merge pull request #6899 from BPI-STEAM/CircuitPython-main-BPI-BIT-S2-PR
...
Add BananaPi BPI-Bit-S2 .
2022-09-13 23:02:46 -04:00