µTasker Forum > STTM STM32 and STR91XF

STM32 Software Versions

(1/4) > >>

mark:
Hi All

This thread contains all versions of the release code - the latest release is at the top and previous releases are maintained in descending order.
Please check the patch list after the release notes of each version to get latest information on workarounds or bug-fixes.

Release 1.4.3 - 24.05.2014 - download from attachment of http://www.utasker.com/forum/index.php?topic=1697.msg6689#msg6689
==============================================================================================
- CooCox CoIDE projects added
- IGMP v1 support on multiple networks and interfaces
- SNMPV1 and SNMPV2c with multiple manager support, MIB table according to rfc 1213 and user entry capability
- Memory debug interface improved and extended with storage display and modification capabilities
- LED simulation configuration has an additional control to define whether the LED is in the '0' or '1' state should the driving pin be configured as an input.
- Port details displayed when mouse hovers over connected inputs/switches on board
- Multi-colour LED colour mixture support in the simulator
- Standalone web server software upload support added to serial loader project
- Encrypted SD card loader support added
- Flexible serial loader (supporting mixtures of UART SREC, USB-MSD, SD-card and Web server)
- Multiple network IP/MACs displayed in simulator (test two IP addresses with "#defined IP_NETWORK_COUNT 2")


When using the USB-MSD loader in FAT12 mode (standard) the following #if def needs to be inverted (changed from #if !defined UTFAT16 to #if defined UTFAT16) so that read-back operates correctly:
- usb_loader.c line 1781 just after the line with if (iSoftwareState == SW_AVAILABLE) {


There is an error in the port input configuration macro _CONFIG_PORT_INPUT() which incorrectly sets the characteristics of the PORTx_15 pin
((characteristics << 23) & (((0x8000 & pins) << 15)| ((0x8000 & pins) << 16))));
To correct, change the 23 to 24:
((characteristics << 24) & (((0x8000 & pins) << 15)| ((0x8000 & pins) << 16))));





Release 1.4.2 - 09.03.2014 http://www.uTasker.com/software/V1.4/uTaskerV1.4.2_STM32.zip
======================================================================

- Access to SD card (utFAT) controllable individually for HTTP and FTP; root directories can be changed during operation.
- SD card visualisation in simulator
- Optional polling of SD card to detect removal during operation (by reading a sector), by polling card detect switch, or based on card detect switch interrupt (see http://www.utasker.com/forum/index.php?topic=1747.msg6270#msg6270).
- Advanced IPv6 support with link-local and global IPv6 addresses. TCP based services (such as HTTP and FTP) are operational on link-local IPv6 address and global IPv6 address as well as IPv4 (dual-stack).
- Global IPv6 address can be optionally tunnelled in 6in4 (tunnelling IP address is configurable) when native IPv6 is not possible.
- Configurable 6in4 relay agent to expose multiple IPv6 devices behind simple IPv4 routers.
- Start web page shows IPv4 or IPv6 source address depending on connection.
- New I2C simulation devices (PCA9539, PCF2129A)
- Ethernet bridging support
- Buzzer output simulation (eg. for use with keypad)
- Front-panel simulation support with connection of keys and LEDs to ports - including external I2C port expanders
- User button simulation in front-panel and configurable front-panel image
- x, y coordinates shown when mouse is on keypad/front-panel
- define HTTP_POST_DEFINES_PAGE allows user file to be served as specified by the file name in a POST, rather than special uFile name
- define HTTP_SET_USERFILE_START_PAGE allow a specific user file to act as HTTP default start side
- define HTTP_SERVE_ONLY_USER_FILES allows serving exclusively user files - if a defined user file is not found display 404 error rather than a uFileSystem equivalent
- TCP/IP stack adapted for multiple interface and multiple network support - see http://www.utasker.com/forum/index.php?topic=1748.0 for details about application compatibility.
- FTP client only commands ASCII or Binary modes when it is not known in which mode it is presently in and a change is needed.
- FTP client Listing and Getting requires both the server's success response and the data connection to be closed before terminating and informing of success.
- FTP client now supports operation with servers over IPv6.
- Reset TCP connections when SYN (without ACK) received on connected TCP port.
- Optional polling of SD card to detect removal during operation (by reading a sector), by polling card detect switch, or based on card detect switch interrupt (see http://www.utasker.com/forum/index.php?topic=1747.msg6270#msg6270).
- Basic RTC support added - driver includes in-built time/Gregorian calendar support according to: http://www.utasker.com/forum/index.php?topic=1656.0 [F2/F4 only]
- I2C channel 3 support added.
- USB FS OTG driver adds STM32F1xx connectivity devices.
- Support for Embest base board to F4 discovery.
- RMII and additional Ethernet port mapping added - including STM32F1xx RMII configuration.
- uTaskerV1.4 project uses a new include file for debug.c called debug_hal.h. This includes some hardware specific functions allowing easier management of processor and hardware target types
- TCP/IP stack adapted for multiple interface and multiple network support - see http://www.utasker.com/forum/index.php?topic=1748.0 for details about application compatibility.
- FTP client only commands ASCII or Binary modes when it is not known in which mode it is presently in and a change is needed.
- FTP client Listing and Getting requires both the server's success response and the data connection to be closed before terminating and informing of success.
- FTP client now supports operation with servers over IPv6.
- Reset TCP connections when SYN (without ACK) received on connected TCP port.
- DHCP_HOST_NAME option for DHCP
- Respect peer's MSS when sending HTTP frames
- TCP polling timer enabled only when required by a socket
- Optional high resolution TCP polling timer resolution (T_TCP_PERIOD)
- Don't reply to NetBios requests when DHCP is still resolving
- _EXTENDED_HTTP_MIME_CONTENT_SUPPORT activates HTTP content-type to be added to HTTP header
- Add IP multicast rx and tx
- PHY_POLL_LINK support for designs without PHY interrupt line
- MEMORY_DEBUGGER adds a memory debugger (memory display, memory modify and memory fill) to the command line interface
- utFAT2.0 Beta

- Magic Ethernet frame reception support added
"The define _MAGIC_RESET_FRAME enables magic frame checking support.
Initially no checking is done until it is enabled by calling fnEnableMagicFrames(1).
It can later be disabled if require by calling fnEnableMagicFrames(0).
When active, each received Ethernet frame is checked directly in the receive interrupt routine for Ethernet payloads of 93 bytes in length.
The definition of _MAGIC_RESET_FRAME determines the magic frame pattern that is expected (repeated 16 bit value) - for example
#define _MAGIC_RESET_FRAME        0x1234
A magic frame must then contain this value repeated 24 times in the first 60 bytes of the payload (following the two Ethernet II MAC addresses) in order to be recognised.
The 61st byte in the frame can then be used as code to trigger an action. The value 0x01 causes the board to reset and place a code in the boot loader mail box so that the boot loader can recognise that the board was reset via use of a magic frame. The boot loader will normally remain in the boot loader mode (possibly for a limited period of time) to allow software updates to be accepted.
The final 32 bytes of the frame are undefined and can have any pattern. The user can use these as optional information bytes if required (for example, there is adequate space to pass 2 IPv6 addresses for special configuration purposes, etc.)
The handling interface has to be supplied by the user (eg. in application.c) as follows:
extern void fnMagicFrame(unsigned char ucType, unsigned char usOptionalDate[32]) {}"
- Add ELZET80_DEVICE_DISCOVERY
- ELZET80 Network-Utility for discovery and commanded reset to boot loader mode

- uTaskerCombine has new optional srec output as well as srec/ihex offset parameter
- Managed read and managed write support added
- PARAMETER_NO_ALIGNMENT option to improve parameter block efficiency when byte writes are not needed (the application must write aligned blocks)
- SNMPV1, V2c Beta
- UART 9 bit mode added to STM32 hardware interface.
- CAN driver added (including Komodo support as show in http://www.youtube.com/watch?v=Ha8cv_XEvco)

Patches:

In fnGetFlashSectorSize() as used by F2/F4 parts, the following line should be modified to stop the address of the first 128k program block being incorrectly assigned to the 64k block
if (ptrSector >= (unsigned char *)(FLASH_START_ADDRESS + (NUMBER_OF_BOOT_SECTORS * FLASH_GRANULARITY_BOOT) + (NUMBER_OF_PARAMETER_SECTORS + FLASH_GRANULARITY_PARAMETER))) {
should be
if (ptrSector >= (unsigned char *)(FLASH_START_ADDRESS + (NUMBER_OF_BOOT_SECTORS * FLASH_GRANULARITY_BOOT) + (NUMBER_OF_PARAMETER_SECTORS * FLASH_GRANULARITY_PARAMETER))) { (note the * instead of + !!!))


In simSTM32.h there are some incorrect reserved locations in the struct stSTM32_ETH. The following can be used to correct this. It doesn't affect operation but not all Ethernet controller registers can be viewed correcty in the simulator.


typedef struct stSTM32_ETH
{
unsigned long ETH_MACCR;
unsigned long ETH_MACFF;
unsigned long ETH_MACHTHR;
unsigned long ETH_MACHTLR;
unsigned long ETH_MACMIIAR;
unsigned long ETH_MACMIIDR;
unsigned long ETH_MACFCR;
unsigned long ETH_MACVLANTR;
unsigned long ulRes1[2];
unsigned long ETH_MACRWUFFR;
unsigned long ETH_MACPMTCSR;
unsigned long ulRes2[2];
unsigned long ETH_MACSR;
unsigned long ETH_MACIMR;
unsigned long ETH_MACA0HR;
unsigned long ETH_MACA0LR;
unsigned long ETH_MACA1HR;
unsigned long ETH_MACA1LR;
unsigned long ETH_MACA2HR;
unsigned long ETH_MACA2LR;
unsigned long ETH_MACA3HR;
unsigned long ETH_MACA3LR;
unsigned long ulRes3[40];
unsigned long ETH_MMCCR;
unsigned long ETH_MMCRIR;
unsigned long ETH_MMCTIR;
unsigned long ETH_MMCRIMR;
unsigned long ETH_MMCTIMR;
unsigned long ulRes4[14];
unsigned long ETH_MMCTGFSCCR;
unsigned long ETH_MMCTGFMSCCR;
unsigned long ulRes5[5];
unsigned long ETH_MMCTGFCR;
unsigned long ulRes6[10];
unsigned long ETH_MMCRFCECR;
unsigned long ETH_MMCRFAECR;
unsigned long ulRes7[10];
unsigned long ETH_MMCRGUFCR;
unsigned long ulRes8[334];
unsigned long ETH_PTPTSCR;
unsigned long ETH_PTPSSIR;
unsigned long ETH_PTPTSHR;
unsigned long ETH_PTPTSLR;
unsigned long ETH_PTPTSHUR;
unsigned long ETH_PTPTSLUR;
unsigned long ETH_PTPTSAR;
unsigned long ETH_PTPTTHR;
unsigned long ETH_PTPTTLR;
unsigned long ulRes9[567];
unsigned long ETH_DMABMR;
unsigned long ETH_DMATPDR;
unsigned long ETH_DMARPDR;
unsigned long ETH_DMARDLAR;
unsigned long ETH_DMATDLAR;
unsigned long ETH_DMASR;
unsigned long ETH_DMAOMR;
unsigned long ETH_DMAIER;
unsigned long ETH_DMAMFBOCR;
unsigned long ulRes10[9];
unsigned long ETH_DMACHTDR;
unsigned long ETH_DMACHRDR;
unsigned long ETH_DMACHTBAR;
unsigned long ETH_DMACHRBAR;
} STM32_ETH;



Release 1.4.1 - 02.03.2012 http://www.uTasker.com/software/V1.4/uTaskerV1.4.1_STM32.zip
======================================================================

- Long File Name delete added using define UTFAT_LFN_DELETE
- USB OUT flow control improvements and USB-MSD and USB-CDC validated


Release 1.4.0 - 22.02.2012 http://www.uTasker.com/software/V1.4/uTaskerV1.4.0_STM32.zip
======================================================================
- TFT Display added to STM3240G - with touch screen controller and backlight intensity control (PWM)
- SD card added to STM32F4 with SDIO controller (utFAT for web server/FTP etc.)
- USB FS device added with CDC, MSD and HID (mouse) modes. Mouse uses Joy-Stick via I2C expander when used together with TFT with touch.
- Serial Boot loader added to project (supported loaders are UART, SD-card and USB-MSD as shown in the (Kinetis) video http://www.youtube.com/watch?v=H4TYM9jY2-g)



Beta 0.4 - 03.01.2012 http://www.uTasker.com/software/V1.4/uTaskerV1.4_STM32-4.zip
==================================================================
- FTP client according to the FTP client user's guide: http://www.utasker.com/docs/uTasker/uTaskerFTP_client.pdf (see video http://www.youtube.com/watch?v=sZOCFLDfGTk&feature=youtu.be )

Note that the STM32F2/4 devices should use linker scripts that position the application code to start at 0xc000 offset (after reset vector at 0) so that two boot blocks in flash are reserved for use by the uParameterSystem. The STM32F1 uses the standard linker script since it has small granularity flash and doesn't require this special measure.

The project is set up for the STM3240G EVAL board - configure to suit your board if necessary.

When debugging with the STM3240G  it is nevessary to disable the watchdog. This can be done by holding the KEY button pressed when the board is started.


Beta 0.3 - 18.12.2011  http://www.uTasker.com/software/V1.4/uTaskerV1.4_STM32-3.zip
===================================================================

- STM32F4xx Ethernet, EXTI and Flash driver added
- SPI Flash support added
- STM3240G/STM3241G operational
- Revised storage media management integrated as detailed in http://www.utasker.com/forum/index.php?topic=1687.0
- Counter of number of times the start web side has been served added to the demonstration
- Display connection IPv4 address on start page of web server
- Last reset cause added to administration web page
- Web pages and documents with descriptions for STM32F1xx and STM32F4xx (note that F4 Flash is different to the F1 Flash and the internal uFileSystem uses sub-file configuration due to large granularity)


Beta 0.2 - 14.11.2011 http://www.uTasker.com/software/V1.4/uTaskerV1.4_STM32-2a.zip
===================================================================

- UART/USART support extended to up to 6 interfaces
- port clear macro corrected for F2/F4 devices


Beta 0.1 - 09.11.2011 http://www.uTasker.com/software/V1.4/uTaskerV1.4_STM32-1.zip
===================================================================

After a long period of limited interest in the project the new STM32F4xx Cortex M4 parts with FPU have sporned a great increase in interest in Cortex M4 generally. This Beta now includes support for STM32F1xx/STM32F2xx and STM32F4xx devices, VisualStudio 6.0 and VisualStudio 2010 simulation projects, as well as GCC, Rowley Crossworks, ATOLLIC TrueStudio, IAR and Keil uVision cross-compiler projects. A developer's guide can be found at http://www.utasker.com/docs/STM32/uTaskerV1.4_STM32_Developers_Document.pdf.

The project is a forerunner to a release version to compliment the Kinetis Cortex M4 project which is also in the pre-release stadium. Missing are mainly tests of advanced peripherals and present absence of boot loader projects.

It is envisaged that the Kinetis and STM32 projects will complement each other due to the accelerated uptake of the new Cortex M4 devices and the compatibility/portability between the two families of devices offering added project security to new users who can very easily move between the two in case of this necessity.

Beta 0.0 - 20.09.2010 http://www.uTasker.com/software/V1.4/uTaskerV1.4_STM32.zip
=================================================================

The original Beta version for the STM32F107 Connectivity line. This contained only GCC and Rowley Crossworks targets as well as the simulator but has a useful list of features as shown in the video: http://www.youtube.com/watch?v=2Rbz1SOoJVI



*****************************************************************************************
Please note that the SW packages are protected by the corresponding project password.
To register and receive the password, simple fill out the form: http://www.utasker.com/Licensing/request.html
Don't be afraid - the project is free and supported for everyone; just for commerical use a small fee for premium
support is requested (donation after making their first million profit also welcomed..;-)
*****************************************************************************************

mark:
STM32 V1.4.3 Software: please download the attachment for the complete project including BM-loader, serial boot loader and main uTaskerV1.4 application for VisualStudio simulation, CooCox CoIDE, Rowely Crossworks, IAR, Keil uVision, Atollic and standalone GCC. It supports STM32F1xx and STM32F4xx boards
and gives you a wide range of powerful and proven features (OS, TCP/IP and USB stacks, utFAT and more) to get your project started and completed faster, with responsive support whenever needed.


The download and use of this package is completely free for non-commercial use and also commercial evaluation. Commercial users are welcomed to test what the project offers and make use of project support until it is decided whether it will be used for product development. After this time it would be appreciated if a license is purchased, which extends the support period and entitles royalty free use in sold products - see the licensing terms for full details. The fees are very fair since the package features are the result of several man years of intensive development efforts and refining, and enable professional support to be possible; either to help solve problems or aid in accelerating project progress when required or desired.

Note that by downloading this software you agree to the uTasker licensing terms as detailed at http://www.utasker.com/Licensing/License.html

bob_STM32:
Hello, there is no configuration for the STM32F103C8T6 processor (Blue Pill) in the archive. How do I add such a configuration?
Maybe there is another version of the project where Blue Pill is added?

bob_STM32:
And one more. How to use Atolic true studio to create a bootloader for STM32F103C8T6 similar to uTaskerSerialLoader_BluePill_USB-MSD, but without wachdog?
Which archive to choose for compilation?

mark:
Hi

From 2016 the open source STM32 project can be found on Github at https://github.com/uTasker/uTasker-Kinetis
The archives here are pre-Bluepill and so don't contain a configuration for it.

There is an Atollic project in the open source version which can be used to build the Bluepill configuration. It is combined with Kinetis and so in fact the uTaskerV1.4 Kinetis_atollic project is used and then the STM32 build target can be selected.

To watchdog can be disabled in the serial loader project by changing

#define WATCHDOG_DISABLE()         (0 == (_READ_PORT_MASK(A, (USER_KEY_BUTTON)))) // disable watchdog by holding the user button down at reset

to
#define WATCHDOG_DISABLE()         (1)

in app_hw_stm32.h in the serial loader project.

Regards

Mark





Navigation

[0] Message Index

[#] Next page

Go to full version