9561 Commits

Author SHA1 Message Date
Dominic Davis-Foster
e1046b1050
Add support for the 16MB WeAct Studio Pico 2022-11-14 14:04:07 +00:00
Dan Halbert
8f414eb4ee
Merge pull request #7179 from jepler/picow-voltage-monitor
Add ability to read VOLTAGE_MONITOR on Pico W
2022-11-13 22:40:54 -05:00
Jeff Epler
f3169246ba
Implement chained exceptions
This adds the __cause__, __context__ and __suppress_context__
members to exception objects and makes e.g., `raise exc from cause`
set them in the same way as standard Python.
2022-11-13 19:52:50 -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
Dan Halbert
c96208902f
Merge pull request #7199 from MicroDev1/espressif
Enable `microcontroller.cpu.temperature` on esp32s3
2022-11-12 11:16:45 -05:00
Jeff Epler
e4d620f055
make whitespace match 2022-11-12 09:17:52 -06:00
Jeff Epler
78fc43baab
raspberrypi: Make port_idle_until_interrupt work
This needs thorough testing before it's merged, as we tried
and reverted this once before (#5341 and #5356).

I think that besides checking for tinyusb having "something to do",
the fact that `port_interrupt_after_ticks` and `port_disable_tick`
weren't implemented that was causing a secondary problem.

I've tested this on a pico w over reboot-cycles and ctrl-c-cycles,
with and without drive automounting, with and without serial repl open,
and on a power-only connection.

I didn't notice the problem reported in #5356 after merely implementing
port_idle_until_interrupt; but I did notice that sleeps in general would
take over-long until "something" (like writing to the USB drive) happened;
I think "something" was probably calling port_enable_tick(). When this
problem was happening, sleeps would take a lot longer; for instance,
`sleep(.001)` would take about 1/20s and `sleep(.1)` would take about 1/7s.
2022-11-12 09:16:41 -06:00
Dan Halbert
9e94d7e758
Merge pull request #7196 from dhalbert/rp2-pin-alarm-race
RP2040: ignore pin changes before deep sleep
2022-11-12 09:36:15 -05: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
Dan Halbert
983502d6e3 ignore pin changes before sleep 2022-11-11 15:31:49 -05:00
Jeff Epler
f5c637dc10
Add adafruit_pixelmap.PixelMap
.. a fast helper for animations. It is similar to and inspired by the
PixelMap helper in Adafruit LED Animation library, but with an extremely
fast 'paste' method for setting a series of pixels. This is a common
operation for many animations, and can give a substantial speed improvement.

It's named `adafruit_pixelmap` so that we can package a compatible version
in pure Python for systems that can't fit it in C in flash, or for
Blinka.

This is a proof of concept and can make a very fast comet animation:
```python
import time
import adafruit_pixelbuf
import adafruti_pixelmap
import board
import neopixel
from supervisor import ticks_ms
from adafruit_led_animation.animation.solid import Solid
from adafruit_led_animation import color

pixel_pin = board.GP0
pixel_num = 96

pixels = neopixel.NeoPixel(pixel_pin, pixel_num, brightness=1, auto_write=False, pixel_order="RGB")

evens = adafruit_pixelmap.PixelMap(pixels, tuple(range(0, pixel_num, 2)))
odd_indices = tuple((i, i+2) for i in range(1, pixel_num, 4))
print(odd_indices)
odds = adafruit_pixelbuf.PixelMap(pixels, odd_indices)
assert len(odds) == len(odd_indices)


comet_length = 16

comet1 = [color.calculate_intensity(color.GREEN, ((1+i) / comet_length) ** 2.4)
        for i in range(comet_length)]
comet2 = [color.calculate_intensity(color.PURPLE, ((1+i) / comet_length) ** 2.4)
        for i in range(comet_length)]

pos1 = 0
pos2 = 96//4

while True:
    evens.paste(comet1, pos1, wrap=True, reverse=False, others=0)
    pos1 = (pos1 + 1) % len(evens)

    odds.paste(comet2, pos2, wrap=True, reverse=True, others=0)
    pos2 = (pos2 - 1) % len(odds)
    pixels.show()

    m = ticks_ms()
    if m % 2000 > 1000:
        time.sleep(.02)
```
2022-11-11 07:54:33 -06:00
Bill Sideris
e6a4e2982f
Update ports/raspberrypi/common-hal/wifi/Radio.c
u32_t -> uint32_t

Co-authored-by: MicroDev <70126934+MicroDev1@users.noreply.github.com>
2022-11-11 14:40:47 +02:00
Bill Sideris
0bf9df232a
fix debug 2022-11-11 14:17:57 +02:00
dronecz
a37c36c383
Merge branch 'adafruit:main' into main 2022-11-10 21:47:23 +01:00
paul-1
11f1174658
picow: Change init to use country code routine.....place holder for future improvements to allow country code setting. 2022-11-10 17:24:09 +02:00
paul-1
851c2cd8cb
picow: Add channel setting when starting AP 2022-11-10 17:23:59 +02:00
paul-1
8fdb2df0bf
picow: enable dhcpserver for apmode. 2022-11-10 17:23:38 +02:00
Bill Sideris
25c0a0aca9
Merge branch 'adafruit:main' into picow-ap 2022-11-10 17:04:21 +02:00
Dan Halbert
d90bc1760f
Merge pull request #7188 from kylemccreery/pillbug
Add new board PillBug
2022-11-10 09:10:40 -05:00
Kyle McCreery
1f332e7007 Adding pillbug initial commit 2022-11-09 23:15:38 -05:00
Dan Halbert
e6936decac
Merge pull request #7169 from blues/pdmin
STM32L4 PDMIn support
2022-11-09 14:19:51 -05:00
dronecz
11ce074318
Update mpconfigboard.mk 2022-11-08 23:43:13 +01:00
Matthew McGowan
97f693d2d8 docs(swan_r5): updated copyright notices 2022-11-08 14:18:54 -08:00
Matthew McGowan
843d6b42f9 formatting(swan_r5): lexicographically sorted the board module names in the swan_r5 makefile include [ci-skip][skip-ci]. Skip CI since this is a cosmetic change only. 2022-11-08 12:04:30 -08:00
Jeff Epler
7f36a365cf
delay 100us for analog voltage to stabilize
.. otherwise, depending on the prior state of the pin as a digital
input, the value read could be 20% low.
2022-11-08 10:43:14 -06:00
Jeff Epler
09f6919c93
Add ability to read VOLTAGE_MONITOR on Pico W
Because this must be treated like an in-use pin for all other purposes,
unfortunately a special case must be added in shared-bindings.

Multiple AnalogIn objects for VOLTAGE_MONITOR can be created (because
in use tracking isn't working) but this causes no harm.

Testing performed: Read the monitor, then imported wifi. When the
pin state was insufficiently restored, the second step would fail
with debug messages about do_ioctl timeout.

```
import analogio, board
a = analogio.AnalogIn(board.VOLTAGE_MONITOR)
print(a.value)
import wifi
```

Closes: #7020
2022-11-08 09:37:15 -06: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
Matthew McGowan
ad9db01f5f Implements PDMIn for STM32L4 using the SAI peripheral and decimation/filtering in software. 2022-11-04 17:27:08 -07:00
Petr Sedlacek
f3ec46bbb5 Add missing pin definitions for 42. Keebs Frood 2022-11-04 15:33:16 +01: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
Jeff Epler
403a5b2681
Merge pull request #7126 from jepler/scorpio
add feather rp2040 scorpio
2022-11-02 14:47:40 -05:00
Rose Hooper
8933f93439 simplify and use columns for boardlist 2022-11-01 11:00:48 -04:00
Rose Hooper
36c4cc7d30 fix output layout of board list 2022-11-01 00:18:46 -04:00
Rose Hooper
dec128f508 add boards list to make error message 2022-10-31 23:57:59 -04: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