Changes in this version: 6.1.3.2 * Components * - Feature additions - USB Slave now warns you when the Slave Macro property is not valid rather then a unknown error Formula AllCode API component can now also control FA Components on the panel Added MRF522 RFID Component using new code base AVR HID USB Component checked in - AVR beta as may not work with custom decriptors Single 7-seg made to work better with the simulation and also has optional common pin for when you only need one 7-seg ENC28J60 now has a variable Port parameter rather then a fixed Port property ENC28J60 Component - Removed hard coded port USB Serial component source Added property to control I2C Stop delay into I2C specific components FA LCD fix and API WAV/Bitmap testing Various Formula AllCode improvements Added 8Mhz/20MHz clock option for External CAN (MCP2515) FA DLL code syntax now matches API document and has a scan for first function FAT component now has append byte to file function to allow writing the value 0 to binary files FA moved to 115200 baud and more up to speed FA API DLL component edited to match new API firmware and DLL FA LCD update to allow Y coordinates rather than line and API function name cleanup Formula AllCode API Component Added Added FASlave DLL to allow AllCode functionality in Flowcode Sim USB serial now has properties to allow the TX/RX buffer size to be edited Added 8/16 bit return type property to CircularBuffer, FAT and USBSerial components Added support for LSM303D Accelerometer and Magnetometer New SPI master component without EB013 specifics, EB013 SPI version still available but hidden LIN Slave exposed auto baud timing overrides to aid debugging and setup ESP8266 has a new timeout parameter when connecting to remote server. FA robot working better for logo movements FA component has new 115200 baud and "???" auto software reset to work with bootldr Added a timeout to the new FAT SPI routine to ensure initialise macro can not get stuck FAT component modified to send extra SPI clocks in between commands to allow more card types to function improved the appearance of the '5' character on all gLCDs Servo Motor base default movement angle increased from 128 degrees to 180 degrees SSD1306_I2C component was using a fixed amount of RAM for the g buffer, now dynamic to suit pixel dims FA added moulding mesh file. added missing ADC properties to EBM002 and EBM006 sensor components Formula Allcode working reliably with the Logo functions but overshooting slightly Servo controller new adjustable automove speed Formula Allcode component meshes and base functionality Added new Loopback type injector component FAT component now correctly uses the current system time and date as the file creation date and has a macro to override the values Added simulation and injector functionality to the IrDA component Added I2C Slave Component Added Injector & I/O Flasher functionality to DALI & DMX components FFT component now reset all buffer positions to 0 automatically to help avoid confusion Added missing scope and console controls to I2CMaster component Updated PWM component help with more relevant information PWM CAL and PWM components now support 16-bit period for 16-bit PICs PWM and PWM CAL components now have an extra Timer property to allow the PWM timer to be viewed and altered (device permitting) CAL SPI now shows all SPI prescaler values available to the device - Bug fixes - Formula AllCode Audio Playback had issues related to PWM and CB Formula AllCode logo turn angle adjustment Formula AllCode API DLL PlayNote had the incorrect parameters USB components may not have recognised a chip change unless comp props were refreshed Added better info to USB slave regarding supported devices 7Seg ClearDigit not working properly when using without a common I/O pin Improved simulation of single 7-seg when using muliple segments on the same common bus Keypad Base allowed for instable readings when used on dual I/O pins USB Serial component AVR support cleanup GLCD KS0108 had problems when using the 3rd CS chip GLCD ILI9341 was running very slowly, added window optimisation to the print routine FA Logo Movements made to run smoother and more reliable GLCD base sim component changed from embedded to sim macros to clean up C code GLCD rectange draw had a problem where the X,Y variables were getting corrupted while drawing the lines Formula Allcode DLL Change to allow multiple COM port instances 1-wire component timings altered to better suit slower 8-bit PIC devices - JK Fixed SerialDLL.dll to work correctly with multiple ports. FA RecordMic function SampleRate parameter change from UINT to UCHAR FAP4 component now has the FA Scan Port API function Formula AllCode P3 Component updated to 115200 Baud GPS sim was not correctly setting the COM port and Baud and the Data was always flagged as not received ESP8266 couldn't send out HTML strings larger than 255 characters RC5 in transmit mode for 8-bit PIC had a typo on the Timer Init Reg removed unused variable warnings from Switch base, Circular buffer, ESP8266 WIFI Zigbee - removed old unused v5 verbose property GLCD_ILI9341 text background printing incorrectly Zigbee node name scan not working correctly - fixed RC5 had a possibility to generate a compile error when only using RX or TX due to hidden unconnected pin LCD font not rendering correctly on Win10 machines due to missing font added copy of spi channel info into CAN properties on chip change SPI software mode was loosing it's pin connections when you reload the project PWM removed unused period count property RF-ISM solved another issue surrounding the sync byte changing the RF ISM sync byte was not doing anything, data with property selected sync still being received. 1-wire component had potential issues when used with multiple devices. Serial DLL was working very slowly so rolled back to older version Bluetooth v2 connectivity and discoverability changed to use specific AT commands and auto answer enabled after 1 ring cleaned up RTS signal flow control on Bluetooth v2 component by removing from CAL UART and processing directly Significant Bluetooth v2 fixes to allow code to work using standard circular buffer and flow control EB076 and EB076v2 had problems playing audio from the SD card, now fixed and working KS0108 GLCD was not using BG/FG colour variables correctly 180 degree servo movement now copied to standard servo component Servo controller component - auto move simulation wasn't working for channels > 0 Formula Allcode sim had problems on initialise due to false low battery reading FA component was missing some of its mesh resources RGBLED component did not simulate colours correctly when the bit depth was set lower than 8 GLCD bitmap sim type had a bug where Y coord was starting at 1 FAT - Added better user help to new SetTimeDate macro and fixed a compile problem file injector and serial DLL were returning incorrect values to represent a timeout Bluetooth component sim was not working correctly with the injector interface and I/O flasher Fixed some DSP issues relating to FFT Fixed a problem with the LUT component storing negative numbers Fixed a problem with the Freq Gen component storing 16-bit numbers into 8-bit memory locations Bluetooth v2 component was not flashing the component GUI during active communications Zigbee component had a significant delay during the initialise macro FAT component has a new property to allow the low speed and high speed SPI to be configured based on device type CAN component is customised for MIAC, but was not recognising MIAC V2 due to device name change CAL CAN component did not alter it's baud values to correctly configure the internal CAN - Cosmetic changes - Circular Buffer GetNumberBytes macro efficiency greatly increased FF2 component changes and LK PSU gLCD mods * Tools and plugins * - Feature additions - Added FlowKit V2 port mapping functionality Added an Untick All button - Bug fixes - Fixed a bug where the initialise function was not being included when you Fixed a bug that was causing Ghost to not receive data for digital pins Small memory leak fix (class with none virtual destructor being inherited from) Fixed a crash in the new FlowCode 2 stuff. * CAL changes * - Feature additions - USB CAL library finalisations for AVR Added HID support to AVR USB CAL library I2C Hardware added new definition to control 10ms delay on I2C Stop Event added AVR USB library files to the CAL PWM PWM1CON support (16F1508) added a warning when the PWM period register is not available on AVR devices e.g. the ATMEGA2560 16-bit PIC PWM now supports full 16-bit resolution PWM timer workaround for device with less than 5 PWM channels but variable timers PIC and 16-bit PIC CAL PWM code now supports dynamic timer allocation and seems to work well. PIC16Bit CAL SPI added 512 Prescaler Option Added more SPI prescaler options to PIC16BIT SPI CAL added missing SPI rates to ARM SPI CAL - Bug fixes - PWM channel 9 had issues on the ATMEGA32U4 device ATMEGA32 had CAL definition issues with PWM channel 4 fixed typo in PIC16BIT MX_ADC_TYPE_3 medelec35 fix Vref enable for ADC Type 7 (16F883, 16F884, 16F886, 16F887) PWM had a compile error on 16F1847 due to illegal redefinition of CCPTMRS0 ARM PWM was failing to compile due to incomplete up2date CAL definitions Fixed a compile error when using an ATXMEGA with > 3 hardware UARTs SPBRG defined as SPBRGL (missing from Boostc 16F1508 header) PIC_CAL_UART Changed MX_UART_2_PIE4 switch re 16F1946 compile error 16-bit PIC RAW ADC functions were causing a lock up if repeatedly sampling the same ADC channel fixed I2C baud rate Fixed CAL SPI simple typo bug PWM frequency assigned incorrectly for some 16-bit PICs * FCD changes * - Feature additions - Arduino Leonardo and Micro - Removed hardcoded FCD compiler and linker Added USB type information to USB H/W enabled AVR targets FlowKit V2 mapping for more Arduino targets FlowKit V2 mapping for more Arduino targets FA individual FCDs for User and API modes, changes ROM linker location Added comparitor definitions to 16F193x FCDs as a trial Formula Allcode chip definition file is nearer completion Added UART receive interrupt (16F1508/9) Formula Allcode definition file populated with more hardware specific information created formula allcode chip definition file Added a few extra valid PWM prescaler settings to some PIC devices Added more PWM timer options and prescale values to 16F18xx, 16F19xx devices Added all PWM timer option/info to dsPIC FCDs and Added keywords to ARM FCDs Added PWM timer2 option/info to dsPIC FCDs - more to come Added PWM timer option/info to PIC FCDs Added new sections for use with FlowKit 2 port mappings - Bug fixes - 16LF193x definition files had a syntax error due to new definitions Added auto clock fix to AT90USB128x and AT90USB64x devices to allow them to run at the intended speed Removed FA API Specific FCD as no longer required Arduino Leonardo and Micro targets had problems with enabling interrupts after bootloader ARM UART and SPI pin naming on standard chips had a problem 18FxxJ13 devices not listing the remappable INT pins ATMEGA2560 targets had the IOC port for Ports J and K assigned to the wrong port number 18F1320/18F1220 devices had UART pin connections listed incorrectly FA API Definition changed mLoader flag to -faapi FA Removed -config from FCD programmer parameters comparator defines for 16F193x FCDs was causing a XML error ARM INT0, INT1 interrupts had a minor bug where INT1 referred to INT0 Timer 8 and 9 in some 16-bit PIC device definitions were incorrectly referring to Timer 1 Some 18F devices had a surplus config bit available which caused programming verify errors found a few additional 16LF files with INT simulation pin problems found more 8-bit PIC devices with incorrect INT pin assignment for simulation Fixed a compile error on 12F609 due to redefined ports (Medelec35) Fixed USB clock divider for EB091 USB Initialisation code ATMEGA32/16 Timer2 register name & prescaler FCD fix Modified the EB091 FCD so that it will program the config and default the settings to jump to Primary Flash instead of Aux mem added missing config oscillator settings to 16F1508 and 16F1509 targets - Cosmetic changes - Formula Allcode USB Initialise Speed FCDX * Compiler changes * - Feature additions - AVR USB batchfile and support readme cleanup AVR USB Batch file update to support HID and Serial Added AVR USB enabled batch file for allowing USB components to function FA User & FA API Linker Scripts + Linker Batch update - Bug fixes - Added missing AVR Readme document for different common compiler options Arduino programming batch file Added -D to disable auto flash erase, done via -U programming flag Page aligned the FA Linker scripts memory addresses 16F1786 CCPCON3 PWM channel 3 register fix from Medelec35 Fixed a compile bug for the 16F1786 device * Flowcode executable * - Feature additions - Added 8Mhz speed to the clock speed drop down menu in project options Added ticks to the ICT & ICD menu options to show whether they are enabled or not - Critical fixes - Fixed occasional crash in component manager Fixed a crash that occasionally happened when deleting a group of several icons at once Several crash fixes. This version should be far more stable than v6.1.2 Fixed a bug I found in PropertiesPane that could cause a crash sometimes - Bug fixes - Fixed a bug where the macro's .Return variable gets incorrectly declared as 'MX_GLOBAL MX_TYPE FCV_RETURN;' instead of 'MX_TYPE FCR_RETVAL;' Fixed a minor resource leak Fix a bug where when the console window was docked in the center of another window then it would stop accepting text input Fixed a bug where (when importing a macro that had conflicting variable names) it sometimes wouldnt tell you the name of conflicting variables FCLF-658 and FCLF-623 - Breakpoints not working when simulation speed reduced Fixed a few potential resource leaks where DestroyWindow was not being called on classes derived from CWnd before deleting them Fix for bug FLCF-1002 - New string objects not being initialised to their correct length Fixed a bug where the properties pane wasnt updating itself when a property was changed. Fixed a bug where a thread wasnt ending correctly when pause was clicked and then stop was clicked while in a loop. removed slow Arduino COM port detection Arduino COM port detection slowdown fixed (removed COM port enumeration) * Programmer * - Feature additions - Added a new dialog to allow users to rename their FA buggies and change keys Added bluetooth functionality for the Formula Allcode buggy Added bluetooth Name & Key settings dialog Added support for Formula Allcode - Bug fixes - Fixed a problem where files were sending very slowly over USB Fixed a minor resource leak where a handle wasnt being closed