23600 Commits

Author SHA1 Message Date
Jeff Epler
489163b74e mimxrt1011: pwmio: Enable basic PWMOut functionality
After this change, the following program works for me on the MIMXRT1010-EVK:
```python
import pwmio
import board

p = pwmio.PWMOut(board.D13, frequency=1_000_000, variable_frequency=True)
p.duty_cycle = 32868

while True:
    pass
```

Querying and varying the duty_cycle and frequency work as well.

The lowest frequency obtainable is about 2kHz; there is an additional
divider which would allow lower PWM frequencies (I think 1kHz is important
for servos?)

Something odd happens with very low duty cycles, such as
```python
>>> p.frequency = 2000
>>> p.duty_cycle = 2
```
instead of a symmetrical waveform, it's asymmetrical.  With `duty_cycle=4`,
the effect disappears.  The reason for this is probably hidden in the
datasheet, but could affect servos or other things that count pulse
widths.
2021-04-01 10:06:59 -05:00
microDev
1ae6f362e1 clone repo before installing deps
closes #4524
2021-04-01 10:53:06 -04:00
Hosted Weblate
57011c8611 Merge remote-tracking branch 'origin/main' into main 2021-04-01 16:50:34 +02:00
Jonny Bergdahl
41eb9cb255
Translated using Weblate (Swedish)
Currently translated at 100.0% (969 of 969 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/sv/
2021-04-01 16:50:34 +02:00
Wellington Terumi Uemura
fbc1b467aa
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (969 of 969 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/pt_BR/
2021-04-01 16:50:33 +02:00
Hugo Dahl
6b22e8fbc0
Translated using Weblate (French)
Currently translated at 100.0% (969 of 969 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/fr/
2021-04-01 16:50:33 +02:00
Dan Halbert
7ad6058837
Merge pull request #4528 from adafruit/re-arrange-ci-task
Re-Arrange CI Task
2021-04-01 10:50:26 -04:00
microDev
77889fe70c
clone repo before installing deps
closes #4524
2021-04-01 18:00:56 +05:30
Tsutomu IKEGAMI
171820e53f Fix format 2021-04-01 20:45:15 +09:00
Tsutomu IKEGAMI
5f77d07760 Fix format 2021-04-01 20:26:10 +09:00
Tsutomu IKEGAMI
3c4d763fef Fix format. 2021-04-01 18:04:33 +09:00
Tsutomu IKEGAMI
7810cb275c Add two escape sequences to terminalio.Termial:
- ESC[yy;xxH : move cursor to (xx, yy)
- ESC[2J     : clear screen
2021-04-01 17:33:57 +09:00
Tsutomu IKEGAMI
be50732515 Fix SD_DET pin assignment of seeduino_wio_terminal. 2021-04-01 17:09:56 +09:00
Damien George
d87f42b0e5 examples/usercmodules: Simplify user C module enabling.
It's a bit of a pitfall with user C modules that including them in the
build does not automatically enable them.  This commit changes the docs and
examples for user C modules to encourage writers of user C modules to
enable them unconditionally.  This makes things simpler and covers most use
cases.

See discussion in issue #6960, and also #7086.

Signed-off-by: Damien George <damien@micropython.org>
2021-04-01 16:27:38 +11:00
Michael O'Cleirigh
ec79e44502 esp32: Fix multiple definition errors with mp_hal_stdout_tx functions.
It was noticed that the esp32 port didn't build ulab correctly.  The
problem was a multiple defintion of the 'mp_hal_stdout_tx_str' and
'mp_hal_stdout_tx_strn_cooked' functions.

They were defined in stdout_helpers.c but also in the
ports/esp32/mphalport.c.

Fixed by removing stdout_helpers.c from the build.

Signed-off-by: Michael O'Cleirigh <michael.ocleirigh@rivulet.ca>
2021-04-01 15:44:25 +11:00
Michael O'Cleirigh
17b1f82121 tools/ci.sh: Build user C modules for esp32.
Builds the esp32 port against the example C and CXX modules.

Signed-off-by: Michael O'Cleirigh <michael.ocleirigh@rivulet.ca>
2021-04-01 15:44:10 +11:00
Michael O'Cleirigh
0ccd9e08aa esp32: Restore USER_C_MODULE support with new CMake build system.
Support for User C and C++ modules was lost due to upgrading the esp32 to
the latest CMake based IDF from the GNUMakefile build process.

Restore the support for the esp32 port by integrating with the approach
recently added for the rp2 port.

Signed-off-by: Michael O'Cleirigh <michael.ocleirigh@rivulet.ca>
2021-04-01 15:43:15 +11:00
Hosted Weblate
f4bf8e468d
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/
2021-04-01 03:24:29 +02:00
Dan Halbert
d0ba75e6dc
Merge pull request #4522 from tannewt/ble_fixup
Fix central pairing and crash on clear
6.2.0-rc.0
2021-03-31 21:24:19 -04:00
Scott Shawcroft
0752bbd5fd
Fix central pairing and crash on clear
The list_clear would crash if we tried to clear a NULL list. (It
can happen if we haven't tried to discover any services.)
2021-03-31 16:04:04 -07:00
Dan Halbert
3e8e683a73
Merge pull request #4521 from dhalbert/add-en_GB
add en_GB translation to builds
2021-03-31 16:06:43 -04:00
Dan Halbert
0e915dc3fb
Merge pull request #4518 from jepler/fix-bogus-assertion
mimxrt10xx: Fix bogus assertion.
2021-03-31 15:53:42 -04:00
Dan Halbert
c41639f30a add en_GB translation to builds 2021-03-31 15:09:55 -04:00
Scott Shawcroft
5d8bdd20b4
Merge pull request #4517 from dhalbert/no-remote-wakeup
Turn off remote wakeup in USB configuration descriptor
2021-03-31 08:55:50 -07:00
Scott Shawcroft
0582d639c1
Merge pull request #4519 from jepler/rasberrypi-minconfig
raspberypi: Allow mpconfigboard to override additional items
2021-03-31 08:48:41 -07:00
Jeff Epler
cce8b2be07 raspberypi: Allow mpconfigboard to override additional items
This allows more options to be overridden to 0 in an mpconfigboard.mk.

Improved:
 * FRAMEBUFFERIO, FULL_BUILD, BITOPS, PWMIO, RGBMATRIX, OTARYIO, PULSEIO, WATCHDOG

Still problematic (pull requests welcome):
 * RP2PIO & NEOPIXEL_WRITE, possibly only if a status neopixel is defined
 * BITBANGIO, possibly only if BUSIO is enabled
 * RTC

Incidentally, with RP2PIO & NEOPIXEL_WRITE, BITBANGIO, and RTC re-enabled I get
```
323956 bytes used, 720524 bytes free in flash firmware space out of 1044480 bytes (1020.0kB).
12072 bytes used, 250072 bytes free in ram for stack and heap out of 262144 bytes (256.0kB).
```

Closes #4515
2021-03-31 09:40:48 -05:00
Jeff Epler
cb29ad0846 mimxrt10xx: Fix bogus assertion.
.. as noted by @d-c-d
2021-03-31 09:21:08 -05:00
Dan Halbert
c9f2591d7c Turn off remote wakeup in USB configuration descriptor 2021-03-31 10:12:16 -04:00
Liam Fraser
ca3d51f122 rp2: Don't advertise remote wakeup for USB serial.
This USB feature is currently not supported.  With this flag enabled (and
the feature not implemented) the USB serial will stop working if there is a
delay of more than about 2 seconds between messages, which can occur with
USB autosuspend enabled.

Fixes issue #6866.
2021-03-31 13:50:21 +11:00
Scott Shawcroft
7471e978bb
Merge pull request #4509 from lesamouraipourpre/time-error-param
Add a missing parameter to an error message (Fixes #4505)
2021-03-30 10:55:08 -07:00
Scott Shawcroft
ea7ca8ae96
Merge pull request #4513 from jepler/mimxrt10xx-uart-fault
mimxrt1011: UART: Add additional error checking
2021-03-30 10:54:05 -07:00
Jeff Epler
71eee45a37 mimxrt1011: UART: Add additional error checking
.. and make the 'invalid pin' messages standard.

Closes #4502
2021-03-30 10:17:48 -05:00
Jeff Epler
2453d70e4c
Merge pull request #4511 from jepler/refine-bug-template
Remove sentence about a link that fixes a problem
2021-03-30 08:30:11 -05:00
Phil Howard
5976ea02a5 tools/ci.sh: Add CI for CMake USER_C_MODULE support.
Builds the rp2 port against the example C and CXX modules.

Signed-off-by: Phil Howard <phil@pimoroni.com>
2021-03-31 00:28:52 +11:00
Phil Howard
8e5756e2b6 docs/develop/cmodules.rst: Document C-modules and micropython.cmake.
Documents the micropython.cmake file required to make user C modules
compatible with the CMake build system.

Signed-off-by: Phil Howard <phil@pimoroni.com>
2021-03-31 00:28:21 +11:00
Phil Howard
cc497d4c6a examples/usercmodule: Add micropython.cmake to the C and CPP examples.
examples/usercmodule/micropython.cmake:

Root micropython.cmake file is responsible for including modules.

examples/usercmodule/cexample/micropython.cmake:
examples/usercmodule/cppexample/micropython.cmake:

Module micropython.cmake files define the target and link it to usermod.

Signed-off-by: Phil Howard <phil@pimoroni.com>
2021-03-31 00:27:46 +11:00
Phil Howard
0cf12dd59c rp2: Add support for USER_C_MODULES to CMake build system.
The parts that are generic are added to py/ so they can be used by other
ports that use CMake.

py/usermod.cmake:

* Creates a usermod target to hang user C/CXX modules from.
* Gathers sources from user C/CXX modules and libs for QSTR scan.

ports/rp2/CMakeLists.txt:

* Includes py/usermod.cmake.
* Links the resulting usermod library to the MicroPython target.

py/mkrules.cmake:

Add cxxflags to qstr.i.last custom command for CXX modules:

* MICROPY_CPP_FLAGS so CXX modules will find includes.
* -DNO_QSTR to fix fatal error missing "genhdr/qstrdefs.generated.h".

Usage:

The rp2 port can be linked against user C modules by running:

make USER_C_MODULES=/path/to/module/micropython.cmake

CMake will print a list of included modules.

Co-authored-by: Graham Sanderson <graham.sanderson@raspberrypi.org>
Co-authored-by: Michael O'Cleirigh <michael.ocleirigh@rivulet.ca>
Signed-off-by: Phil Howard <phil@pimoroni.com>
2021-03-31 00:26:01 +11:00
Phil Howard
ccc388f157 rp2/mpthreadport.h: Cast core_state to _mp_state_thread_t.
Required for user C++ code to build successfully against ports/rp2.

Signed-off-by: Phil Howard <phil@pimoroni.com>
2021-03-31 00:25:51 +11:00
Jeff Epler
1bb5bed80f Remove sentence about a link that fixes a problem
Multiple times it has occurred that people left this line in a PR by mistake.  it makes it look like they failed to include some useful information, but really is just a misunderstanding.  Delete the text to reduce the chance of misunderstanding.
2021-03-29 21:31:00 -05:00
Jeff Epler
38382bfd12
Merge pull request #4507 from Neradoc/fix-alias-boards-modules
fix list of modules for alias boards
2021-03-29 17:42:34 -05:00
Scott Shawcroft
580456719c
Merge pull request #4508 from dhalbert/rp2040-calc-sda-hold-time
Calculate RP2040 SDA hold time
2021-03-29 15:09:30 -07:00
James Carr
65759622ea Add a missing parameter to an error message (Fixes #4505) 2021-03-29 23:03:14 +01:00
Dan Halbert
840373f5c2
Merge pull request #4495 from tyomitch/patch-1
[ure] to save space, disable debug dumps by default
2021-03-29 16:08:56 -04:00
Dan Halbert
b274a0497b
Merge pull request #4501 from jepler/rgbmatrix-memoryview
RGBMatrix: fix memoryview(matrix)
2021-03-29 16:07:22 -04:00
Dan Halbert
8e0834d74c Calculate RP2040 SDA hold time 2021-03-29 14:40:13 -04:00
Lucian Copeland
33418ce826 Merge remote-tracking branch 'upstream/main' into stm-alarm 2021-03-29 13:39:14 -04:00
Neradoc
38072a139e no default value for support_matrix[board_id]
will raise an error during build if things as not as expected
as suggested by @jepler
2021-03-29 19:03:35 +02:00
Lucian Copeland
d35a307ffa Merge branch 'sleep-api-update' into stm-alarm 2021-03-29 12:27:25 -04:00
Jeff Epler
f73625877d
Merge pull request #4490 from weblate/weblate-circuitpython-main
Translations update from Weblate
2021-03-29 08:02:17 -05:00
Neradoc
f143e5d049 fix list of modules for alias boards 2021-03-29 12:25:25 +02:00