Skip to content

Tags: mcauser/micropython

Tags

v1.4.3

Toggle v1.4.3's commit message
Tab autocompletion, and various improvements and bug fixes.

py core:
- add attrtuple for space efficient tuples with attr access
- add sys.implementation, with uPy name and version number
- fix printing of "inf" and "nan" values
- native: fix stack adjustment when erroring on binary op
- mpz: fix bug with shl not truncating zero digits correctly
- modify "with" implementation so it doesn't use any heap
- add sys.exc_info()
- implement conversion of bignum to bytes
- implement struct.pack with 'q' and 'Q' args on 32-bit archs
- replace py-version.sh with makeversiohdr.py, written in Python
- implement tab autocompletion for REPL
- rename struct module to ustruct
- add NotImplemented builtin constant
- handle user instance hash based on Python adhoc rules
- fix naming of function arguments when function is a closure
- fix printing of complex numbers with nan/inf

extmod:
- add machine module, with mem8, mem16, mem32 objects

lib:
- move common mod_network_* functions to lib/netutils
- move common time functions to lib/timeutils

tools:
- pyboard.py: add "--follow" option to wait for output indefinitely
- add script to install "upip" package manager

tests:
- add more viper tests, including for ViperTypeError
- coverage at 94%

unix port:
- modffi: support passing float/double args
- add special function to coverage build to improve coverage
- print unhandled exceptions to stderr

stmhal port:
- implement os.uname()
- reset timer counter to zero after changing auto reload
- properly disable unhandled timer interrupts
- automatically reenable IRQs when code drops to the USB REPL
- allow to configure UART pins completely via mpconfigboard.h
- make raw REPL work with event-driven version of pyexec
- add rtc.calibration() method to get/set RTC fine-tuning value
- add os.rename()
- add readinto() and readlines() methods to sys.stdin and pyb.USB_VCP

cc3200 port:
- add WiPy specific info to README.md
- fix byte order in MAKE_SOCKADDR and UNPACK_SOCKADDR
- select NIC when the socket is created
- add delays to allow ftp and telnet servers to start/stop
- make telnet login work with Tera Term
- implement os.uname()
- make WLAN scan results a list of attrtuples
- make WLAN.isconnected() also work in AP mode
- implement Sleep.wake_reason()
- make WLAN.ifconfig() return an attrtuple
- enable MICROPY_MODULE_WEAK_LINKS

esp8266 port:
- export station status() constants
- add esp.socket class, with ESP-style socket functionality
- add raw REPL support and working soft reset
- fix garbage collector by hard-coding stack end address
- add socket.onsent() callback support
- add support for frozen modules
- implement time functions
- add utime and pyb.RTC
- add module weak links

docs:
- document pyb.stop, pyb.standby, pyb.RTC.wakeup
- document USB_VCP read* and write methods

v1.4.2

Toggle v1.4.2's commit message
Improved native codegen, better printf, support for F401 and F411 MCUs.

py core:
- implement delete for property and descriptors
- add option to disable "enumerate" and "reversed" builtins
- can call functions with *args in native emitter
- implement full function arg passing for native emitter
- combine load_attr and store_attr internal type methods into one
- fix formatting of floating point numbers near 1.0
- support assignment of bytes to bytearray slices
- overhaul and simplify printf/pfenv mechanism
- fix builtin ord so that it can handle bytes values >= 0x80
- inlinethumb: add support for core floating point instructions
- make viper code generator raise ViperTypeError on error

lib:
- string0.c now in lib/libc/ (was in stmhal/)
- fatfs code size reduced (by 768 bytes on Thumb2 archs)

tests:
- more tests for builtins
- tests for lexer
- coverage increased to 93%

stmhal:
- make LED object print LED(x) for consistency with constructor
- in USB HID driver, make polling interval configurable
- allow sending CAN messages with timeout=0
- add support for sending and receiving CAN RTR messages
- make board parameters more configurable (HSE PLL, LED4, TIMs, etc)
- add support for F401 and F411 MCUs
- add support for Espruino Pico board
- make raw REPL mode 8-bit clean

cc3200 port:
- enable pull-ups for stdio UART pins
- enable long filename support in fatfs
- add WLAN.config_ip(), to assign a static IP
- add IPPROTO_SEC so secure sockets can be made

tools:
- make pyboard.py 8-bit clean, so it works with unicode chars

docs:
- document pyb.main() function

v1.4.1

Toggle v1.4.1's commit message
Stackless support, new 16-bit PIC port.

py core:
- builtin round() accepts second arg
- add more special methods: __pos__, __neg__, __invert__
- support for stackless Python calls in VM, strict and non-strict
- support for object representation that suits 16-bit archs
- implement closures in native code emitter
- implement str.splitlines() method

lib:
- fatfs library upgraded to R0.11 (fixes bugs with unlink)

pic16bit port:
- new port to 16-bit PIC (reference MCU is dsPIC33J256GP506)
- heap is 4600 bytes
- implement basic pyb module with delay
- implement basic LED and Switch classes

docs:
- initial docs for micropython module
- additional example for Timer callback usage
- document instantiating struct objects in uctypes

v1.4

Toggle v1.4's commit message
More Python features, reduced code size, coverage testing at 91%.

py core:
- add builtin setattr function
- optimise exceptions for out-of-memory scenario
- add some special methods: __mul__, __floordiv__, __truediv__
- implement array slice assignment
- add support for start/stop/step attrs in range object
- make builtin abs work with bools and bignums
- add basic implementation of collections.OrderedDict
- add support for a function's __name__
- refactor compiler code to reduce code size by up to 2k
- support for descriptors __get__ and __set__

inline Thumb2 assembler:
- more robust syntax checking
- general bug fixes
- better error messages
- add "it" instructions
- add bl, bx instructions
- add bcc_n, bcc_w instructions

extmod:
- modure: bug fixes for groups
- modure: add named classes

lib:
- libm: add erf, erfc, lgamma, tgamma

drivers:
- add onewire driver in pure Python
- add ds18x20 temp sensor driver, using onewire
- cc3100 driver upgraded to v1.1.0

tests:
- lots of new tests, including many for SyntaxError
- automated covage testing using coveralls, at 91% coverage

unix port:
- support for readline history saving to file

stmhal port:
- usbdev code cleanup
- add Python-configurable USB HID mode
- add CDC only USB option
- improve USB descriptors (untested on Windows and Mac)
- add UART.sendbreak() method to send break condition
- add support for CAN rx callbacks
- raise error if UART can't do requested baudrate within 5%
- fix timing init when callback is passed as argument to init
- add support for quadrature encoder mode in TimerChannel
- fix ADC.read_timed so buffer store respects element size
- add RTC.wakeup method to set wakeup timer (preliminary)
- add compile-time config option for RTC to use LSE or LSI
- bug fix related to unhandled channel interrupts
- improved support for stop and standby mode
- expose all PYBv1.0 pins, including SD and USB pins
- optimise ADC.read_timed so it can sample at up to 750kHz
- make pybstdio code usable by other ports

cc3200 port:
- add I2C module
- add ADC module
- add SD module
- support for connecting to WEP secured networks
- add WDT support
- add low power support
- add SPi module

esp8266 port:
- add basic pyb.Pin class

miscellaneous:
- add list of Kickstarter backers in ACKNOWLEDGEMENTS file

size difference in bytes to previous version (a negative value means
binary is smaller in this version):
- bare-arm: -2448
- minimal: -3028
- unix: +574
- stmhal: +7996
- cc3200: -2984
- teensy: -10560
- esp8266: -936
- qemu-arm: -844

v1.3.10

Toggle v1.3.10's commit message
Bug fixes, CC3200 port, improved inline assembler

py core:
- big-int bug fixes
- support for floats in struct module
- vstr no longer null-terminates buff by default
- properly handle CR/LF in triple-quoted string
- list.sort now has O(log(N)) stack usage
- parse big-int/float constants directly in parser
- allow to subclass native buffer objects
- reduce stack size of VM by 8 bytes on stmhal, 16 on x86
- add ldrex, strex, push, pop, sdiv, udiv, clz, rbit to inline assembler
- make inline assembler report line numbers on error

extmod:
- uzlib: raw deflate decoding support

unix port:
- add "coverage" makefile target for coverage testing

stmhal port:
- bug fixes in ADCAll object
- bug fix in timer.deinit

esp8266 port:
- add esp module
- add connect, disconnect, status functions

cc3200 port:
- new port to the CC3200 launchxl board

v1.3.9

Toggle v1.3.9's commit message
Internal changes, RAM and ROM reductions, new minimal port

py core:
- lots of small optimisations, cleanups and code size reduction
- move away from Plan 9 headers to traditional guarded ones
- improved and optimised float to int conversion
- fix right-shifting edge cases in mpz
- namedtuple: use sequence of strings for init
- namedtuple: allow keyword arguments in constructor
- ability to issue compile/runtime warnings
- str.format now has kwargs support
- put all global state togther in a state structure
- optimisation to cache map lookup results in bytecode
- fix handling of "0" in some mpz functions
- implement equality check for all types
- add qstr cfg capability
- can now configure qstr len storage; defaults to using 1 byte
- allow code to compile with lots more warnings enabled
- add LOAD_CONST_OBJ bytecode, to directly load Python objects
- never intern data of large str/bytes objects
- fix handling of default except in compiler
- add extra pass to bytecode compiler to compute stack size
- implement very simple frozen modules support
- implement __reversed__ slot
- implement proper re-raising in native codegen's finally handler

lib:
- move readline code from stmhal to lib/mp-readline/
- readline refactored to support event-driven usage
- add frexp and modf to libm

minimal port:
- new port, intended to represent minimal working code

stmhal port:
- collect root pointers together; improves GC speed
- add MICROPY_HW_USB_VBUS_DETECT_PIN option
- add MICROPY_HW_USB_OTG_ID_PIN option
- add support for FEZ Cerb40 II board
- bug fixes in network module and usocket.accept, setsockopt

qemu-arm port:
- enable GC and native code-gen
- add working tests
- get tests running under Travis CI

esp8266 port:
- use dedicated heap allocated as static array
- implement task-based, event-driven interface with UART
- implement pyb.hard_reset()

v1.3.8

Toggle v1.3.8's commit message
Feature additions to core, unix and stmhal; general improvements.

py core:
- implement +, +=, .extend for bytarray and array objs
- add mem_info, qstr_info to micropython module
- bytes/bytearray/array can be init'd by buffer protocol objs
- optimised lexer by exposing lexer type; gives ROM savings
- add sys.print_exception
- allow builtins to be overridden
- fixed all semantic issues with range optimisation
- compiler gives proper SyntaxError exceptions for bad global/nonlocal
- reduce VM exception stack size by 1 machine word per exception
- make bytes objs work with more str methods
- refactor and make mp_bytecode_print and friends more useful
- start transition to guarded includes
- lots of code cleanup
- some ROM savings

extmod:
- add ubinascii module, with hexlify

unix port:
- add _os.unlink, _os.system functions
- 64-bit clean in ffi module
- time module renamed to utime

stmhal port:
- add USB_VCP.setinterrupt method, to disable CTRL-C
- make pyb.[u]delay work when irqs are disabled
- overhaul of internal network driver interface
- bug fixes to CC3K and WIZNET5K network drivers
- use DMA for SPI transfers (only if irqs enabled)
- allow SPI.init to specify prescaler directly
- enhance pyb.freq to configure bus frequencies
- add more math functions (acosh, asinh, atanh, tan)
- add execfile function
- upgrade to latest FatFs driver (now in lib/)
- add ability to mount custom block device

esp8266 port:
- put more rodata in irom section
- add README.md

docs:
- basic docs for uhashlib, ubinascii, ure, uzlib
- links to LCD and AMP skin schematics
- general improvements

v1.3.7

Toggle v1.3.7's commit message
Port to ESP8266, add uhashlib, improved CAN driver.

py core:
- support more ops for bytes/bytarray
- support __hash__ for user-defined types
- support for float/double arrays in array module
- shorter error messages for TERSE message option
- add seek via ioctl to stream protocol

extmod:
- add uhashlib with sha256

unix port:
- heapsize can take w specifier for word adjustment

stmhal port:
- CAN init now takes sjw, bs1, bs2 args
- add CAN filter management
- fix HAL error raising bug

esp8266 port:
- new port to ESP8266 wifi chip

docs:
- minor additions

v1.3.6

Toggle v1.3.6's commit message
Improved documentation, and other small changes.

py core:
- add builtin round function
- gc.enable/disable still allows manual GC (as per CPython)
- fix builtin callable for user-defined types
- fix bug for right shift of small int by large amount

unix port:
- add "fast" version
- improve uctypes, including sizeof function

stmhal port:
- support for extended CAN frames
- USB_VCP works with select
- experimental support for RTS/CTS in UART
- make UART bits count number of data bits, not incl parity
- pyb.freq now allows 8MHz and 16MHz

docs:
- revamp and merge all inline docs into Sphinx framework
- add a few more tutorials

v1.3.5

Toggle v1.3.5's commit message
RAM savings, memoryview, quick-ref and more.

Improvements to core:
- make better use of bytecode coding space
- about 10% RAM savings in bytecode
- add uheapq module
- add memoryview builtin
- add compile builtin
- support in VM for KeyboardInterrupt
- fix integer modulo with negative arguments
- small GC fixes
- add 2nd arg to readinto

New features in unix port:
- CTRL-C raises KeyboardInterrupt
- heapsize option takes K and M
- -m option to execute library module

stmhal improvements:
- make MMA_INT/PB2 pin available
- add pyb.hard_reset()
- cc3k recv improments
- all HAL errors now raise OSError with POSIX error code
- USB config improved for windows (CDC on Windows 10 without driver)
- use different USB PID when in CDC+HID mode (so HID works in Windows)
- boot.py and main.py use \r\n for newlines
- change SPI phase from 1,2 to 0,1 to match industry conventions
- allow DAC object to be init'd from pin
- improved raw REPL control codes
- improved pyboard.py script

docs:
- add quick reference page with pinout
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy