| Age | Commit message (Collapse) | Author |
|
|
|
Updates the tests to use non-bitmask events, event renames, as well as some
of the new completion events to improve reliability of the tests.
|
|
On btstack there's no status associated with the read result, it comes
through as a separate event. This allows you to detect read failures or
timeouts.
|
|
In most situations this is a more efficient way of going straight to the
service and characteristic you need.
|
|
Without this it's difficult to implement a state machine correctly if the
desired services are not found.
|
|
There doesn't appear to be any use for only triggering on specific events,
so it's just easier to number them sequentially. This makes them smaller
values so they take up only 1 byte in the ringbuf, only 1 byte for the
opcode in the bytecode, and makes room for more events.
Also add a couple of new event types that need to be implemented (to avoid
re-numbering later).
And rename _COMPLETE and _STATUS to _DONE for consistency.
In the future the "trigger" keyword argument can be reinstated by requiring
the user to compute the bitmask, eg:
ble.irq(handler, 1 << _IRQ_SCAN_RESULT | 1 << _IRQ_SCAN_DONE)
|
|
This commit implements an LED class with rudimentary parts of a pin C API
to support it. The LED class does not yet support setting an intensity.
This LED class is put in the machine module for the time being, until a
better place is found.
One LED is supported on TEENSY40 and MIMXRT1010_EVK boards.
|
|
|
|
Changes are:
- string0 is no longer built when building for host as the target, because
it'll be provided by the system libc and may in some cases clash with the
system one (eg on OSX).
- mp_int_t/mp_uint_t are defined in terms of intptr_t/uintptr_t to support
both 32-bit and 64-bit builds.
- Configuration values which are the default in py/mpconfig.h are removed
from mpconfigport.h to make the configuration a bit more minimal, eg as
a better starting point for new ports.
|
|
|
|
Fixes issue #6089.
|
|
Fixes #3116.
|
|
New releases have moved from launchpad to developer.arm.com.
|
|
These features are now supported (although machine.ADC is recommended over
pyb.ADC).
|
|
|
|
|
|
|
|
For now SYSCLK cannot be changed and must remain at 64MHz.
|
|
Just disallow changing the rxbuf which will be some static RAM (can't free
it and soft-reset would lose any dynamically allocated buffer).
|
|
|
|
Fixes issue #6069.
|
|
This adds a new command line option `-v` to `tools/codeformat.py` to enable
verbose printing of all files that are scanned.
Normally `uncrustify` and `black` are called with the `-q` option so
setting verbose suppresses the `-q` option and on `black` also enables the
`-v` option which makes it print out all file names matching the filter
similar to how `uncrustify` does by default.
|
|
The powerpc port can be built with two different UART drivers, so build
both in CI.
The default compiler is now powerpc64le-linux-gnu- so it does not need to
be specified on the command line.
|
|
Microwatt may have firmware that places data in r3, which was used to
detect microwatt vs powernv. This breaks the existing probing of the UART
type in this powerpc port.
Instead build only the appropriate UART into the firmware, selected by
passing the option UART=potato or UART=lpc_serial to the Makefile.
A future enhancement would be to parse the device tree and configure
MicroPython based on the settings.
|
|
The code previously called rtc_get_reset_reason which is a "raw" reset
cause. The ESP-IDF massages that for the proper reset cause available from
esp_reset_reason.
Fixes issue #5134.
|
|
To allow high speed access.
|
|
This suppresses the Parsing: <file> as language C lines. This makes
parsing run a bit faster and on CI it makes for less scrolling through logs
(and black already uses the -q option).
|
|
This renames a few identifiers to follow the usual naming convention of
mp_<module>_<name>. This makes them easier to find, e.g. when grep'ing.
|
|
Add configuration which otherwise has to be set via the UI so the file is
more self-contained, and remove configuration which is not needed because
it's the same as the default. The major change here is that for a while
now Appveyor has been using Visual Studio 2015 by default while we still
want to support 2013.
|
|
Older versions do not have "inline" so fetch the definition from
mpconfigport.h.
|
|
Older implementations deal with infinity/negative zero incorrectly. This
commit adds generic fixes that can be enabled by any port that needs them,
along with new tests cases.
|
|
Otherwise functions like memset might get optimised to call themselves (eg
with gcc 10). And provide CFLAGS_BUILTIN so these options can be changed
by a port if needed.
Fixes issue #6053.
|
|
Otherwise scheduled functions may execute during the hard callback and then
fail if they try to allocate heap memory.
|
|
The env NAME="foo" syntax doesn't appear to set the name in the Travis web
interface. Instead use the syntax from the docs:
https://docs.travis-ci.com/user/build-stages/#naming-your-jobs-within-build-stages
|
|
|
|
Most developers use a compiler which is called powerpc64le-linux-gnu-gcc.
|
|
The linker script was included in the "$^" inputs, causing the build to
fail:
LINK build/firmware.elf
powerpc64le-linux-gnu-ld: error: linker script file 'powerpc.lds' appears multiple times
As a fix the linker script is left as a dependency of the elf, but only the
object files are linked.
|
|
|
|
The PWM driver uses a double buffer for the PWM timing array, one in
current use and the other one to update when changing duty parameters.
The issue was that once the duty parameters were changed the updated buffer
was applied immediately without synchronising to the start of the PWM
period. By moving the buffer toggling/swapping to the interrupt when the
cycle is done there are no more glitches.
|
|
|
|
This is how CPython behaves.
|
|
Tested with the Particle Debugger on a Xenon.
|
|
Specifically:
- pca10040: It was already the default.
- microbit: It uses nRF51, has a Cortex-M0, and has additional libraries.
- pca10056: It has USB CDC.
|
|
Commit 6cea369b89b2223cf07ff8768e50dc39bbb770fe updated the TinyUSB
submodule to a version based on nrfx v2.0.0. This commit updates the nrf
port to work with the latest TinyUSB and nrfx v2.0.0.
|
|
|
|
Because it can confuse older versions of gcc. Instead use the correct
instruction for Thumb vs Thumb-2 (sub vs subs) so the assembler emits the
2-byte instruction.
Related to commit 1aa9ff914194824a78a8b010572ad7083c1bb4ec.
|
|
So that error string compression is optimised correctly (it needs strcmp to
be optimised away by the compiler).
|
|
CPython semantics require searching the current directory if the import is
not absolute (when "" is in sys.path).
Fixes issue #6037.
|
|
|
|
|