aboutsummaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)Author
2017-01-06Add more detail to the driver page including a link to the bundle.Scott Shawcroft
2017-01-05Link to the Bus Device docs.Scott Shawcroft
2017-01-05Update more docs to say CircuitPython and clarify driver support.Scott Shawcroft
2017-01-05Improve docs and update to CircuitPython.Scott Shawcroft
2017-01-04Use full link because relative links don't work.Scott Shawcroft
2017-01-04Switch to subprojects for driver docs.Scott Shawcroft
2016-11-28Add links to two more libraries.Scott Shawcroft
2016-11-21This introduces an alternative hardware API called nativeio structured ↵Scott Shawcroft
around different functions that are typically accelerated by native hardware. Its not meant to reflect the structure of the hardware. Docs are here: http://tannewt-micropython.readthedocs.io/en/microcontroller/ It differs from upstream's machine in the following ways: * Python API is identical across ports due to code structure. (Lives in shared-bindings) * Focuses on abstracting common functionality (AnalogIn) and not representing structure (ADC). * Documentation lives with code making it easy to ensure they match. * Pin is split into references (board.D13 and microcontroller.pin.PA17) and functionality (DigitalInOut). * All nativeio classes claim underlying hardware resources when inited on construction, support Context Managers (aka with statements) and have deinit methods which release the claimed hardware. * All constructors take pin references rather than peripheral ids. Its up to the implementation to find hardware or throw and exception.
2016-11-14Merge tag 'v1.8.6'Scott Shawcroft
ESP8266 port uses SDK 2.0, has more heap, has support for 512k devices This release brings some code size reductions to the core as well as more tests and improved coverage which is now at 94.3%. The time.ticks_diff(a, b) function has changed: the order of the arguments has been swapped so that it behaves like "a - b", and it can now return a negative number if "a" came before "b" (modulo the period of the ticks functions). For the ESP8266 port the Espressif SDK has been updated to 2.0.0, the heap has been increased from 28k to 36k, and there is support for 512k devices via "make 512k". upip is included by default as frozen bytecode. The network module now allows access-point reconnection without WiFi credentials, and exposes configuration for the station DHCP hostname. The DS18B20 driver now handles negative temperatures, and NeoPixel and APA102 drivers handle 4 bytes-per-pixel LEDs. For the CC3200 port there is now support for loading of precompiled .mpy files and threading now works properly with interrupts. A detailed list of changes follows. py core: - py.mk: automatically add frozen.c to source list if FROZEN_DIR is defined - be more specific with MP_DECLARE_CONST_FUN_OBJ macros - specialise builtin funcs to use separate type for fixed arg count - {modbuiltins,obj}: use MP_PYTHON_PRINTER where possible - modbuiltins: add builtin "slice", pointing to existing slice type - add "delattr" builtin, conditional on MICROPY_CPYTHON_COMPAT - sequence: fix reverse slicing of lists - fix null pointer dereference in mpz.c, fix missing va_end in warning.c - remove asserts that are always true in emitbc.c - fix wrong assumption that m_renew will not move if shrinking - change config default so m_malloc0 uses memset if GC not enabled - add MICROPY_FLOAT_CONST macro for defining float constants - move frozen bytecode Makefile rules from ports to common mk files - strip leading dirs from frozen mpy files, so any path can be used extmod: - vfs_fat_file: check fatfs f_sync() and f_close() returns for errors - vfs_fat_file: make file.close() a no-op if file already closed - utime_mphal: ticks_diff(): switch arg order, return signed value - utime_mphal: add MP_THREAD_GIL_EXIT/ENTER warppers for sleep functions - utime_mphal: implement ticks_add(), add to all maintained ports - utime_mphal: allow ticks functions period be configurable by a port lib: - utils/pyhelp.c: use mp_printf() instead of printf() - utils/pyexec: add mp_hal_set_interrupt_char() prototype - libm: move Thumb-specific sqrtf function to separate file drivers: - add "from micropython import const" when const is used tools: - upgrade upip to 1.1.4: fix error on unix when installing to non-existing absolute path - pip-micropython: remove deprecated wrapper tool - check_code_size.sh: code size validation script for CI - replace upip tarball with just source file, to make its inclusion as frozen modules in multiple ports less magic tests: - extmod/vfs_fat: improve VFS test coverage - basics/builtin_slice: add test for "slice" builtin name - basics: add test for builtin "delattr" - extmod/vfs_fat_fsusermount: improve fsusermount test coverage - extmod/vfs_fat_oldproto: test old block device protocol - basics/gc1: garbage collector threshold() coverage - extmod/uhashlib_sha1: coverage for SHA1 algorithm - extmod/uhashlib_sha256: rename sha256.py test - btree1: fix out of memory error running on esp8266 - extmod/ticks_diff: test for new semantics of ticks_diff() - extmod/framebuf1: test framebuffer pixel clear, and text function minimal port: - Makefile: split rule for firmware.bin generation unix port: - Makefile: remove references to deprecated pip-micropython - modtime: use ticks_diff() implementation from extmod/utime_mphal.c - mphalport.h: add warning of mp_hal_delay_ms() implementation - modtime: switch ticks/sleep_ms/us() to utime_mphal - fix symbol references for x86 Mac - replace upip tarball with just source file windows port: - enable utime_mphal following unix, define mp_hal_ticks_* - fix utime_mphal compilation for msvc - implement mp_hal_ticks_cpu in terms of QueryPerformanceCounter qemu-arm port: - exclude ticks_diff test for qemu-arm port - exclude extmod/vfs_fat_fileio.py test - exclude new vfs_fat tests - enable software floating point support, and float tests stmhal port: - modutime: refactor to use extmod's version of ticks_cpu - refactor pin usage to use mp_hal_pin API - led: refactor LED to use mp_hal_pin_output() init function - Makefile: use standard rules for frozen module generation - modutime: consistently convert to MP_ROM_QSTR/MP_ROM_PTR - enable SD power save (disable CLK on idle) cc3200 port: - use mp_raise_XXX helper functions to reduce code size - mods/pybspi: allow "write" arg of read/readinto to be positional - enable loading of precompiled .mpy files - fix thread mutex's so threading works with interrupts teensy port: - update to provide new mp_hal_pin_XXX functions following stmhal esp8266 port: - Makefile: use latest esptool.py flash size auto-detection - esp_init_data: auto-initialize system params with vendor SDK 2.0.0 - esp8266.ld: move help.o to iROM - esp8266.ld: move modmachine.o to iROM - esp8266.ld: move main.o to iROM - add MP_FASTCODE modifier to put a function to iRAM - main: mark nlr_jump_fail() as MP_FASTCODE - modules/webrepl: enforce only one concurrent WebREPL connection - etshal.h: add few more ESP8266 vendor lib prototypes - modesp: add flash_user_start() function - add support for building firmware version for 512K modules - scripts: make neopixel/apa102 handle 4bpp LEDs with common code - modutime: consistently convert to MP_ROM_QSTR/MP_ROM_PTR - modnetwork: config(): fix copy-paste error in setting "mac" - scripts/port_diag: add descriptions for esf_buf types - modnetwork.c: allows AP reconnection without WiFi credentials - main: bump heap size to 36K - etshal.h: add prototypes for SPIRead/SPIWrite/SPIEraseSector - etshal.h: adjust size of MD5_CTX structure - modules: fix negative temperature in ds18x20 driver - rename "machine" module implementation to use contemporary naming - rework webrepl_setup to run over wired REPL - espneopixel.c: solve glitching LED issues with cpu at 80MHz - include upip as a standard frozen bytecode module - update docs for esptool 1.2.1/SDK 2.0 (--flash_size=detect) - modnetwork.c: expose configuration for station DHCP hostname zephyr port: - implement utime module - use board/SoC values for startup banner based on Zephyr config - initial implementation of machine.Pin - zephyr_getchar: update for recent Zephyr refactor of console hooks - support time -> utime module "weaklink" - README: update for the current featureset, add more info - mpconfigport.h: move less important params to the bottom - Makefile: allow to adjust heap size from make command line - Makefile: update comments to the current state of affairs - Makefile: allow to override Zephyr config from make command line - Makefile: add minimal port - Makefile: add -fomit-frame-pointer to reduce code size - mphalport.h: update for new "unified" kernal API (sleep functions) docs: - machine.SPI: bring up to date with Hardware API, make vendor-neutral - machine.SPI: improve descriptions of xfer methods - library/builtins: add docs for delattr and slice - library/network: reword intro paragraph - library/network: typo fixes, consistent acronym capitalization - library/index: update TOCs so builtins sorted before modules - utime: document ticks_cpu() in more detail - utime: describe new semantics of ticks_diff() (signed ring arithmetics) - utime: add docs for ticks_add(), improvements for other ticks_*() - esp8266: update for new WebREPL setup procedure - */quickref.rst: use new semantics of ticks_diff() - library/machine.Pin: update Pin docs to align with new HW API travis: - integrate tools/check_code_size.sh - minimal: Use CROSS=1, for binary size check examples: - http_server_simplistic: add "not suitable for real use" note - hwapi: example showing best practices for HW API usage in apps - hwapi: add hwconfig for DragonBoard 410c
2016-11-10docs: Bump version to 1.8.6.v1.8.6Damien George
2016-11-09docs/library/machine.Pin: Update Pin docs to align with new HW API.Damien George
2016-11-08esp8266: Update docs for esptool 1.2.1/SDK 2.0 (--flash_size=detect).Paul Sokolovsky
2016-11-08docs/*/quickref.rst: Use new semantics of ticks_diff()puuu
2016-11-06docs/esp8266: Update for new WebREPL setup procedure.Paul Sokolovsky
2016-11-01docs/utime: Add docs for ticks_add(), improvements for other ticks_*().Paul Sokolovsky
2016-11-01docs/utime: Remove only:: for ticks_diff().Paul Sokolovsky
It's mandatory function which should be present in every port. Even if it's not, in the stdlib intro we waarn users that a particular port can lack anything of described in the docs.
2016-10-31docs/utime: Describe new semantics of ticks_diff() (signed ring arithmetics).Paul Sokolovsky
2016-10-30docs/utime: Document ticks_cpu() in more detail.Paul Sokolovsky
Also, drop ::only directive.
2016-10-30docs/library/index: Update TOCs so builtins sorted before modules.Paul Sokolovsky
2016-10-28docs/library/network: Typo fixes, consistent acronym capitalization.Paul Sokolovsky
2016-10-28docs/library/network: Reword intro paragraph.Paul Sokolovsky
2016-10-25docs/machine.SPI.rst: Fix typos and formatting, clarify.Paul Sokolovsky
Clarify the class implements master side of the protocol, also put adhoc WiPy paramter after the generic, described in the current Hardware API version.
2016-10-25docs/library/builtins: Add docs for delattr and slice.Damien George
2016-10-24docs/library/machine.SPI: Remove spurious "of".Damien George
2016-10-20Merge remote-tracking branch 'micropython/master'Tony DiCola
Conflicts: README.md - Kept Adafruit README.md intact. py/emitglue.c - Added xtensa architecture as an OR of the define. zephyr/README.md - Fixed spelling mistake.
2016-10-20Update drivers.rstRadomir Dopieralski
2016-10-19Support markdown.Scott Shawcroft
2016-10-18Documentation rework to unify the docs together rather than having themScott Shawcroft
on a per port basis. Also enables generating docs from inline RST in C code. Simply omits all lines except those that start with //|. Indentation after "//| " will be preserved.
2016-10-18docs/machine.SPI: Improve descriptions of xfer methods.Damien George
In particular remove the "*" because not all ports support keyword arguments.
2016-10-17docs/machine.SPI: Bring up to date with Hardware API, make vendor-neutral.Paul Sokolovsky
2016-10-17docs: Bump version to 1.8.5.v1.8.5Damien George
2016-10-11docs/reference: Add constrained.rst doc.Peter Hinch
It contains detailed information about writing scripts to run efficiently on microcontrollers (and other constrained systems).
2016-10-10docs/wipy: Correct deep sleep current figure.daniel
2016-10-07docs/uos: Add uos.statvfs() documentation.Alex March
2016-10-04stmhal/usb: Add support to receive USB HID messages from host.Philip Potter
2016-09-28extmod/machine_i2c: Add support for the addrsize parameter in mem xfers.Radomir Dopieralski
The memory read/write I2C functions now take an optional keyword-only parameter that specifies the number of bits in the memory address. Only mem-addrs that are a multiple of 8-bits are supported (otherwise the behaviour is undefined). Due to the integer type used for the address, for values larger than 32 bits, only 32 bits of address will be sent, and the rest will be padded with 0s. Right now no exception is raised when that happens. For values smaller than 8, no address is sent. Also no exception then. Tested with a VL6180 sensor, which has 16-bit register addresses. Due to code refactoring, this patch reduces stmhal and esp8266 builds by about 50 bytes.
2016-09-23docs/library/machine: Update description of disable/enable IRQ funcs.Damien George
2016-09-18docs/library/pyb.SPI: init(): Describe "bits" argument.Paul Sokolovsky
Based on https://github.com/micropython/micropython/pull/2210 .
2016-09-18Small WiPy doc fixesjuhasch
2016-09-09docs: Bump version to 1.8.4.v1.8.4Damien George
2016-09-08stmhal,cc3200,esp8266: Consistently use PWRON_RESET constant.Damien George
machine.POWER_ON is renamed to machine.PWRON_RESET to match other reset-cause constants that all end in _RESET. The cc3200 port keeps a legacy definition of POWER_ON for backwards compatibility.
2016-09-07docs/reference/isr_rules.rst: Two minor additions to docs for using ISR.Peter Hinch
- Refers to the technique of instantiating an object for use in an ISR by specifying it as a default argument. - Footnote detailing the fact that interrupt handlers continue to be executed at the REPL.
2016-09-06docs/library/machine.WDT: Add that WDT is available on pyboard.Damien George
2016-09-04docs/esp8266/quickref: Further improvements for SPI subsections.Paul Sokolovsky
Consistency and formatting.
2016-09-04docs/esp8266/quickref: Update information on SPI classes.Paul Sokolovsky
SPI(1) is not used for hardware SPI. Few more details are provided.
2016-08-29docs/esp8266/quickref: Add internal links to docs for some modules.Damien George
2016-08-29docs/pyboard/quickref: Add section on "delay and timing" for utime mod.Damien George
And remove reference to deprecated pyb.delay() and pyb.millis().
2016-08-29docs/pyboard/quickref: Add links to pinouts for other pyboard variants.Damien George
2016-08-29docs/library: Add reference for pyb.usb_mode and pyb.USB_HID.Philip Potter
2016-08-29docs/pyboard: Update USB mouse tutorial to use pyb.USB_HID().Philip Potter