===================================================================================================== // 3.17.0 30 October 2024 ===================================================================================================== OK NX5, NX-208, Add log event code for SMS resetting due to lack of comm between NXSMS and SMS board OK NX5, NX-207, Remove R22 refrigerant superheat calculation to make room for BACnet WhoHas/IHave services, will stay in dual core only due to FLASH space limitations OK NX5, NX-206, Remove Arduino Query protocol to make room for BACnet WhoHas/IHave services, will stay in dual core only due to FLASH space limitations OK NX5, NX-205, Increase BACnet-ID configuration range up to 22 bits to allow the full 0..4194303 range (XEE_SYS_BACnet__ID_MSTP_HI) OK NX5, NX-204, Fix MSTP network healing in 9.5.6.6 PASS_TOKEN FindNewSuccessor sequence OK NX5, NX-203 Fix proportional control output for AO types to include the min/max limits beside the fixed 0-100% OK NX5, NX-199, Fix BACnet NPDU encoding when working on a local segment to remove network component OK NX5, NX-197, Fix BACnet stack issues 135.1-2023-9.22.2.1,3,4 where class on errors was OBJECT instead of PROPERTY OK NX5, NX-196, Fix BACnet stack issue 135.1-2023-9.30.1.2 limit TimeSynchronization-Request to dates between years 2000 and 2099 OK NX5, NX-195, On NX when doing BACnet discovery make the description property reflect the type/channel number OK NX5, NX-194, Fix BACnet stack issue 135.1-2023-7.1.2 After transmitting ReadProperty-Request with, 'Object Identifier'/'Property Identifier'=Y, IUT should respond BACnet-Error-PDU with 'Error Class' = PROPERTY, 'Error Code' = UNKNOWN_PROPERTY" OK NX5, NX-193, Fix BACnet stack issue 135.1-2023-7.1.3 After transmitting ReadProperty-Request with, 'Object Identifier'/'Property Identifier', IUT should respond with all property identifiers OK NX5, NX-191, Fix BACnet stack issue that reported firmware revission incomplete, added sub-revision and optional release candidate during pre-certification by SoftDEL OK NX5, NX-190, Fix BACnet stack issue 135.1-2023-9.39.1 correct messages that should report Reject-UNRECOGNIZED_SERVICE that were sending instead Abort-Segmentation-not-supported during pre-certification by SoftDEL OK NX5, NX-189 Fix BACnet stack issue 135.1-2023-9.32.1.2 that Who-Has request expecting an I-Have message using 'name' was missing during pre-certification by SoftDEL OK NX5, NX-188, Fix BACnet stack issue 135.1-2023-9.32.1.1 that Who-Has request expecting an I-Have message using 'device-identifier' was missing during pre-certification by SoftDEL OK NX5, NX-183, Add Belimo MP support to NXVAV firmware OK NX5, NX-181, Add support for Belimo MP-BUS temperature sensor OK NX5, NX-180, Fix bug on MP-BUS that caused issues when ZTH was being used and the reset when an actuator was hot connected OK NX5, NX-179, Add support for different pressure sensors for NXVAVAP, DP1, DP3 & DP4 OK ETH3, ETH-161, Add support for writing modbus on COM1 and COM2 with either function 06 (single register) or 16 (multiple register) OK ETH3, ETH-160, Increment the T_QUEUE_LOCKOUT time from 200ms to 750ms for networks with high count of nodes, it is the time to wait for the token when a frame is placed in the queue ready to be sent OK ETH3, ETH-159, Add support for setting the write priority when using the IP Client remotes for BACnet/IP OK ETH3, ETH-158, Add registers to allow modbus master to have dynamic timeout and poll delay OK ETH3, ETH-155, Add to CGI gateway option to read and write ETH3´s schedules OK ETH3, ETH-153, Add diagnostics and needed APIs for bridging and tunneling on COM1, COM2, SPI.NX as well as MSTP to aid in diagnosing busses and neworks OK ETH3, ETH-152, Fix polling issue in Optomux master that was inconsistently creating poll sequences and reporting on line state inconsistently OK ETH3, ETH-151, Fix MSTP network healing in 9.5.6.6 PASS_TOKEN FindNewSuccessor sequence OK ETH3, ETH-149, Set max master dyanmically to any address found above its own max master and clear BACnet.tunnelMessage = BACNET_TUNNEL_START if returning early to avoid MNSM to get stuck OK ETH3, ETH-146, Improve USB latency to avoid losing the token on file operations OK ETH3, ETH-144, Close the USB drive when doing FLASH pages download to avoid bricking the download OK ETH3, ETH-143, Fix COMM latency while tunneling and bridging OK ETH3, ETH-142, Fix bug when reading and writing the remote points on modbus master on COM2 (NV_FB_MODBUS_FORMAT_HSB_COM2) OK ETH3, ETH-140, Fix loss of polling on ETH3 caused by lack of reset of BACnet.frameTypeAwaitingTx on timeout OK ETH3, ETH-139, Add configuration register XEE_SYS_RMT_WRITE_MODE similar to NX to be able to send WR/OVR from remote points written from PLC OK ETH3, ETH-136, Fix BACnet discovery issues when a segmented response is received, send generateAbort( ABORT_REASON_SEGMENTATION_NOT_SUPPORTED ) to recover token OK ETH3, ETH-135, Add BACnet time syncronization service over MSTP and options as slave and master (RTCC set) OK ETH3, ETH-133, Fix remotes not marked offline when controller returns error code to the query or read/write services OK ETH3, ETH-132, On ETH3 when doing BACnet discovery make the description property reflect the type/channel number OK ETH3, ETH-131, On ETH3 when doing BACnet discovery if the requested label has not been yet updated send the text "Loading, try again" instead OK ETH3, ETH-129, ETH3 clear API reset support for ETH3 - COM2 - HSB OK ETH3, ETH-126, Fix bug on SPI labels to get updated regularly by the ETH3 cache after changes on the SPI::NX controller. OK ETH3, ETH-125, Move name[12] variable from global to HTTP_CONN structure to make it socket safe OK ETH3, ETH-99, Add Bacnet IP client write capability OK WIN, OC-178, Add support for writing modbus on COM1 and COM2 with either function 06 (single register) or 16 (multiple register) OK WIN, OC-177, Add the flag -ETH3_MSTP_DIAG to generate ETH3_MSTP_DIAGNOSTIC.TXT file from the CLI OK WIN, OC-176, Add option in save CSV trends to store 3K samples of V/I from NX5-USB-CURR-3K OK WIN, OC-175, Add log event code for SMS resetting due to lack of comm between NXSMS and SMS board OK WIN, OC-174, Fix issue with NC10P with dual core firmware and no dual core display not reporting error when downloading PLC2 or PLC3 OK WIN, OC-173, Add support for setting the write priority when using the IP Client remotes for BACnet/IP OK WIN, OC-172, Avoid any type of communication when the -COMPILE flag is used thru the CLI OK WIN, OC-171 Add support for ETH3 registers to allow modbus master to have dynamic timeout and poll delay OK WIN, OC-170, Fix issue when loading a factory reset controller from script aborts after trying to write controller's name OK WIN, OC-165, Add dialog to test diagnostics and needed APIs for bridging and tunneling on COM1, COM2, SPI.NX as well as MSTP to aid in diagnosing busses and neworks OK WIN, OC-164, Labels not loading correctly using the -COMPILE_D flag OK WIN, OC-163, Add BI/AI config keyword I/O integration values and AO configuration OK WIN, OC-162, Fix NX_SPI output instructions on IF instruction on ETH3 not being scoped correctly OK WIN, OC-161, Fix first operand in SET/RESET instruction not being set to 1 OK WIN, OC-160, Allow non-eeprom setpoints for enable/disable of leader calc instruction OK WIN, OC-159, Add compiler script support for ETH3 to access both local and remopte (NXSPI) databases OK WIN, OC-156, Fix in ETH3 remotes dialog the buttons for: write/override/read visibility and availability depending on protocol and object type OK WIN, OC-155, Add BACnet time syncronization service over MSTP and options as slave and master OK WIN, OC-154, Add option to remove bounds to BACnet point list for possible backward compatibility (XEE_BACNET_BOUND_TO_DISCOVERY) OK WIN, OC-153, Modify BACnet-ID configuration range up to 22 bits to be in pair with firmware range 0..4194303 (XEE_SYS_BACnet__ID_MSTP_HI) OK WIN, OC-152, Change text message when using INITIALIZE with non EEPROM setpoints to provide a more meaningful message OK WIN, OC-151, Update filename for LT-6630 to mention firmware upgrade OK WIN, OC-150, Avoid modifying controller name if no name is provided on script, refrain from using START_PLC label that is created by default OK WIN, OC-149, Avoid warning when initializing NTC curves constants when downloading from script OK WIN, OC-148, Fix exception that crashed MFC tool configurator when opening list of ETH3 remote points in COM1 or COM2 OK WIN, OC-147, Fix in IP remotes when saving IP port number was reverting to default on BACnet IP and Modbus TCP OK WIN, OC-146, Add AI_TYPE_NTC_10K_III_C_PU and AI_TYPE_NTC_10K_III_F_12V keywords that are not in the compiler OK WIN, OC-140, Add keyword to enable setpoints writing on script and generate error if not present to avoid inadvertently writing EEPROM registers on script that might wear out the memory prematurely OK WIN, OC-138, Add configuration keywords to script compiler to support batch programming OK EMUL, EM-28 Fix proportional control output for AO types to include the min/max limits beside the fixed 0-100% OK NG, NG-50 Fix MSTP network healing in 9.5.6.6 PASS_TOKEN FindNewSuccessor sequence OK NG, NG-51, Fix AO glitch on poweron by adding aoConditionUpdate() in USER_initialize() OK NG, NG-49, Fix proportional control output for AO types to include the min/max limits beside the fixed 0-100% OK NG, NG-48, Fix writing to remote points on PLC was not setting the WRITE/OVERRIDE bit OK NG, NG-47, Fix AI calibration error added by mistake on analog.c *error by double if( (idx > 8) introduced on v3.16.0 OK NG, NG-46, Fix mapping mode for schedules over modbus OK DOC, DOC-10, Add document to dist.: LT-6706 Guide to Multivendor Sensors Setup using NX Controllers. OK DOC, DOC-11, Update socument in distribution: LT-6631 OpenBAS Script Programming Manual rev 4 ===================================================================================================== // 3.16.3 6 February 2024 ===================================================================================================== OK DOC, DOC-9 Update documentation for script compiler LT-6631 and include in distro OK NX5, NX-178 Fix oscillator when output is sent to AO or RES_FLT works correctly OK NX5, NX-177 Fix proportional control output not working correctly OK NG, NG-43 Fix proportional control output not working correctly OK NG, NG-44 Fix oscillator when output is sent to AO or RES_FLT works correctly OK ETH3, ETH-123, Add to BACnet IP client possibility to address channel zero OK ETH3, ETH-122, Fix proportional control output not working correctly OK EMUL, EM-24 Fix proportional control output not working correctly OK EMUL, EM-19, AO overrides are not effective OK EMUL, EM-20, Hour counter does not accumulate to ADF register OK EMUL, EM-21, Pinned ADF´s dont get restored correctly using Save/Restore to disk OK WIN, OC-145, Add timer example files to script examples folder OK WIN, OC-144, Add OSCILLATOR keyword support similar to OSCILATOR OK WIN, OC-143 Fix issue when running multiple instances of MFC tool for batch programming accessed wrong folder OK WIN, OC-142 Add to BACnet IP client possibility to address channel zero OK WIN, OC-141, Fix for the cryptic error "0.00 below min firmware version" when no project.nx5 is found ===================================================================================================== // 3.16.2 17 November 2023 ===================================================================================================== OK ETH3, ETH-121, Fix BACnet/MSTP stack issue with WhoIs/IAm answering to broadcast instead of originating address OK ETH3, ETH-120, Add API to remove files from USB, required for batch programming OK NX5, NX5-175, Fix BACnet/MSTP stack issue with WhoIs/IAm answering to broadcast instead of originating address OK NG, NG-40, Fix BACnet/MSTP stack issue with WhoIs/IAm answering to broadcast instead of originating address OK WIN, OC-139, Add Support to test API to remove files from USB, required for batch programming ===================================================================================================== // 3.16.1 7 November 2023 ===================================================================================================== OK NX5, NX-173, Point limit API gets corrupted when tunneled through BACnet/MSTP OK DUALC2, NX-174, Change background of power-on screen from black to clear to aid Joules Green projects ===================================================================================================== // 3.16.0 06 October 2023 ===================================================================================================== OK NG, NG-39, Re-synch SPI port after 10 seconds if communication lost with ETH3 OK WIN, OC-137, Disallow RES_BIT-1 to be used to stop the PLC on the ETH3 OK ETH3, ETH-118, Add fail safe register to stop PCB for debug mode (and exclude RES_BIT-1) OK ETH3, ETH-119, Log to USB every time the PLC is stopped by the debug feature ===================================================================================================== // 3.15.7 18 July 2023 ===================================================================================================== OK ETH3, ETH-117, Make SPI cache settings user adjustable to be able to tune them when the PLC usage increases OK NX5, NX-169, Test what happens to CALL when calling a non existing PLC (verify all stacks are consistent on this) setPLC_baseAddress() returns NULL if the called memory does not exist OK NX5, NX-170, Add to NX project builds for Belimo MP-Bus controller code: NXVAVAP and VarMonoE OK NX5, NX-171, Add support for Belimo MP-Bus protocol on the NXVAVAP OK WIN, OC-134, Fix OnLine detection instruction on ETH3 that was not able to detect above channel #50 OK WIN, OC-135, Show mA options at 250/500 Ohms loads while configuring the analog outputs OK ETH3, OC-136, Make SPI cache settings user adjustable to be able to tune them when the PLC usage increases ===================================================================================================== // 3.15.6 17 July 2023 ===================================================================================================== OK NG, NG-36, Fix bug when slaves 102 and 103 report offline even while being online OK ETH3, ETH-75, Add Modbus float support for ETH3 in IP as server, Need to add MFC support, firmware is OK on v3.15.2 OK ETH3, ETH-90, Add float formats support to client support for Modbus/TCP IP remote points OK ETH3, ETH-111, Fix in Modbus TCP client the correct sending and reception of the (Unit Identifier UI) ID number OK ETH3, ETH-113, Fix writing of float formats to modbus TCP server OK ETH3, ETH-114, Add ETH3.RMT.IP to alternate modbus mapping for float support OK ETH3, ETH-115, Fix bug in e-mail to be able to send null user to use RUT360 router with stunnel OK ETH3, ETH-116, Add support to check status of remote IP points using the OR/ONLINE instruction using AIs 1 to 250 OK WIN, OC-129, Add UI support for setting modbus TCP alternate formats, not just via EEPROM writer to: XEE_SYS_MODBUS_RD_TY_FMT_TCP* OK WIN, OC-130, Fix view of totalizer counter result register while connecting to ETH3 database OK WIN, OC-131, Add support for float formats to IP client for Modbus/TCP IP remote points OK WIN, OC-132, Fix bug when importing CSV file in IP remote client was popping an EOF error OK WIN, OC-133, Add support to check status of remote IP points using the OR/ONLINE instruction using AIs 1 to 250 ===================================================================================================== // 3.15.5 06 June 2023 ===================================================================================================== OK ETH3, ETH-107, BACnet/IP discovery reports COM2 binary type remote points as Analog type OK ETH3, ETH-108, Fix string texts when discovering BACnet/IP COM1 Binary type remote points OK ETH3, ETH-109, Check if COMn is a master protocol during BACnet/IP discovery OK ETH3, ETH-104, Fix status reporting for field bus and IP remotes using the read point API OK ETH3, ETH-105, Fix stop bits not being initialized to 1 on a factory reset OK WIN, OC-106, Add support for importing client IP remotes from CSV file OK WIN, OC-123 Fix issue with override UI dialog with reentrancy retry OK WIN, OC-126 Fix issue with remote point names not stored to NX by default (NO_NX_STORE) OK DEPLOY, NX-115, Add additional examples for adding modbus points to examples and also when generating templates OK DEPLOY, OG-142, Add documentation on how to enable/disable SPI port to ETH3 user guide ===================================================================================================== // 3.15.4 06 June 2023 ===================================================================================================== OK ETH3, ETH-101, Fix in Modbus TCP client clearing index when reaching last point to poll to reduce wasted time scanning thru the end OK ETH3, ETH-102, Fix in BACnet IP reset of UDP socket when timeout to avoid poll engine stall OK NX5, NX-165 DDX api for RMT sometimes returns values for RES_FLT points OK NX5, NX-166 Read point API sometimes returns RF instead of RMT for object type OK NX5, NX-167 Fix inconsistencies on getting remote point value using getRemotePtXP_currValue() in logic, Modbus and BACnet for remotes above 50 ===================================================================================================== // 3.15.3 25 May 2023 ===================================================================================================== OK EMUL, EM-18, Call instructions located at PLC Rung-1 cause inconsistent behaviours OK ETH3, ETH-86, Add Client support for Modbus/TCP IP remote points OK ETH3, ETH-95, Add Client support for BACnet/IP remote points OK ETH3, ETH-80, Add hazzard zone detection to FX-3500 fire panel printer driver, requested by Carlos OK ETH3, ETH-81, Fix some issues detecting incorrectly the event sent by the fire panel printer driver OK ETH3, ETH-78, Trace periodic WDT reset by [T1-clockTick].s(x) OK ETH3, ETH-96, Fix recursive reset that happended randomly when the SPI port was active and any of COM1 or COM2 were set as masters OK ETH3, ETH-94, Provide ETH3 UARTs with two stop bit options, requested by Sunil for a customer OK ETH3, ETH-82, Add in write single/multiple Coil in TCP support for ETH3's res-bits, currently only modify by holding register alternate mapping was supported OK ETH3, ETH-91, Fix when documenting remote points statistics of first polled point always reads back zero OK ETH3, ETH-92, Add IP remote points to BACnet/IP discovery OK ETH3, ETH-93, Call instructions located at PLC Rung-1 cause inconsistent behaviours OK NX5, NX-160, NX AO´s dont give out 10 VDC, verify that with 1K Ohm load outputs go all the way up tp 10 VDCOK OK NX5, NX-158, In the UI's of the NXSF make changes to account for inverted diodes leakage current affecting themistors OK NX5, NX-163, Fix bug on NX5-ECO that kept TX2 = 0 on, when power was applied OK NX5, NX-162, Call instructions located at PLC Rung-1 cause inconsistent behaviours OK NG, NG-33, Fix issue with schedules reported by Carlos Isguerra OK NG, NG-34, Fix remote slave 102 reporting inconsistenly online status on MFC tool OK WIN, OC-127 Fix reporting of EYH3´s remote points on line polls reporting of COM2´s first remote OK WIN, OC-124 Increment number of temp labels that can be created MAX_TEMP_LABELS to allow for long programs with lots of jumps to compile without the "<-- MISSING LINK OR LABEL IS FROM DIFFERENT PLC" error OK WIN, ETH-84 Add Client support for Modbus/TCP IP remote points OK WIN, OC-125 Add support for IP client sockets and remote points OK DEPLOY, OG-176, Update LCD firmware in distribution for MDB-1102 ===================================================================================================== // 3.15.2 20 Feb 2023 ===================================================================================================== OK EMUL, EM-16, Fix thread issue that was corrupting rungs by PLC execution unit while writing the PLC from a client OK ETH3, ETH-76 Add missing ETH3 mapping of RES_FLT in BACnet/IP it was missing in the range: AV-5501..5755 OK ETH3, ETH-74 Fix DB API not returning all remote point values OK NX5, NX-157 Add to DB API for BOs BACnet priority information if BACnet priorities are enabled OK NG, NG-31, Fix modbus slave engine randomly gets stalled only way to get out is with controller reset OK WIN, OC-121, Add support for BACnet priorities API to NX firmware, see NX-156/NX-157 ===================================================================================================== // 3.15.1 19 Dec 2022 ===================================================================================================== OK ETH3, ETH-73, Enable hardware WDT on PC32 to kick in after 30 seconds of ETH3 software bricking OK ETH3, ETH-72, Fix power on result bits 251, 252 & 253 to operate correctly after power on OK ETH3, ETH-71, Fix DB API for timer returning error on channel 1 OK ETH3, ETH-66, Add modbus long, float32 and float64 support for ETH3 in COM1 and COM2 as master OK WIN, OC-118, Add support for modbus float support for ETH3 in COM1 and COM2 as master OK WIN, OC-117, Fix variable search in PLC canvas, tab sequence was incorrect, reported by SICI. ===================================================================================================== // 3.15.0 21 Nov 2022 ===================================================================================================== OK ETH3, ETH-37, Web pages get erased and IP changed at random times OK ETH3, ETH-63, Fix NVRAM corruption issue that was randomly changing COM1 protocol and DST settings OK ETH3, ETH-64, Fix test e-mail from: field, as ipage now requres it to be same as user for correct authentication and spoofing avoidance OK NX5, NX-153, Change setting of SCLK pin from output to input to avoid glitch tha was causing SPI port of ETH3 to be corrupted at random times OK NX5, NX-150, Fix logging of RTCC set that should be only logged when connecting via USB, all other ports should be excluded OK NX5, NX-152 Add AI and BI override/release feature OK NG, NG-16, Add DDX support API OK NG, NG-22, Add readObjectAPI() OK NG, NG-30 Add AI and BI override/release feature OK WIN, OC-116 Add AI and BI override/release feature OK WIN, OC-109, Fix existing reentrancy collission messages when configuring remote points to avoid having to exit dialog boxed ===================================================================================================== // 3.14.4 8 Nov 2022 ===================================================================================================== OK EMUL, EM-15, Add LAGGER_CALCULATOR functionality to LEADER_CALCULATOR instruction OK NX5, NX-140, Add LAGGER_CALCULATOR functionality to LEADER_CALCULATOR instruction OK NG, NG-25, Add LAGGER_CALCULATOR functionality to LEADER_CALCULATOR instruction OK NG, NG-26, Add missing COM2 as slave communication statistics OK NG, NG-28, Disable dynamic protocol changes between Optomux/ASCII/ArduinoSQL on COM1,2,3 ports, will only remain on USB OK NG, NG-29, Correct PROP_OBJECT_NAME reporting in BACnet label #200 instead of MAC+ID OK ETH3, ETH-59, Add option to disallow BACnet to set time over MSTP when ETH3 is a time server, added NV_ALLOW_BACNET_CLOCK_SET OK ETH3, ETH-60, Remove potentially dangerous code in ASCII driver which is remnant of initial memory debugging OK ETH3, ETH-61, Make ASCII protocol an individual case while processing the protocol switch for COM1 and COM2 and leave the default case as a do nothing OK ETH3, ETH-55, Add ECM protocol to serial ports OK ETH3, ETH-56, Update e-mail default credentials for ipage server OK ETH3, ETH-57, Add capability of e-mail server to select which RES_BIT is the trigger for each of the ten mails, it was previously hardwired to ADB-1..10 value OK ETH3, ETH-62, Fix test e-mail from: field, as ipage now requres it to be same as user for correct authentication and spoofing avoidance OK WIN, OC-115, Fix startup issue with IP and emulator that was taking too long to establish initial communication due to IP thread not being properly started on initialization OK WIN, OC-113, Add support for LAGGER_CALCULATOR in script editor OK WIN, OC-105, Not, done, instead improved compiler to support constant integers 0..254. Limit range in ladder editor for ETH3 and NX controllers for constant integers from 0 to 253 (KBYTE_1 to KBYTE_254) to be consistent with script compiler ===================================================================================================== // 3.14.3 5 Oct 2022 ===================================================================================================== OK NX5, NX-148, Fix bug that reported hardware revision incorrectly by not clearing i2c.icID to base address in readRemotePointConfiguration() OK NX5, TJ-44, Fix pull station test jig firmware, changes by Chris merged to main development line ===================================================================================================== // 3.14.2 23 Sep 2022 ===================================================================================================== OK WIN, OC-88, Fix stager script to take number ZERO in SS_ADB_EN to disable indexed enables OK WIN, OC-89, Fix compiler issue If line in script ends with "\" line does not get generated if it is the last line of the script OK WIN, OC-90, Add capability to compiler's syntax to assignment in the IF that it can also also be "is" or "=" same as in comparison to streamline programming OK WIN, OC-92, Add support for the API for timer write to be able to modify timer values via comm ports and not only by the PLC or output assign instruction OK WIN, OC-93, Avoid having infinite re-entrancy collision messages popping up OK WIN, OC-94, Fix issue with comparing software and firmware versions on main screen OK WIN, OC-95, Fix UI for proportional control was not working correctly for ETH3 local PLCs OK WIN, OC-96, Modify start/stop with emergency stop and set/reset to compile from script to be the feedback the output target and not a stack res bit so it works well when multiple instructions are added to the script, workaround was to use res_bits as target instead or preloading stack register RES_BIT_240 with target value before the instruction OK WIN, OC-97, PLC Instruction Number Capacity Warning happens at 600 (now 800) instead of 400 instructions during unoptimized PLC instruction generation OK WIN, OC-98, Allow script users to mark point names that should be prioritized for saving to controller using DECLARE instead of DEFINE keyword OK WIN, OC-99, INT type point names in script decrease available number of point names that are saved to controller OK WIN, OC-100, RES_FLT in Prop Ctrl instruction where RES_FLT’s did not get initialized on the emulator, create a short script version with no initilizers and enforce short version for RES_FLTs OK WIN, OC-101, Fix CLI compilation issue where was requiring updated firmware, while during compile only it should not ask for firmware revision OK WIN, OC-102, Fix pop-pup of compiler dialog when script_1.txt is missing when called thru the CLI. Reported by Chris OK WIN, OC-103, Check and fix percentage file is going back to zero and causes flicker on SDS during download OK WIN, OC-104, Add read write support for second set of registers for NXSF integration time OK NX5, NX-143, Read point API with flag configuration always returns status 0 for BO and AO OK NX5, NX-133, Modify proportional control block to output limited 0-100 only for AO´s, if RES-FLT are used, only limit to MIN & MAX values which can be outside of 0-100% range OK NX5, NX-138, Fix bug that was reporting incorrect remote point status when multiple master protocols were used by adding parameter to clearStatOfNullRemotes() OK NX5, NX-134, Verify operation of remote point 1 reported by Chris as being alternating between OnLine and OffLine OK NX5, NX-137, Modify K_DEAD_CMASTER_COM_15_SECS from 5 to 15 seconds to allow for a large number of NULLed remote points finish a sequence without resetting OK NX5, NX-136, Fix issue with modbus master setting even/odd when it should not when dual master in COM1 and COM2 is enabled OK NX5, NX-135, Add the API for timer write to be able to modify timer values via comm ports and not only by the PLC or output assign instruction OK NX5, NX-144, Add second set of registers for NXSF integration time OK NX5, NX-145, Add a 60 second reload in BACnet when using MAC 100..103 disable forcing AOs and BOs with slave default values by reloading Clk.rmtNX5timeOut100 timer, reported by Luis from GMI OK NX5, NX-146, Made additional space removing some LCD messages when compiling for FIRE_PANEL_PRINTER_TEST_JIG_MPS_400 OK NX5, NX-147, Correct modbus CRC generation for modbus MEI tunnel, was using +8 bytes than needed OK ETH3, ETH-47, Add the API for timer write to be able to modify timer values via comm ports and not only by the PLC or output assign instruction OK ETH3, ETH-48, Fix the PLC timer instruction it was not operational, only the 1 and 0.1 second timer options will be available OK ETH3, ETH-49, Modify proportional control block to output limited 0-100 only for AO´s, if RES-FLT are used, only limit to MIN & MAX values which can be outside of 0-100% range OK ETH3, ETH-50, Fix proportional control was not working correctly, only RES_FLT are accepted for output OK ETH3, ETH-51, Check fire printer protocol 1st character add garbage filter OK ETH3, ETH-54, Log files stored in USB memory can´t be viewed with the configure links, only after downloading from UL/DL page they can be viewed correctly OK EMUL, EM-11, Add the API for timer write to be able to modify timer values via comm ports and not only by the PLC or output assign instruction OK EMUL, EM-12, Modify proportional control block to output limited 0-100 only for AO´s, if RES-FLT are used, only limit to MIN & MAX values which can be outside of 0-100% range OK EMUL, EM-13, Add BACnet priorities API OK EMUL, EM-14, Read point API with flag configuration always returns status 0 for BO and AO OK NG, NG-2, Add BACnet support on all three COMM ports (currently only COM1 fully tested) OK NG, NG-17 Add the API for timer write to be able to modify timer values via comm ports and not only by the PLC or output assign instruction OK NG, NG-19 Modify proportional control block to output limited 0-100 only for AO´s, if RES-FLT are used, only limit to MIN & MAX values which can be outside of 0-100% range OK NG, NG-20, Fix issue with thermistor and ohm readings for ADC channels >= 9 that have 27K high side resistor instead of 15K from ADC channels 1 thru 8 OK NG, NG-21, Fix baud rate setting of K_BRG_38400 incorrectly set in UARTn_set_baud_rate() switch cases OK NG, NG-24, Add BACnet and modbus tunnels to three comm ports OK DEPLOY, OG-162, Add DECLARE keyword to Notepad++ list OK DEPLOY, OG-163, Add ONLINE keyword to Notepad++ list ===================================================================================================== // 3.14.0 26 Jul 2022 ===================================================================================================== OK NX5, NX-125, Optimize code sections to reclaim flash memory space, 86+80+2+20+26+182+82=478 bytes save so far OK NX5, NX-127, Add feature to identify a BacNET/MSTP master on/off-line by reloading the timer on writes by a remote master (JACE/ETH3) OK NX5, NX-129, Create instruction to be able to test for offline remote points to act accordingly in program, for script support see OC-43 OK NX5, NX-131, Create new instruction type LOGIC_RMT_ONLINE_DETECT that works the same as the OR OK NX5, NX-132, Make offline remotes return NaN only when using DDX OK DUALC2, NX-130, Fix issue with null remote points marked as offline OK ETH3, ETH-39, Add autoconfiguration of ETH3 to work as a fire protocol converter by inserting a USB with the \_OpenBAS\ETH3-CFG.INI file (Requested by Carlos Lorenzo/Argentina) OK ETH3, ETH-38, Add PLC debug breakpoint support to stop PLC when a specified RES_BIT is set to 1 OK ETH3, ETH-41, Make BACnet discovery of remote points of ETH3 binary if their mapped point is digital OK ETH3, ETH-42, Fix bug on ETH3 affecting power on with NX::SPI connected OK ETH3, ETH-44, Create instruction to be able to test for offline remote points to act accordingly in program, similar as NX/EG/EMU still needs script support OK ETH3, ETH-45, Create new instruction type LOGIC_RMT_ONLINE_DETECT that works the same as the OR OK ETH3, ETH-46, Make offline remotes return NaN only when using DDX OK EMUL, EM-8, Fix bug that when PLC was loadad not all instructions were loading, randomly some failed, modified simple ACK with Complex ACK with read back data, MFC tool retries if fail OK EMUL, EM-9, Create new instruction type LOGIC_RMT_ONLINE_DETECT that works the same as the OR OK EMUL, EM-10, Mark remotes as always ONLINE OK NG, NG-11, Add PLC debug breakpoint support to stop PLC when a specified RES_BIT is set to 1 OK NG, NG-12, Fix issue with BO-22 that was toggling when ON if AO-4 == 0, reported by Manuel SICI OK NG, NG-13, Create instruction to be able to test for offline remote points to act accordingly in program, same as NX-129 supported by script in OC-43 OK NG, NG-14, Create new instruction type LOGIC_RMT_ONLINE_DETECT that works the same as the OR OK NG, NG-15, Make offline remotes return NaN only when using DDX OK DEPLOY, OG-143, Fix examples for v2.74 document rev 1 on usage of special instruction on script, it is missing the number of indexed variables to use, in C:\OpenBAS\Examples\08-Special_instructions.txt OK DEPLOY, OG-155, Move bootloaders from versioned folder to C:\OpenBas\Tools folder OK WIN, OC-79, Improve remote point restore by removind extra redundant code for Emerson project fix OK WIN, OC-80, Improve commSeq.log file structure to include acknowledge and visually align to make easier to pinpoint comm. issues OK WIN, OC-77, Fix bug when loading labels by USB using the CLI was abnormally exiting OK WIN, OC-78, Fix bug when loading AI calibration by USB using the CLI was abnormally hanging the program OK WIN, OC-76, Fix bug when setting day ligh saving time manually, setting the change to winter the day was only allowed in a range 1 to 23 when being read back OK WIN, OC-68, Verify all restored sections after a compile get restored correctly according to fix in OC-67 OK WIN, OC-65, Since SDS now uses AI 12 bit config type as “binary”, script should allow: UI_CONFIGURATION BI_1 = BI_TYPE_RAW OK WIN, OC-74, Add migration tool for the 256 byte boundary fix in output assign instruction in the ETH3, see OC-72/ETH-40 OK WIN, OC-75, Removed pop up indicating that NTC default constants were set when loading AI calibration values from CLI on a factory default cleared controller OK WIN, OC-86, Add support to handle off line remote points in an educated way in the PLC by adding the ONLINE keyword in CScriptCompiler::checkKeyword(), see NX-129 OK WIN, OC-84, Disable calls to CExWinDlg::OnPaint() from within CExWinDlg::OnTimer() when not on main screen to avoid comm reentrancy issues OK WIN, OC-85, On ETH3 remote point dialog make system statistics optional to improve UI responsiviness OK WIN, OC-87, Add support for new instruction type LOGIC_RMT_ONLINE_DETECT that works the same as the OR ===================================================================================================== // 3.13.3 10 May 2022 ===================================================================================================== OK ETH3, ETH-40, Remove the 256 byte boundary fix in output assign instruction and add NV_ETH3_OUTPUT_ASSIGN_FIX persistent NVRAM register OK NX5, NX-123, Add PLC debug breakpoint support to stop PLC when a specified RES_BIT is set to 1 OK NX5, NX-124, Fix bug in clearStatOfNullRemotes() that was setting status to zero if type = 0 (NULL) or objNr == 0 (channel-1) instead of address == 0 on the second check, this was disabling any write command to any type on channel one OK EMUL, EM-7, Add PLC debug breakpoint support to stop PLC when a specified RES_BIT is set to 1 OK WIN, OC-73, Add PLC debug breakpoint support to stop PLC when a specified RES_BIT is set to 1 OK WIN, OC-72, Remove the 256 byte boundary fix in output assign instruction introduced on v3.13.0 and check/set NV_ETH3_OUTPUT_ASSIGN_FIX persistent NVRAM register as a migration flag OK WIN, OC-71, Reserve usage of RES_BIT-246 as default for debugging OK WIN, OC-70, Fix that setpoints are being cleared when Setpoints are deselected from being loaded, but they exist in the script. (no CLR API should be issued if no setpoints are loaded) OK WIN, OC-67, Fix "Error writing device" that arises when loading a script with setpoints in the emulator OK WIN, OC-66, Fix non-consistent PLC write to Emulator, randomly different PLC instructions get corrupt, reported by Chris ===================================================================================================== // 3.13.2 18 April 2022 ===================================================================================================== OK NG, NG-10, Reserved last 68 bytes of 32K memory for persistent storage registers (50+16+2) see XEE_SYS_L4_PERSIST_50 OK NG, NG-9, Add persistent register NG_FLASH_SIZE to identify amount of FLASH/Device used, Set to 0 (default) for 1M device PIC24FJ1024GB610, 25 for 256K flash types PIC24FJ256GB610, 51 for for 512K flash types PIC24FJ512GB610 OK NG, NG-8, Add missing call to stepperDriverInit() inside USER_initialize() OK NX5, NX-122, Reserved last 68 bytes of 32K memory for persistent storage registers (50+16+2) see XEE_SYS_L4_PERSIST_50 ===================================================================================================== // 3.13.1 24 March 2022 ===================================================================================================== OK NG, NG-7, Add high speed bidirectional pulse counter to drive a stepper motor for Ivan Sici, DM556 Fully Digital Stepping Driver www.leadshine.com, added special instruction 122 OK WIN, OC-64, Fix issue with program exiting abruptly when doing PLC download after compiling, added CPCsave::writeSequence() to pinpoint where is it happening, reported by Javes OK WIN, OC-39, PLC/2/3 flags enabled must provide error in %project%/script_err.txt such as: "Script_PLC-%d_load_error" ===================================================================================================== // 3.13.0 8 March 2022 ===================================================================================================== OK EMUL, EM-1 Fix issue where ADIs and ADBs were being written binary instead of analog values in output assign instruction OK EMUL, EM-3 Add feature to have AI/BI saved to disk along with PLC and eeprom setpoints OK EMUL, EM-4 Add feature for new point names/labels arent detected/refreshed you have to change pinning options to get them to update OK EMUL, EM-5 Add capability to CALL instruction to call subroutines on different PLCs OK EMUL, EM-6 Add API to read result value from PLC (same as v3.12.3--RC01 for the NX) OK ETH3, ETH-32 Add minutes of: day, week, month & year variables same as NX OK ETH3, ETH-31, Add DB-API "readObjectAPI()" support for ETH3 database OK ETH3, ETH-33, Modify behaviour of HTTP reads/writes to read from ETH3 db instead of SPI::NX db when ETH3 works offline OK ETH3, ETH-34 Fix bug that was incorrectly creating index varables multiple of 256 (RMT-24,280 etc) // Multiple of 256 fix OK ETH3, ETH-35, Add capability to CALL instruction to call subroutines on different PLCs OK ETH3, ETH-36, Add API to read result value from PLC (same as v3.12.3--RC01 for the NX) OK NG, NG-1, Add Log events OK NG, NG-3, Add API to read result value from PLC (same as v3.12.3--RC01 for the NX) OK NG, NG-4, Add invert option for BI-1..8 same as on NX using flag XEE_SYS_INVERT_BI_LOGIC mapped on info dialog OK NG, NG-5, Add capability to CALL instruction to call subroutines on different PLCs OK NG, NG-6, Fix issue with totalizer instruction, removed logic.resultFval[] and replaced by ramData.rf[].currVal OK DUALC2, NX-117, Set status of remote points to zero if address is zero or type is null OK NX5, NX-121, Fix calculation of minutes of year, it was off by one day OK NX5, NX-118, Make remote points a NaN (0xFFFFFFFF) instead of -1M OK NX5, NX-119, Set status of remote points to zero if address is zero or type is null OK NX5, NX-113, Add capability to CALL instruction to call subroutines on different PLCs OK NX5, NX-112, Add API to read result value from PLC (v3.12.3--RC01) OK NX5, NX-120, Remove -1M limit for DB-API limit testing add an internal flag instead (OC-53 duplicated case by mistake) OK WIN, OC-54, Remove min and max values enforced by MFC tool for limits (+/- 99999), requested by OpenBAS team OK WIN, OC-22, Add Analog Input calibration type keywords in EZ script. Currently user has to know which index refers to which calibration type (done on v3.08.0 but undocumented) OK WIN, OC-46, Generate error if a call in script falls on 256 or 400 OK WIN, OC-44, Generate compiler error for incorrectly define + initialize when alias and value are mistakenly swapped such as in: DEFINE ADF_1 22.5 TEMPERATURE INITIALIZE OK WIN, OC-40, Add capability to script linker to CALL subroutines on different PLCs, compiler flag COMPILER_CALL_CAN_SPAN_PLCS was added OK WIN, OC-41, Disable CLK variables on DST dialog for ETH3 PLC (v3.12.3--RC01) OK WIN, OC-42, Show SW update information if current version is less (Old), equal (Synched) or greater (ReleaseCandidate) than that hosted on the web page OK WIN, OC-47, Add support for PROP_CONTROL for RES_FLT as well as ADB and ADI for the operands and fix script compiler issue where only ADF was accepted (v3.12.3--RC02) OK WIN, OC-45, Fix issue when loading emulator that is not loading correctly and shows "The device in this address unrecognized" OK WIN, OC-48 Enforce that calls to instructions 256 and 400 is avoided in both the ladder editor and script compiler. OK WIN, OC-49 Fix bug that was incorrectly creating index varables multiple of 256 (RMT-24,280 etc), see // Multiple of 256 fix OK WIN, OC-50 Avoid labels created from script compiler for INT constants to be added and downloaded to list of labels OK WIN, OC-51 Fix bug that was changing type for labels K_BYTE to NULL in the label editor OK WIN, OC-52 Fix bug in CExWinDlg::OnTimer that was recursively calling AfxBeginThread() and making emulator fail unless a real HW controller was first attached OK WIN, OC-55 Fix reentrancy issue on labels while connected over IP OK WIN, OC-56 Fix reentrancy issue on ETH3 remote points while connected over IP OK WIN, OC-57, Fix issue with address changing to 255 while downloading over BACnet/MSTP tunnel OK WIN, OC-58, Fix issue retry when writing label 200 using IP addresses OK WIN, OC-59, Fix bug that after selecting "Start comm" two update cycles must pass for enabling the UI butons to synch comm and avoid reentrancy issues OK WIN, OC-60, Add efficient database loader for setpoints and labels using clear API OK WIN, OC-61, Output assign when on ETH3 default to ETH database on default, and add check box to disable scoping warnings OK WIN, OC-62, Fix the rung copy/paste/paste++ on the ETH3 for the output assign instruction using scoping OK WIN, OC-63, Fix reentrancy issue on ETH3 logic ladder editor while connected over IP OK DEPLOY, NX-114, Add additional AI types added to examples and also when generating templates ===================================================================================================== // 3.12.2 9 November 2021 ===================================================================================================== OK NG, Change inter frame timing as modbus master from 5 to 10 ms to give slow slaves time to react appropriately OK NG, Fix Remote point mapping in optomux missing from ADF-181..230 OK NG, Add alternate slave modbus regions to read RMT and RES_FLT as Float32 and Double64 OK NG, Add additional types as master INT32, UINT32, Float32, Double64 and byte/word swapping to modbus library OK ETH3, ETH3 uses RTCC to be time master of SPI::NX, previously if the NX was connected, it´s clock was used instead. This is still the default for XP or XP++ which do not have battery backed RTCC OK ETH3, Add holidays OK ETH3, Add schedules OK ETH3, Add daylight saving time OK ETH3, Fix USB directory changing issues OK ETH3, Fix USB routines that lacked testing: if( USBdeviceAttached != TRUE ) and were causing sporadic reboots OK ETH3, Fix Arduino Query by setting logicRec.SpiNXScope = 1 in validateRanges() to use fully scoped SPI::NX + ETH3 database, also set logicRec.nrXP[] accordingly before call to validateTerm() OK ETH3, Add ETH3 scoping to Arduino SQL over telnet OK WIN, Add checkbox to enable XP remote points in modbus OK WIN, Fix detection of XP and XP++ Ethernet controllers to avoid HW rev dialog popping up OK WIN, Fix issue with corrupt long comments to detect corrupted sequences OK WIN, Fix issue that multiple threads were being open of ClientUrlThreadProc_NX5_IP_O22_bridge() when using IP communications OK WIN, Fix on XP remote points issue when reading via IP that closes the dialog OK WIN, Fix files on ETH3's USB memory being saved to root instead inside _OpenBAS folder OK WIN, Fix windows closing over IP for wireless points OK WIN, Fix incorrect warning stating the PLC-2 of ETH3 is not enabled when being selected from the main dialog choice OK DEPLOY, Add VAVFC version 1.12.3 that includes modbus and BACnet tunnels and some minor fixes as well as builds for VAVX and FCX ===================================================================================================== // 3.12.0 14 September 2021 ===================================================================================================== OK NG, Add support to emulate lower 2.5K of I2C 32KNVRAM into NG's 64K SPI NVRAM for eXPanded remote points OK NG, Allow master protocols to use: RMT-51..255 + RES_FLT-51..255 as if it were XP memory OK NG, In modbus add Float32 type for polling Siemens' Sentron power monitoring device, RMT-1..50 OK WIN, In modbus add Float32 type support for RMT-1..50 as well as XP remotes RMT-51..255 and RES_FLT-51..255 OK WIN, In modbus XP remotes fix documentation button, it was only doing remote points and missing the res_floats ===================================================================================================== // 3.11.0 28 August 2021 ===================================================================================================== OK WIN, Add support for ETH3 protocols for fire parser for FX3500 and FlexNET OK WIN, Fix AI calibration dialog exiting when pressing INC/DEC buttons while using IP communications reported by Marcelo OK WIN, Fix modbus remotes dialog exiting randomly while using IP communications reported by Marcelo OK WIN, Add m_busyDoingReport on CRemotesETH3 to speed up report creation OK ETH3, Add fire parser for FX3500 and FlexNET to convert to other protocols such as modbus, BACnet, Optomux and SQL OK ETH3, Add fire parser protocols to the web page for selecting them using the browser OK ETH3, Fix loading of FILE-PRN-LOG file on the first attempt by changing first to _OPENBAS directory in the USB flash memory OK ETH3, Add function USBchgDirectory() to correctly call the USB directory, specially from HTTPPrint_usb_file() in file CustomHTTPApp.c ===================================================================================================== // 3.10.1 28 July 2021 ===================================================================================================== OK WIN, Fix issue with USB trends dialog not showing when ETH3 in standalone OK ETH3, Add in BACnet/IP alternate mapping for remotes so that they can be mapped as either analog or binary values so they are consistent in Niagara SMS OK ETH3, Add in BACnet/IP missing RES_BITs of ETH3 database in range 1601-1855 in read and write ===================================================================================================== // 3.10.0 30 June 2021 ===================================================================================================== OK ETH3, Add BACnet class "A" functionality as master to implement reading and writing MSTP slaves using INFO_FRAMES OK ETH3, Add BACnet/MSTP discovery API of ETH3 devices OK ETH3, Add BACnet/MSTP discovery API of ETH3 remote points OK ETH3, When generating USB file for IPCONFIG.INI and USB_LOG.CSV file add version number OK ETH3, Before tunneling check that destination MAC is online else send busy to client OK ETH3, Implement querying engine in MSTP to be used by API and polling OK WIN, Add full BACnet device and point discovery for COM1 with addition to remotes DB OK WIN, Show error to detect if PLC's are not being correctly restored from disk OK WIN, When compiling check if any instruction was created to decide if loading or not PLC using quick compile flags OK WIN, On memory sharing create button for saving even if no changes "OK (force save)" to fix issue on controllers with 64K that PLC2 & 3 were not correctly initialized in memory position XEE_SYS_MEM_SHARE_PLC_FLAGS OK WIN, Fix issue with devices with 64KB not having PLC2 & PLC3 enabled by default by adding a check in CPLCselect::OnInitDialog() for XEE_SYS_MEM_SHARE_PLC_FLAGS OK WIN, Fix issue when entering the first time on eZ button if a device is On-line check how many PLC´s are available OK WIN, Fix issue when downloading COM1 modbus remotes via the CLI OK WIN, Remove the +/- 10,000,000 limit when writing ADF´s OK WIN, Disable script compiler for stand alone ETH3 until ETH3 scoping is added OK WIN, Modify behavior when operating from CLI an using -OL options, now it removes unused files after script compilation and DB generation almost at the end of CScriptCompiler::generateDatabaseFiles() OK DEPLOY, Add LCD HEX file for NX10L ===================================================================================================== // 3.09.4 10 June 2021 ===================================================================================================== OK NX5, Remove +/-9999 limit on set value for general schedules. OK EMUL, Add API for modbus remotes to avoid errors with SDS OK EMUL, initialize thermistor A,B,C values to avoid pop-ups when using the CLI from within SDS OK EMUL, Fix dated schedules where they were returning a wrong day when being read back OK WIN, Add BACnet device and point discovery for COM1 OK WIN, Add CLI support for emulator for restoring and saving from within SDS OK WIN, Fix lighting schedules region type to be saved correctly for coherence with SDS OK ETH3, Before tunneling check that destination MAC is online else send busy to client OK ETH3, Add BACnet device and point discovery for COM1 OK ETH3, Fix correct acknowledge as slave in Optomux in case MSG_TimeUpdateMessage: OK ETH3, Add API call OBJ_ETH_BACNET_MAC_ONLINE to view status of ON LINE MAC addresses in an MSTP network in COM1 OK ETH3, Fix bug on incorrectly reporting BACnetID on MSTP OK ETH3, Add implementation of Who-Is to be able to discover devices OK ETH3, Move checking of I-Am message in interruptHandler_COM1rxBACnetMSTP() part in case MSTP_RECEIVE_STATE_IDLE and the rest to MSTP_RECEIVE_STATE_DATA to make it 100% efficient in catching every single I-Am as master ===================================================================================================== // 3.09.3 13 May 2021 ===================================================================================================== OK NX5, Fix device address binding reporting correctly OK NX5, Make sure COS implementation is only called from N2-OPEN when using Self-ID calls OK NX5, Added interrupt_npdu_decode() to detect I-Am messages in BACnet and unprocess them OK ETH3, Added interrupt_npdu_decode() to detect I-Am messages in BACnet and unprocess them OK ETH3, Fix device address binding reporting correctly OK WIN, Force downloading all restorable segments even if unmodified with command line option -OL:511 ===================================================================================================== // 3.09.2 30 April 2021 ===================================================================================================== OK NX5, Modify implementation of Who-Is to include range checking OK ETH3, Modify implementation of Who-Is to include range checking OK ETH3, Add DDX-API for ETH3 database OK WIN, Add support for DDX and DB APIs for ETH3 database OK WIN, Allow BACnet-ID setting for MSTP and IP of ETH3 when in stand alone OK WIN, Allow saving of 32K-NVRAM of ETH3 to file EEPROM_32K_NX5.HEX ===================================================================================================== // 3.09.1 01 April 2021 ===================================================================================================== OK EMUL, Fix bug reporting wrong revision (Just do a full rebuild in Netbeans) ===================================================================================================== // 3.09.0.b 31 March 2021 ===================================================================================================== OK NX5, Improved speed of findLastNonNULLlabel() by adding flag: i2c.U9_outputReg.bits.labelSkip OK NX5, Remove legacy ASCII debug strings for USB to reclaim around 350 bytes of FLASH and 20 bytes of RAM space such as: sprintf( usbRxOrig, "[Space]" ); ===================================================================================================== // 3.09.0 30 March 2021 ===================================================================================================== OK DUALC2, Fixed RES_FLT status reading incorrectly when max point to poll is set to 255 and both COM2 and COM3 are Optomux masters (NX-109 in Jira) OK DUALC2, Clear status of RES_FLT with type set to NULL so that they can be used as regular registers OK DUALC2, Add an automatic reset to core 2 when core 1 is commanded to remotely reset OK NX5, Add an automatic reset to core 2 when core 1 is commanded to remotely reset OK NX5, Verify RES_FLT above 40 can be used in PLC if not used as remotes in both dual core and NVRAM implementations OK NX5, Add BACnet/MSTP tunneling to allow commissioning using BACnet/MSTP networks as backbone OK NX5, Fix malformed packet issue when reporting errors on BACnet OK NX5, Add secondary check on Who-Is and I-Am messages for when IP to MSTP router sends two back to back contiguous messages added BACnet.IamDetectCtr OK NX5, Add option for modbus master to switch between WRITE SINGLE REGSISTER (6) instead of WRITE MULTIPLE REGSISTER (16) as requested by customer setting up a Simetrix VFD OK EMUL, Fix bug in output assign for analog values using K_BYTE as source OK EMUL, Fix bug in output assign for digital values not being shown correctly in MFC tool, fixed reporting of BIs and BOs CURRENT_VALUE (0x40) bit field instead of 0/1 OK EMUL, Added Mircom / rikmed instead or only rikmed on main screen OK ETH3, Fix web page download issue introduced with addition of PLC and NVRAM database by adding checks to gNX5net.downloadInProgress variable OK ETH3, Fix malformed packet issue when reporting errors on BACnet OK ETH3, Fix clear API for status initialization after clearing the section, add settings to MSTP and set SPI as disabled by default OK ETH3, Add secondary check on Who-Is and I-Am messages for when IP to MSTP router sends two back to back contiguous messages added BACnet.IamDetectCtr OK ETH3, Add mapping to database on COM1 for BACnet/MSTP OK ETH3, Add BACnet-ID for MSTP in COM1 independent of IP using NVRAM register (word) NV_XEE_SYS_MSTP_BACNET_ID OK ETH3, Add LCD support over I2C, enabled when XEE_SYS_LCD_KBD_CFG is set to 255 OK ETH3, If SPI bus is disabled blink OPER LED at a 1 Hz rate OK ETH3, Add BACnet/MSTP tunneling to allow commissioning using BACnet/MSTP networks as backbone OK ETH3, Add BACnet/MSTP to COM1 OK ETH3, Fixed lock out on SPI bus when NX is not present by adding deadDetect varible in wait_SPITBE_SPIRBF() OK WIN, Verified the correct operation of the parser for edge case in the compiler for a text without spaces such as: RES_FLT_51=1-0 as when expanded it is converted to RES_FLT_51 = 1 -0 (assumes last number is a negative number) and this generates an error, simply add a space after the '-' sign to fix the error as in: RES_FLT_51=1- 0, refer to: preProcessLine() / switch( line[ i ] ) / case '-': OK WIN, Add option for modbus master to switch between WRITE SINGLE REGSISTER (6) instead of WRITE MULTIPLE REGSISTER (16) as requested by customer setting up a Simetrix VFD OK WIN, Add check to disable non supported API´s for ETH3 in stand alone mode OK WIN, Fix incorrect warning message if using registers above RES_FLT-40 when compiling in CScriptCompiler::checkStackCollision() OK WIN, Fix visualization of modbus remote points, large values are not shown correctly OK WIN, Fix dual core remote points window closing unexpectedly when connecting via IP OK WIN, Fix bug in AI calibration with dual core was unexpectedly closing by moving SteinhartHartEqRead() to beginning of OnInitDialog() OK WIN, Add option for modbus master to switch between WRITE SINGLE REGISTER (6) instead of WRITE MULTIPLE REGSISTER (16) as requested by customer setting up a Simetrix VFD OK WIN, Add support to BACnet/IP tunneling by fixing correct COM1_22.htm URL when addressed device != 255 OK WIN, Add new AI types (thermocouples and Ohms) to eZ-Wizard fields OK WIN, Add MAX_MASTER for COM1 port in ETH3 OK WIN, Add BACNET_ID for COM1 port in ETH3 OK WIN, Add option to enable/disable ETH3 LCD display over I2C OK WIN, Add option to enable/disable ETH3 Power metering expansion over I2C ===================================================================================================== // 3.08.1 26 January 2021 ===================================================================================================== OK WIN, Fix bug in eZ-Wizzard when generating templates produces error: **PR3 buffered non instruction lines lost** OK ETH3, Reserve 16 addresses for serial number for ETH3, 0x7FF0-0X7FFF: XEE_SYS_OpenBAS_SERIAL_NR 32752 // Persistent on factory reset OK ETH3, Fix bug for clearing USB trends by moving USBflash_trend_clear() to test every second if there is a requested clear instead of every minute OK NG, Test that PNP type outputs work as expected OK NG, Implement cycle time in main counters OK NG, Implement new universal input types that were added on NX5 on v3.08.0 OK NG, Implement autodetect for changes added on HW +R08 04/09/2020 Swap RLY22 and DRV_AO4 to use hardware PWM-CCP4 on RP31 and add R104 to PGEC1 to auto-detect hardware revision OK NG, Add AO ranging for scaling and inverting AOs-1..4 added to NX on v3.01.0 OK NG, Fix MSG_StatusUpdate checksum error ===================================================================================================== // 3.08.0 22 January 2021 ===================================================================================================== OK NX5, Add support for new UI types NTC thermistors 20K, 10K-III&II, 5K, 3K, 1K with 12V external and 5V internal pull up OK NX5 Add support for new UI types Ohms with 12V external and 5V internal pull up OK NX5, Implement thermistor 10K type II improved method for linearizing connected to 12V external supply OK NX5, Implement thermistor 10K type II improved method for linearizing connected to internal pull ups OK NX5, Fix bug with high speed counters on BI1 and BI2 only counting to 10 Hz (1200 pulse per minute) instead of 250 Hz (30,000 pulse per minute) OK WIN, Add support for newlly added UI types with links to Steinhart-hart calculators on the internet OK WIN, Add buttons with UI integration constants for 0, 2, 5, 10 & 20 secondintergration time OK WIN, Fix bug when saving ETH3 database to USB, values above 255 were not saved correctly OK WIN, Added thermistor 10K type III using internal pullups in °C OK ETH3, Fix USB storage overlap on first trend due to synch between RTCC and SW-RTC, now saving start after seconds > 5 OK EMUL, Fix writes to RES_BIT bug, it was not writing to the database OK EMUL, Add a check when opening port 4242 to warn the user when a second instance of the emulator is tried to run concurrently with the first, only une server can take the port at any given time OK EMUL, Add command line option "silent" to avoid showing the socket error when running multiple instances of the emulator ===================================================================================================== // 3.07.2 12 November 2020 ===================================================================================================== OK NG, Add support for SPI bus as slave to attach the ETH3 as master OK NG, Fix IP address showing on INFO screen OK NX5, Create enable/disable option for BACnet binary output priorities instead of basing on COM1 protocol NX-108 [openbas.atlassian.net], add XEE_SYS_USE_BACNET_PRIORITIES OK NX5, Clear remote points status and set value to zero when they are either: null type or address iz zero OK ETH3, When i2c expansions are disabled fill ramData.localUIO[0] with 9999 value to indicate this case (applies for NV_I2C_EXPANSION_CT_8X_CONFIG setting) OK ETH3, Fix definition address for LOGIC_MULTI_TRANSFER instruction OK ETH3, Fix ETH3's modbus mapping on RTU for RES_BITs which are remapped on read coils 1601..1855 OK ETH3, Add alternate mapping for modbus/TCP for first 500 remote points from COM1 from holding address 6501-7000 in IP and RTU OK ETH3, Add alternate mapping for modbus/TCP for first 500 remote points from COM2 from holding address 5501-6000 in IP and RTU OK ETH3, Clock remapping of ETH3 into PLC into ADI-201..210 OK EMUL, Start adding multilanguage support to NX Emulator OK EMUL, All unsupported API calls should return N01 in emulator (at least in non-debugging mode) added variable: omx.debugModeCOMM OK EMUL, Test and fix issue with PID and special instructions OK EMUL, Highlight a null object (empty number) with a YELLOW border to aid in setting it up faster OK EMUL, Add own ID (0x07) for emulator so that both MFC/SDS will be able to distinguish its model OK EMUL, Fix reported _SUBREVISION in system command OBJ_COMMAND_VERSION OK WIN, Enable the ETH3 scoping tool on the output assignment instruction and add online help and link to download mapping table OK WIN, Add flag to store statistic download files in a specific directory for SDS to do batch downloading OK WIN, 32K HEX generation GUI add peek message to avoid the UI from freezing up OK WIN, Fix auto-increment object number on ETH3 remote points for modbus master OK WIN, Fix re-entrancy issue when reading protocol on ETH3 remotes OK WIN, Improve performance while viewing AI/AOs and RES_FLT screens, avoid the first to pop out on any error OK WIN, Improve time to detect that NX Emulator is not loaded and load it sooner OK WIN, Restore back autoTuneSpeed() call that was commented out as it was creating re-entrance issues due to be misplaced OK WIN, Support on NX Emulator and enable INFO button OK WIN, Support on NX Emulator and enable V.FIRMWARE button ===================================================================================================== // 3.07.1 26 October 2020 ===================================================================================================== OK EMUL, Add missing GIF images in C:\OpenBAS\Emulator\images folder ===================================================================================================== // 3.07.0 23 October 2020 ===================================================================================================== OK EMUL, Add emulator for NX in MFC configurator, SDS support will be added soon OK NG, Update bootloader documentation to use 16 bit bootloader OK NX5, Add "Enable custom averaging" register on EEPROM OK NX5, Remove ECM and weight protocols from all builds except dual core 1, to make extra room for new upgraded temperature measurement algorithms OK ETH3, Fix modbus/TCP mapping of SPI::NX RTCC and schedules OK ETH3, Fix BACnet/IP mapping of SPI::NX RTCC and schedules OK ETH3, Respond with error wen SPI disabled and request sent to Opto22.htm [ETH3-25 openbas.atlassian.net] OK ETH3, Implement PLC1 and PLC2 on ETH3 standalone OK ETH3, Add data logging to attached USB OK ETH3, Implement PLC1 and PLC2 on ETH3 standalone OK ETH3, Implement ETH3 and SPI::NX scoped variables and accessor functions for PLC and multiprotocols OK ETH3, Implement SPI::NX bridge cache for efficient bandwidth usage OK ETH3, Add CLR_DB API to selectively clear ETH3´s database OK ETH3, Add support for eading/writing ETH´s RES_BIT, RES_FLT, TIMERS OK ETH3, Add support for CLR_DB API to selectively clear ETH3´s database OK ETH3, Modify self ID to differentiate between ETH3=1, XP=8, XP++=9 OK ETH3, If SPI bridge is disabled answer with an N80 error when the Opto22.htm URL is used, ETH3-25 [openbas.atlassian.net] OK WIN, Change automatically to ETH3 database if an access to Opto22.htm URL is used and SPI is disabled OK WIN Add support for NX emulator OK WIN, Add dialog for monitoring SPI::NX bridge cache for efficient bandwidth usage OK WIN, Add dialog support for eading/writing ETH´s RES_BIT, RES_FLT, TIMERS OK WIN, Update MFC shortcut to use program files environmental variable [OC-35 openbas.atlassian.net] OK WIN, Allow in script name change Espa... and Fran... to avoid Unicode issues OK WIN, When opening Excel fasils open file in Notepad OK WIN, Add multi language support to customized LCD as it is only in English OK WIN, Add multi language support to directory browse dialog ===================================================================================================== // 3.06.A 14 September 2020 ===================================================================================================== OK NX5, Fix bug with remote points 41-50 from dual core in COM3 status being reported incorrectly using the DB_API, remotePt_status_get() being called from readObjectAPI() ===================================================================================================== // 3.06.9 2 September 2020 ===================================================================================================== OK NG, Add support for hardware PWM for AO-1..3 and soft-PWM for AO-4..10, AO-5..10 can be assigned to UIO-17..22 OK NG, Add support for setting UIO-17..22 as remapped PWM by tuning XEE_SYS_NG_NV_SOFT_PWM_MAX between 4..10 OK NG, Add support for inverting output of soft-PWM to UIO UIO-17..22 by changing XEE_SYS_NG_NV_SOFT_UIO_N_P, 0=Negative, 1=Positive OK NG, NG-P has (TBD62783) open-drain positive output while the NG has (ULN-2003) open-collector with negative output, so XEE_SYS_NG_NV_SOFT_UIO_N_P should be inverted OK WIN, Add support for AO-5..10 using soft-PWM OK WIN, Create shortcut in OpenBAS installation for: %ProgramFiles(x86)%\Mircom\System Design Studio\resources\app.asar.unpacked\commandLineTool\scriptTool.exe ===================================================================================================== // 3.06.B 17 September 2020 ===================================================================================================== OK NX5, Fiux bug introduced in previous fix on v3.06.A in dualCoreRamReadRMT_stat() as now this function also should return status for remote points 1..50 ===================================================================================================== // 3.06.A 14 September 2020 ===================================================================================================== OK NX5, Fix bug with remote points 41-50 from dual core in COM3 status being reported incorrectly using the DB_API, remotePt_status_get() being called from readObjectAPI() ===================================================================================================== // 3.06.9 2 September 2020 ===================================================================================================== OK NG, Add support for hardware PWM for AO-1..3 and soft-PWM for AO-4..10, AO-5..10 can be assigned to UIO-17..22 OK NG, Add support for setting UIO-17..22 as remapped PWM by tuning XEE_SYS_NG_NV_SOFT_PWM_MAX between 4..10 OK NG, Add support for inverting output of soft-PWM to UIO UIO-17..22 by changing XEE_SYS_NG_NV_SOFT_UIO_N_P, 0=Negative, 1=Positive OK NG, NG-P has (TBD62783) open-drain positive output while the NG has (ULN-2003) open-collector with negative output, so XEE_SYS_NG_NV_SOFT_UIO_N_P should be inverted OK WIN, Add support for AO-5..10 using soft-PWM OK WIN, Create shortcut in OpenBAS installation for: %ProgramFiles(x86)%\Mircom\System Design Studio\resources\app.asar.unpacked\commandLineTool\scriptTool.exe ===================================================================================================== // 3.06.8 19 August 2020 ===================================================================================================== OK NG, Fix in modbus RTU read and write of coils and discrete inputs OK NG, Fix in CLR API labels erase OK NG, Fix hour counter was not running OK WIN, Fix documertation of labels, garbage was being added on some labels, with char #1, added check for this inCLogic::storePlcBlock() OK WIN, Add a base EEPROM test to check all data bits are consistent ===================================================================================================== // 3.06.7 13 August 2020 ===================================================================================================== OK NG, Fix timers implementation in PLC OK NG, Add implementation daylight saving time OK NG, Add implementation of schedules OK NG, Add BO integration for BO's 1 to 8 OK NG, Add modbus master protocol on COM1, fixed write and status issues on remote points OK WIN, Fix in command line exception caused by closing a file pointer incorrectly, on line 1991 of ExwinDlg.cpp was closing fclose( fp ); and should be fclose( fpTest ); ===================================================================================================== // 3.06.6 10 August 2020 ===================================================================================================== OK NG, Fix bug with BO PRIORITY_RELEASE_COMM_OVR OK NG, Fix bug with labels reporting incorrectly lastLabel OK NG, Fix bug with analog outputs OK ETH3, Add support for error codes when updating USB files, added by Chris OK ETH3, Modifiead header file for HTML pages: "header.inc" to show version of loaded web pages in web browser´s title tab OK WIN Return correct error code on compile OK (0) or ERROR when using the CLI set to CMD_LINE_EXIT_CODE_COMPILER_ERROR (20) OK WIN Clear script_error.txt on entry when using the CLI set to: "Script_compiler_default_error" OK WIN, When using the CLI and passing the -COMPILE without an address all COMM tests are skipped and COM1, 2 & 3 are enabled by default OK WIN, When using the CLI and passing the -QUIET mode all compiler error pop-ups are supressed ===================================================================================================== // 3.06.5 22 July 2020 ===================================================================================================== OK NX5, Fix bug NXLEARN freezing on reset when batteries not installed by disabling code in USBDeviceInit() clearing BDT ===================================================================================================== // 3.06.4 -- RC01 13 July 2020 ===================================================================================================== OK WIN, Add support to identify NG (0x05) and NG-JIGT (0x06) devices OK WIN, Add command to read back IP configuration via Ethernet using NX objcet command OBJ_ETH_IP_SETTINGS OK NX5, Respond with error code "N87" when receiving message over SPI for any address other than 255 if com2 is not Opto22 master [NX-103] OK ETH3, Add command to read back IP configuration via Ethernet using NX objcet command OBJ_ETH_IP_SETTINGS OK NG, Fix modbus slave protocol for COM1, COM2 and COM3 OK NG, Add ID codes 0x05 for NG and 0x06 for NG-JIG in function_SYSTEM_COMMAND_MESSAGE/MSG_StatusUpdate to correctly identify NG controllers ===================================================================================================== // 3.06.3 7 July 2020 ===================================================================================================== OK WIN, Fix bug with BACnet/IP-ID options not being enabled due to changed NVRAM-ID modified to support clear-API OK WIN, Fix bug winth PID instruction failing to compile when PV was > 10 OK NG, Initial support option for NG controller variants OK NX5, Fix bug when reading AO >= MAX_REMOTE_POINTS should return RMT-51..255, was using MAX_AO instead ===================================================================================================== // 3.06.2 24 June 2020 ===================================================================================================== OK NX5, Add option to invert analog outputs (0% gives max. output according to config., 100% gives minimim output) OK NX5, Add calculation of minutes of year to RTCC OK WIN, Add support for inverted AO´s and minutes of year ===================================================================================================== // 3.06.1 9 June 2020 ===================================================================================================== OK ETH3, Fix bug issue in e-mail that corrupts the second character of the "to:" field to 0xFF of the first e-mail when setting the server information ===================================================================================================== // 3.06.0 5 June 2020 ===================================================================================================== OK NX5, Exclude serial number from being cleared on a restore to factory defaults XEE_SYS_OpenBAS_SERIAL_NR, also XEE_SYS_BOOTL_DETECT_FLAG_ and XEE_SYS_HW_VERSION_CONFIG_ [openbas.atlassian.net] NX-100 OK NX5, In BACnetMSTP PROP_LOCATION and PROP_OBJECT_NAME return device name (label 200) while PROP_DESCRIPTION and PROP_MODEL_NAME return "NX5-MAC(%d)-ID(%u)" OK NX5, Change encoding for PropIDdev_deviceAddressBinding in BACnet/MSTP to NULL OK ETH3, Fix bug issue with week day being reported incorrectly by RTCC MCP79410 OK ETH3, Fix bug issue on ArduinoSQL query that was freezin g ETH3 due to missmatch of TELNET_COMM_BUFFER_SIZE and COMM_BUFFER_SIZE, both must be same size 128 bytes OK ETH3, Fix bug with ETH3 responding on behalf of the SPI:NXwas causing a reset due to lack of SPI timeout checking OK ETH3, Fix bug when IP changes were done via USB-memory that MAC, default IP and mask values were being corrupted OK ETH3, Add Clk.powerOnLockOut timer and extern unsigned char gClk_powerOnLockOut flag to avoid reset by IP comm before the DHCP address is assigned OK ETH3, Force to use SPI channel when URL opto22.htm is used if SPI is not disabled with NV_SYS_DISABLE_SPI == 90 OK ETH3, Change encoding for PropIDdev_deviceAddressBinding in BACnet/IP to NULL OK ETH3, Add nvBuff.timeOut and loop.SPIstallCtr along function wait_SPITBE_SPIRBF() to avoid stalled SPI to force a reset OK ETH3, In BACnet: PROP_LOCATION and PROP_OBJECT_NAME return device name (label 200) while PROP_DESCRIPTION and PROP_MODEL_NAME return "ETH3-IP %d.%d.%d.%d", [openbas.atlassian.net] NX-99 OK ETH3, Add new e-mail engine and web pages for user setup OK ETH3, Implement RES_BIT & RES_FLT locally in ETH3 OK ETH3, Add web page support for disabling/enabling SPI bus OK ETH3, Add web page support for viewing log and ini system files OK ETH3, Add web page support for setting time (will be reset to default when IP settings are reset to factory defaults) OK ETH3, Add web page support for setting login username and password OK ETH3, Update web pages with custom templates, OG-100 OK ETH3, Add WDT clear during IP default factory settings to avoid it to kick in before time OK ETH3, Add API for reading version and name of ETH3 controller same as NX OK ETH3, Add API for reading and writing labels OK ETH3, Standardize LED usage, OPER = SPI activity, USB = USB activity, DWNLD = flash or SPI in use / flash download OK ETH3, Create document of supported APIs on ETH3 when working as stand alone OK ETH3, Add performance timing variables in NX5_PERFORMANCE structure and messages: NX5_ETH_PERFORMANCE & NX5_ETH_PERFORMANCE2 OK ETH3, To avoid overwriting file root.htm if a wrong file name is provided in HTTPPostUSB(), add strcpy( name, "dummy.txt" ); in case SM_USB_READ_NAME: OK ETH3, Add NX5_tx_rx_validated() and verifyReceivedChecksum() functions to streamline code in nx5_SPI file OK ETH3, Add update_NX_SPI_IP_address() for the ETH3 internally to update the IP address on the attached NX over the SPI bus OK ETH3, Add read_NX_SPI_IP_settings() for the ETH3 internally to read the IP settings modified with the configurator on the attached NX over the SPI bus OK ETH3, Add read_NX_SPI_version() for the ETH3 internally to get the firmware version of the attached NX over the SPI bus OK ETH3, Add read_NX_SPI_clock() for the ETH3 internally to get the clock of the attached NX over the SPI bus OK ETH3, Add read_NX_SPI_labels() for the ETH3 internally to get the 200 labels of the attached NX over the SPI bus OK ETH3, Make IP settings readable and writeable via the USB memory by modifying IPCONFIG.INI file OK ETH3, Make IP settings readable and writeable using the NX attached on SPI OK WIN, Add ETH3 statistics in ETH3 remotes window OK WIN, Add browse button to look for path for Notepad++ OK WIN, Add support to read ETH3 name and version API OK WIN, Add support to read and write ETH3´s 200 labels in NV_RAM OK WIN, Fix the length of the last 16 bytes of IDD_EEPROM viewer, as the last byte was not being shown correctly OK WIN, Create script_error.txt if using the CLI when a compiler error happens, [openbas.atlassian.net] OC-30 OK WIN, Add dialog for modifying the IP settings from the NX attached on the SPI OK WIN, Fix bug that was not loading PLC when flag -OL:1 was passed in the command line ===================================================================================================== // 3.05.3 12 May 2020 ===================================================================================================== OK WIN, Fix typo when importing PLC libraries OK WIN, Fix random character (unused not affecting anything) when writing on CLabel::OnReindexar()when writing XEEPROM starting at address 32202 OK WIN, Add support for 20K temperature sensor from Greystone XEE_AI_GREYSTONE_20K_TT_011 OK NX5, Add support for 20K temperature sensor from Greystone XEE_AI_GREYSTONE_20K_TT_011 ===================================================================================================== // 3.05.2 14 April 2020 ===================================================================================================== OK WIN, In script compiler add help to generated MAP file for the user, and rename stage 4 to stage 6 because the addition of the 2 optimizing compiler stages added in 3.05.1 OK WIN, Fix bug on EEPROM programmer window, [>>] button was incrementing +2 on the write byte section OK WIN, Add tabs to HEX dump of EEPROM programmer window to compensate for Windows' variable width fonts OK WIN, Clarify usage of free RES_BITS 40 to 219, as 220 to 240 are used for the small stack for the compiler and >= 241 are system bits OK WIN, Print in map file version used to compile script and compilation date for documentation purposes OK WIN, Make sure if using more than one PLC that total used dual assignments are correctly reported to the documentation file *.PR4 OK WIN, Now 50% more space is allowed on each PLC and can compile up to 600 instructions before optimizations to later reclaim it with dual assignment optimization OK WIN, Fix bug to make sure PLC loading is not invoked if compiler did not detect changes during compile process OK WIN, Add HTTP link to download for updates OK DEPLOY, Add documents for SDS v1.0.2 ===================================================================================================== // 3.05.1 2 April 2020 ===================================================================================================== OK WIN, In script compiler only increment compilePhase and advance to next stage if no errors OK WIN, Clear LOG files on entry to avoid massive size files OK WIN, Add autoTuneeSpeed() to best for optimal communication speed OK WIN, Add time stamp debug LOG file to see communication performance OK WIN, Add class CPathVerify to make sure path contains no spaces or is greater than 230 characters OK WIN, Add optimizing compiler loaded to only download what has changed since last download to reduce download time OK WIN, Fix bug on PLC change due to optimized dual assign instructions by resetting variable dualAssignments = 0 on PLC change ===================================================================================================== // 3.05.0 27 March 2020 ===================================================================================================== OK NX5, Show BO names on LCD while scrolling for manual operate, NX-96 OK NX5, Fix bug with AI integration 0.2..0.4 sec. that makes AI a huge number, removing checkFloatIntegrity() and limiting AI integration to > 1/2 second OK WIN, Fix 1/loop time shown incorrectly OK WIN, Remove warning of stack collision for RES_BITS used above the stack 241..255 OK WIN, Make big data static to improve performance during compilation process OK WIN, Fix in compiler when user definitions starting similar to DB objects such as: Timer_1_MY_VAR map incorrectly to TMR_1 creating buggy code OK WIN, Add compiler flag COMPILER_LARGE_STACK to force using large RES_BIT stack OK WIN, Add compiler flag COMPILER_USE_DUAL_ASSIGNMENT to enable creation of dual assign instructions to save space OK WIN, Add compiler flag COMPILER_USE_SINGLE_ASSIGNMENTto disable creation of dual assign instructions (legacy mode) OK WIN, Add third and fourth stage optimizing compiler tool to encode dual output assignments to save code space OK WIN, Open only afected error file when a compile error happens, unless the open all files check is selected OK WIN, Fix percentage of usage reported by document PLC tool as END are used as instructions inside active program space and incorrectly marked as FREE OK WIN, Add WENN as well as OB in German for keyword "IF" OK WIN, Remove temporary files created during compilation process OK WIN, Add option to select editor to open script file with either notepad (default) or notepad++ OK WIN, Add compiler flag listing to template generator OK WIN, Improve IP communication on slow IP networks by tuning retry timeouts OK DEPLOY, Add, enhance and test script examples to make Notepad++ highlighting more intuitive to read, OG-99 OK DEPLOY, Add missing keywords of PID (and other advanced instructions) to Notepad++, OG-98 OK DEPLOY, Add multi-lingual support to Notepad++ highlighting OK DEPLOY, Review and add missing documentation files used for programming ===================================================================================================== // 3.04.0 29 February 2020 ===================================================================================================== OK NX5, Fix bug NX-95 in DB-API messages where Dual core remote points 41..51 are not correctly reported OK NX5, Fix bug that stopped RES_FLTS >= 41 to be written to slaves, in dualCoreRamWriteRES_FLT() OK NX5, Change operation of DDX, if remote points are spotted offline or with error, instead of aborting DDX with N10 will send a value of -1M instead for SDS to work reliably OK NX5, Fix bug that reported overriden AO's as offline OK NX5, Added support to see overriden points in remote status for AO's and BO's in standard code, NVRAM and dual core OK NX5, Fix staggered start stop instruction that was bricking controller when no stage was enabled, reported by Chris OK NX5, Fix bug that was not reporting correctly the remote points in all the assorted configurations using the DB_read API OK NX5, Fix bug with reading NVRAM values correctly when being released OK DUALC2, Added support to see overriden points in remote status for AO's and BO's in COM3 OK DUALC2, Fixed bug that was not setting the value that were read into the remote point for AI, AO and ADFs types OK DUALC2, Now remote points are marked offline after a power-on OK WIN, Added support to see overriden points in remote status for AO's and BO's in standard code, NVRAM and dual core ===================================================================================================== // 3.03.6 11 February 2020 ===================================================================================================== OK DEPLOY, Rename script files examples currently in training directory and move to Examples folder, Jira: OC-26 OK NX5, Fix alternate and parallel instruction when timer index is zero, Jira: NX-94 OK NX5, COM1 ASCII protocol activated to enable fire panel printer port for test jig MS400 series pull stations, must be compiled with FIRE_PANEL_PRINTER_TEST_JIG_MS_400 defined OK WIN, Allow names to be assigned to RES_FLT > 40 and RMT > 50 by SDS just change warnings to English OK WIN, Fix compiler bug which generates wrong jump in ELSE if ALSO has a compound math embedded instead of a plain assignment ===================================================================================================== // 3.03.5 21 January 2020 ===================================================================================================== OK NX5, Fix counter when operating as period counter, for the logic to be reset at the end of three PLCs OK ETH3, Add new protocol to COM1 to be able to save in USB and send via e/mail messages comminf from Fire Panel printer port OK ETH3, Updated web page comm.htm to reflect the Fire panel printer protocol added OK ETH3, Updated web page conf_nx5.htm to add hyperlink to e-mail test page OK ETH3, Fix bug with RTCC srtting of ETH3 in standalone OK WIN, Add support for protocol in ETH3 PROTOCOL__FIRE_PRINTER OK WIN, Adjust timers in Optomux when using USB as some Windows 10 machines from Joules Green were locking up in the PLC and Info screens ===================================================================================================== // 3.03.4 10 December 2019 ===================================================================================================== OK NX5, Fix unsupported writes and overrides in switch to handle them in makeO22pointMessage() OK NX5, Add section for bus debugging master bus, enabled by defining BUS_RS485_DEBUG OK NX5, In remote.c remoteWriteCMDset() use new switch statement to take RMT_CMD_RLS into account OK NX5, For SPI add 'NFF' unknown error) as default reply to be able to detect two back-to-back messages that would otherwise produce unpredictable acknowledges in SDS OK DUALC2, Fix issue with reporting incorrectly to SDS off-line status by clearing the MASK_overrideActive flags for BI,ADF,ADI,ADB that do not support override flag OK ETH3, In Comm_OptomuxMaster.c remoteWriteCMDset() use new switch statement to take RMT_CMD_RLS into account OK WIN, Add CLI support for reading/writing the database with the DB_TEST, DB_WRITE, DB_SET commands to support batch file scripting for test jigs ===================================================================================================== // 3.03.3 27 November 2019 ===================================================================================================== OK NX5, Fix bug on clearing memory for factory reset for SMS messages OK DUALC2, Add support for 115K operation in COM3 OK WIN, Add support for 115K operation for COM3 OK WIN, Post message in English for non binary schedules when adjusting values OK WIN, Fix showing WR instead of OK for NX slaves on modbus master, test with 10.10.8.16 OK DEPLOY, Use new multilanguage installer ===================================================================================================== // 3.03.2 6 November 2019 ===================================================================================================== OK NX5, Apply changes to interruptHandler_COM1rxBACnetMSTP() to better comply with 9.5.4.1,2,3,5&7 by removing the: if( "BACnet.flags.bits.receivedValidFrame == FALSE &&" from the if() OK NX5, in bacnet_MNSM.c use: assembleToken() below instead of sendFrame() above to ha a correct I-am reporting for an issued Who-Is message OK NX5, Fix bug in case CLR_API_BACNET_PRIORITIES: of clearAPI() was not using i but 1 in: i; setBACnetPriority( i, BACNET_PRIORITY_AVAILABLE_11_SCHED, BACNET_PRIORITY_OFF ); OK NX5, Answer to Who-Is messages using broadcast I-Am message with destination address 0xFF so everyone on the bus knows about your MAC address OK NX5, Fix issue with reissued unasked I-Am message OK WIN, Issue an EEPROM wear warning on output assignment when having EEPROM variables as destination ===================================================================================================== // 3.03.1 2 October 2019 ===================================================================================================== OK NX5, Fix bug in clearAPI() that when cases: CLR_API_PLC_2 & CLR_API_PLC_3 are called, must abort if no dual core is present to allow clearing files after finalizing sequence, reported by Chris ===================================================================================================== // 3.03.0 18 September 2019 ===================================================================================================== OK NX5, Fix bug in function_GENERAL_COMMAND_MESSAGE() :: if( objSubcommand == MSG_Release ) :: case DF: object for release was offset -1 OK NX5, Reserve 2 bytes of XEEPROM for BACnet-ID for IP applications: XEE_SYS_BACnet__ID_IP OK WIN, Add support to set BACnet-ID over IP OK ETH3, Implement dynamic BACnet discovery from NX-SPI as generated by script or manually on NX BACnet discovery setup screen OK ETH3, Implement BACnet-ID from different sources (IP last digit (current) / NVRAM for standalone ETH3 / from NX-SPI same as BACnet/MSTP) OK ETH3, Implement modbus WriteSingleRegister function call 6 OK ETH3, Implement modbus WriteMultipleCoils function call 15 OK ETH3, Implement modbus ReadCoil function call 1 OK ETH3, Implement modbus ReadDiscreteInputs function call 2 ===================================================================================================== // 3.02.2 6 September 2019 ===================================================================================================== OK NX5, In remote.c remoteWriteCMDset() use default case to WRITE for when a command other than WR or OVR is sent OK NX5, In BACnet.c writePropertyService(), Added support for ARRAY INDEX command sent by Jace, adds 0x29,index before (Real) present value) OK WIN, Add support for writing XP remote points (button was disabled) OK ETH3, In Comm_OptomuxMaster.c remoteWriteCMDset() use default case to WRITE for when a command other than WR or OVR is sent OK ETH3, In BACnetIP.c writePropertyService(), Added support for ARRAY INDEX command sent by Jace, adds 0x29,index before (Real) present value) ===================================================================================================== // 3.02.1 4 September 2019 ===================================================================================================== OK NX5, Add support for BACnet MSTP writes for remote points and RES_FLT up to 255 ===================================================================================================== // 3.02.0 3 September 2019 ===================================================================================================== OK NX5, Add to DB-API status and current value OK WIN, Add support for DB-API status and current value ===================================================================================================== // 3.01.5 27 August 2019 ===================================================================================================== OK NX5, Reserve 16 bytes in XEEPROM to add API for showing RES_BIT and RES_FLT stack used during script compilation process OK WIN, Add API for showing RES_BIT and RES_FLT stack used during script compilation process ===================================================================================================== // 3.01.4 19 August 2019 ===================================================================================================== OK ETH3, Add more sockets to Modbus-TCP, now three simultaneous can be open ===================================================================================================== // 3.01.3 09 August 2019 ===================================================================================================== OK NX5, Fix bug on hour counters stalling with heavily loaded PLC's (>~ 600 PLC instructions) OK ETH3, Add modbus TCP support for changing close socket timer using NVRAM register NV_SYS_MODBUS_TCP_CLOSE_x200ms or for ETH-XP holding register 9010 OK ETH3, Fix bug that reported error on reading clock via modbus TCP interface OK ETH3, Add more sockets to Telnet, now three simultaneous can be open OK ETH3, Add modbus RTU handler as slave to read/write data from NX via SPI OK ETH3, Make sure NV_SYS_BRIDGED_TIMEOUT_K_x10 is within 5..99 which will provide 50 to 990 ms. OK WIN, Fix loop cycle showing error if > 1000 ms ===================================================================================================== // 3.01.2 08 August 2019 ===================================================================================================== OK NX5, Implement a test mode for dropping packages with safe 4..254 limit ===================================================================================================== // 3.01.1 07 August 2019 ===================================================================================================== OK ETH3, Changed default value of NV_SYS_BRIDGED_TIMEOUT_K_x10 to 40 to provide a 400 ms timeout, otherwise on v3.01.0 should have been set to 20 not 100 OK ETH3, For the ETH-XP gateway disable reads and writes to non-existing NVRAM to avoid configurator to stall OK WIN, Improve Ip connection speed by discarding calls to OpenCommPort() if IP comm is enabled ===================================================================================================== // 3.01.0 02 August 2019 ===================================================================================================== OK NX5, Check and fix baud rate of comm ports for 76,800 OK NX5, Add °F support for all temperature sensors OK NX5, Add possibility to select AO types (0-10, 0-5, 2-10) OK WIN, Add analog configuration types as labels instead of plain numbers to the script compiler OK ETH3, Changed in NX5_tx_rx() "toY" default value to 2000 for a 800 ms timeout to improve Ip communication with slaves of slaves, adjustable via NVRAM register (@54) NV_SYS_BRIDGED_TIMEOUT_K_x10 OK ETH3, Add soft reset command so ETH3 can be remotely restarted OK ETH3, Check implementation of dynamically setting baud rate OK ETH3, Handle NOEOM with a N82 error code ===================================================================================================== // 3.00.1 29 July 2019 ===================================================================================================== OK NX5, Fix bridging timing on COM1/SPi by adjusting brdg_USB_COM2.waitTmrOnUSB_COM2 from 492 to 120 ms OK NX5, Fix issue with BACnet priorities clear API on case: CLR_API_BACNET_PRIORITIES OK WIN, Provide error handling when using the clear API same as on reset so there are no errors / retries. For a reset 5 seconds wait are recommended, for clear API 1 second ===================================================================================================== // 3.00.0 25 July 2019 ===================================================================================================== Synch version for SDS release 1.0.0 ===================================================================================================== // 2.79.5 25 July 2019 ===================================================================================================== OK NX5, Add to project file: "C:\microchip_solutions_v2013-06-15\Microchip\Include\USB\user_lp.h" with: "#define USB_INTERRUPT_USE_LOW_PRIORITY" to create warning if low priority has not been defined yet OK NX5, Add to clear API option of CLR_API_BACNET_PRIORITIES OK ETH3, Increase wait time of bridging to 600 ms in NX5_SPI.c ln. 733 to allow time for slaves of slaves to answer, see NV_SYS_BRIDGED_TIMEOUT_K_x10 OK ETH3, Add in modbus TCP SPI read/write testing and return: Illegal_SlaveDeviceBusy if there is a communication error so client must retry later OK ETH3, Add "version.htm" file to extract version number in plain HTML OK ETH3, Add API for version similar to NX using same OBJ_COMMAND_VERSION case in Comm_Optomux.c OK WIN, Fix bug when printing call graph involving "highAddress" that was printing indentation incorrect on subroutines on specific cases with multiple jumps involved ===================================================================================================== // 2.79.4 10 July 2019 ===================================================================================================== OK NX5, Move USB interrupt routine to low priority to avoid the stack corruption reported by Chris OK ETH3, Add Clk.foreceReset to force a reset every n minutes and Clk.magicCookie to preserve COMx remote points' current value between resets, see NV_FORCED_RESET_MINUTES OK ETH3, Improve IP communication by going to idle more frequently and not overcrowding the SPI with garbage messages in NX5_stuff() state machine OK ETH3, Add web page COM setup of ETH3 created by Chris, just added conditional compiling for 1115-XP gateway OK WIN, Fix bug that popped up windows while restoring with CLI OK WIN, Clean output strings sent to file: status.txt while using CLI requested by Chris/Luke OK WIN, Catch all N8x errors for retry inside a_N2() also clearing acknowledge if A10xx is received to also retry again ===================================================================================================== // 2.79.3 2 July 2019 ===================================================================================================== OK WIN, Fix bug Ethernet communication, address was being set to zero ===================================================================================================== // 2.79.2 29 June 2019 ===================================================================================================== OK NX5, Add variable Clk.keepAliveUSBfast in main.c to force USB re-attachment after 5 seconds od last USB comm by calling USBDeviceAttach(); for if by any reason it got de-attached OK NX5, Change in project properties for all builds in mcc18 / memory model the setting of: Enable multi-bank stack model to "OFF" (unchecked) to avoid the stack from overwriting the USB registers USB_BDT that are located at fixed position in banked memory at address 0xb00 see 23.4 Buffer Descriptors and the Buffer, on the PIC18F47J53 manual document DS39964B-page 388 which are following the .stack which is located at udata 0xc00-0xcff. This also decreases program memory usage by about 400 bytes in all builds, as the stack operations only affect the lower byte of the stack pointer, see section 3.2.4 Managing the Software Stack of the MPLAB_C18 users guide, document DS51288D on page 43 OK NX5, Always fill positions 25..28 of MSG_StatusUpdate to avoid non standard characters being sent in acknowledge OK NX5, Force reading remotePt2.maxRemotePointCOM2 on every call to nextPoint( to be reliable ) OK NX5, Fix bug in bridging to COM2 slaves OK NX5, Fix bug in clearAPI() was incorrectly setting the xeepromID when clearing CLR_API_PLC_2 and CLR_API_PLC_3 for al memories (shared, NVRAM and DualCore) OK NX5, Fix bug on DDX not reporting correctly in dual core BO-41..60 reported by Chris/Gurshinderpal OK NX5, Verified correct operation on remote points polling using remotePt2.maxRemotePointCOM2 = readXEEchar( XEE_SYS_MAX_POINTS_COM2 ); OK NX5, Verified correct operation on reading BO-41..60 lighting groups using DDX as reported by Gurshinderpal OK NX5, Verified correct operation on configuration->Schedules,BO 41..60 are not getting updated according to schedules reported by Gurshinderpal OK NX5, Verified correct operation with Arduino SQL commanding BO´s correctly all times via all interfaces OK NX5, Initialize XEE_SYS_MEM_GRAPH_SHARE to XEE_MEM_SHARE_ACTIVE in clearAPI() to make sharing active by default OK NX5, Disable and later re-enable PIE2bits.USBIE in interfazDisplay() when in case PA_POWERON: while calling sprintf( i2c.lcdBuff, "Ok v%d.%d%d... to avoid stack overflow and several other screens to avoid stack overflow exceeding the 0cC00-0xCFF stack range OK NX5, In setRelay() revert to default non-BACnet prioritization if BACnet is not used in COM1 OK NX5, Fix bug showing incorrectly the labels of tagged ADB, ADI and ADF variables on the LCD screen OK NX5, Add firmware version API requested by Chris/Luke OK ETH3, Add N82 error code to return instead of blank empty responses over IP OK WIN, Warn user if BACnet priority dialog is entered and BACnet protocol is not used that BACnet prioritization is not in use OK WIN, Add firmware version API tester requested by Chris/Luke OK WIN, Modified default values button for memory sharing to analyze and force correct values on startup OK WIN, Automatically initialize memory sharing after a factory reset on 1st time entering the PLC selection dialog OK WIN, Automatically clear PLC2 & PLC3 during a factory reset if they are enabled OK WIN, Fix bug in memory viewer increment/decrement buttons when reading NVRAM OK WIN, Fix bug when loading files to shared memory that was making CLI fail when file is bigger than available memory reported by Weihua OK WIN, Fix placement of IDB_NX5_O_EMPTY that was overlapping the device type icon ===================================================================================================== // 2.79.1 6 June 2019 ===================================================================================================== OK NX5, Fix bug that on COM1 when using slave Optomux protocol it was responding to all addresses OK ETH3, Add an additional process watch dog timer to reset ETH3 under certain unforeseen circumstances that under heavy IP load was freezing ETH3 every 4-5 days, only way to go out is clicking reset button or cycling power OFF/ON, see gNX5net.processRunning OK ETH3, Add NV_SYS_MODBUS_MASTER_WR_OVER_4_RMT to define if modbus master uses WRITE or OVERRIDE for remote points when point is written, 0(default)=WRITE, anything else OVERRIDE OK SW-WIN, Add statistics report on ETH remote points and log options and ranges to create report ===================================================================================================== // 2.79.0 25 May 2019 *** URGENT UPDATE !!! to fix EEPROM burnout bug *** ===================================================================================================== OK NX5, Fix bug that could potentialy burn out the EEPROM under certain circumstances ===================================================================================================== // 2.78.3 20 May 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, Add support for NX5-CIL40 OK NX5, Fix reboot sequence for BO's so they restore correctly OK NX5, Set LCD to not go to standby by default OK NX5, Change sharing default enabled as requested by Chris OK SW-WIN, Add support for NX5-CIL40 OK SW-WIN, Enable by defaulr PLC2/PLC3 while compiling using the CLI interface requested by Chris/Gurshinerpal ===================================================================================================== // 2.78.2 16 May 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, Add schedule mapping in Optomux as requested by Carlos Isguerra OK NX5, Improve communication over COM2 bridging for COM1, USB and SPI buses by refactoring sendMessageToCom2remoteSlave() and remotePoint() OK NX5, Fix bug on sending duplicate acknowledge over USB reported by Chris OK ETH3, Adjust timing to wait for NX replies in NX5_tx_rx() from 200 to 400 ms to improve performance reading COM2 slaves OK ETH3, Add writing ETH3 database of: RMT_COM1, RMT_COM2, RMT_IP, ADF, ADI, ADB via modbus RTU via COM1, COM2 requested by Carlos Isguerra/Roberto Sandoval OK ETH3, Fix bug in ETH3 writes via modbus/IP and modbus/RTU which was using incorrect offsets OK SW-WIN, Add multi language messages on output assignment view screen OK SW-WIN, Add multi language date on main screen, was showing months always in spanish OK SW-WIN, In remote points 1-50 read current value when tranversing to modify values with << & >> keys ===================================================================================================== // 2.78.1 7 May 2019 ** EEPROM burnout bug ** ===================================================================================================== OK ETH3, Add reading ETH3 database of: RMT_COM1, RMT_COM2, RMT_IP, ADF, ADI, ADB via modbus RTU via COM1, COM2 requested by Carlos Isguerra ===================================================================================================== // 2.78.0 4 April 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, With Chris' assistance add indexed array for priorities to be read correctly by Schneider OK NX5, Reorder LCD screens and definitively remove the ones that were taken out to make room for additional BACnet code OK NX5, Report SPI buffer overrun correctly and add flag to see if it was data buffer overrun (01) or SPI hardware buffer overrun (02) OK ETH3, Fix bug for SPI retry and change retry count and retry timer OK SW-WIN, Add verbose mode to CLI output and logging to better diagnose bugs OK SW-WIN, Fix bug that showed control bits for timers offset +1 teported by Chris OK SW-WIN, Add BACnet priorities dialog with support for v2.78 in firmware OK SW-WIN, Close files before trying a re-open to avoid USB stucks in Windows OK SW-WIN, Returns error if CLI if script errors ===================================================================================================== // 2.77.3 25 March 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, Clear trend cache when clearing samples to force firmware to read header again and not read it from cache OK NX5, Implement a user selectable BACnet-ID, will default to MAC (0..127) if BACnet ID is 65535 (0xFFFF) OK NX5, Fix bug that was sending garbage for un-named BACnet labels in searchPointLabel() Ok NX5, Change implementation of RMT reading so status shows unreliable correctly in function_READ_MESSAGE() switch case DF: in remote points section OK NX5, Add priority to encoding of current value of binary outputs Ok SW-WIN, Change implementation of RMT reading so in output assignment it shows correctly even while the point is being written or overriden in LeerSAM() OK SW-WIN, Add support BACnet-ID, will default to MAC (0..127) if BACnet ID is 65535 (0xFFFF) OK SW-WIN, Disable select project window when being invoked from the command line. OK SW-WIN, Add limits to the decoding of RES_FLT and RMT points OK ETH3, Fix bug writing of remote points as reported by Ivan, remoteStartEnd() had a bad index on being called by Optomux master ===================================================================================================== // 2.77.2 11 March 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, Add to BACnet/MSTP the priorities to BO's OK ETH3, Fix bug in the encoding of present value property in ETH3's COM1 & COM2 remote points OK ETH3, Fix bug in the commanding of ETH3's COM1 & COM2 remote points so writes are processed correctly OK ETH3, Add relinquish default and priority array logic to BOs, it is still pending to connect to NX priority logic which is a work in process in BACnet/MSTP implementation OK ETH3, Add ETH3's COM1 & COM2 remote points to BACnet discovery ===================================================================================================== // 2.77.1 8 March 2019 ** EEPROM burnout bug ** ===================================================================================================== OK ETH3, Fix bug that was not allowing writes via modbus TCP to ETH3 remote points OK ETH3, Add to mapping table BACnet points already mapped in ETH3: 2000 remote points and 300 NVRAM setpoints ===================================================================================================== // 2.77.0 26 February 2019 ** EEPROM burnout bug ** ===================================================================================================== OK NX5, Change use of remote points res floats with different memory configurations as depicted below: +-------+---------------+---------------+---------------+---------------+-----------------+ | Port | RMT-1..50 | RMT-51..255 | RES_FLT-1..40 | RES_FLT-41..50| RES_FLT-51..255 | +-------+---------------+---------------+---------------+---------------+-----------------+ | COM1 | Modbus | Modbus/Opto-N2| Modbus/Opto-N2| Modbus/Opto-N2| Modbus/Opto-N2 | +-------+---------------+---------------+---------------+---------------+-----------------+ | COM2 | Optomux-N2open| Modbus/Opto-N2| Modbus/Opto-N2| Modbus/Opto-N2| Modbus/Opto-N2 | +-------+---------------+---------------+---------------+---------------+-----------------+ | COM3 | |Mod*/Op-N2/BAC*|Mod*/Op-N2/BAC*|Mod*/Op-N2/BAC*|Mod*/Op-N2/BAC* | +-------+---------------+---------------+---------------+---------------+-----------------+ In standard NX controllers only COM1 & COM2 are available, and only one master is allowed : + modbus can be master in COM1 or Optomux/N2open in COM2 If NVRAM memory is available, also RMT-51..255 & RES_FLT-51..255 are available. Two simultaneous masters are available: + If only modbus is master in COM1 it can manage RMT-1..255 + RES_FLT-51..255, RMT-1..50 are polled twice over RMT & RES_FLT 51..255 + If only Opto/N2 is master in COM2 it can manage RMT-1..255 + RES_FLT-51..255, RMT-1..50 are polled twice over RMT & RES_FLT 51..255 + If dual masters, then modbus manages COM1 and handles RMT-1..50 and Optomux/N2open handles RMT-51..255 + RES_FLT-51.255, in this case both buses operate independent of each other. also no high priority points are allowed in this situation. If dual core is available then three COM ports are available, and each operates independent of the other, sharing resources as follow: In CORE-1: + If only modbus is master in COM1 it can manage RMT-1..255 + RES_FLT-41..255, RMT-1..50 are polled twice over RMT & RES_FLT 41..255 This applies only if COM3 is not save as a master and the setting of who manages RMT-51..255 in COM3 is set to COM2 if this is not the case, then COM1 only manages RMT-1..255 and COM3 manages RES_FLT-41..255 + If only Opto/N2 is master in COM2 it can manage RMT-1..255 + RES_FLT-51..255, RMT-1..50 are polled twice over RMT & RES_FLT 41..255 This applies only if COM3 is not save as a master and the setting of who manages RMT-51..255 in COM3 is set to COM2 if this is not the case, then COM2 only manages RMT-1..255 and COM3 manages RES_FLT-41..255 + If dual masters, then modbus manages COM1 and handles RMT-1..50 and Optomux/N2open handles RMT-51..255 + RES_FLT-51.255, This applies only if COM3 is not save as a master and the setting of who manages RMT-51..255 in COM3 is set to COM2 if this is not the case, then COM2 only manages RMT-1..255 and COM3 manages RES_FLT-41..255 In CORE-2: + If COM3 is set as a master it will manage RMT-51..255 only if the setting of who manages RMT-51..255 in COM3 is set to COM3 if this is not the case, then COM1 and/or COM2 in CORE-1 are free to use RMT-51..255 as described above + If COM3 is set as a master it will manage RES-FLT-41..255 without regard of the setting of who manages RMT-51..255 if COM3 is not set as slave, then COM1 and/or COM2 in CORE-1 are free to use RMT-51..255 as described above NOTE: CORE-2 currently only implements master Optomux/N2open, master for modbus and BACnet/MSTP are provisioned but not implemented yet. Three masters: + If COM1 is set as master modbus AND the setting of who manages RMT-51..255 in COM3 is set to COM2 COM1 will manage RMT-1..50 in modbus in CORE-1 + If COM2 is set as master Opto/N2 AND the setting of who manages RMT-51..255 in COM3 is set to COM2 COM2 will manage RMT-51..255 in Optomux/N2open in CORE-1 + If COM3 is set as master Opto/N2 AND the setting of who manages RMT-51..255 in COM3 is set to COM2 COM3 will manage RES_FLT-51..255 in Optomux/N2open in CORE-2 OK NX5, Reserve 16 bytes of base EEPROM memory for file hash storage XEE_SYS_FILE_HASH from 32412 to 32428, requested by Weihua OK NX5, Add API for reading database point information including name via Optomux OK NX5, Add API for reading / writing maximum point to poll for COM1, 2 & 3 OK NX5, Add in read command direct mapping support for: RES_BIT, RES_FLT, RMT_PT, TMR_STAT OK NX5, Add random number generator in special instruction 123, number generated in range 0..2 OK NX5, Add mapping of RES-BITs directly to Optomux protocol OK NX5, Add mapping of RES-FLOATS directly to Optomux protocol OK NX5, Add mapping of REMOTES directly to Optomux protocol OK NX5, Add mapping of TIMERS directly to Optomux protocol OK NX5, Add last point to poll in master Optomux as requested by Chris for all COM2 port implementations regardless of protocol OK NX5, Reserved space for alternate +200 labels in shared memory, 64K and dual core memory OK NX5, Change use of RES_FLT during BBT so they do not conflict with eZ script stack, added XEE_SYS_BBT_RX_ADDRESS eeprom register to select between 1..30 as starting point OK NX5, Deprecate some debug LCD screens of comm status and xeeprom clear that were used only for bus debugging to make more space for some really useful code OK SW-WIN, Add new settings for COM3 remote points when RMT+RES_FLT are managed by COM1/COM2 as masters because COM3 is not master OK SW-WIN, Add random number generator support in special instruction 123, number generated in range 0..2 OK SW-WIN, Add command line interface for file upload/download to shared memory OK SW-WIN, Add support for API for reading / writing maximum point to poll for COM1, 2 & 3 OK SW-WIN, Abort command line interface actions if version of firmware is < 2.77 to get all new features OK SW-WIN, Modify behaviour of Optomux driver, immediately returning if N05,N10,N11,N12 errors are received. OK SW-WIN, Script compiler only goes to trend 15 OK SW-WIN, Hide window in Spanish warning of saving/restoring NVRAM-XP remote points when using command line, also make it multi-language for normal operation OK SW-WIN, Fix bug that was not incrementing write addresses in EEPROM programmer m_Address++ OK SW-WIN, Fix bug that was not reporting correctly a compilation error when using the command line interface OK DUALC2, Fix bug that was setting incorrectly writes in remote points 51..255 in dual core OK DUALC2, Implement fully PLC3 in dual core OK DUALC2, Add last point to poll in master Optomux as requested by Chris for all COM3 port implementations regardless of protocol OK ETH3, Add support to release BOs and AOs in Niagara that doesn´t send a standard BACnet release, so now by writing to BO-60 will release all BOs-1..60 and writing to RES_BIT-250 will release BOs-1..60 and AOs-1.10 as well. Normally issuing a BACnet release does the trick but Niagara never sends such signal. Apparently always wants to keep control an only uses it´s internal priority mechanism. OK ETH3, Fix bug in function i2cWrite() that was hanging the ETH3 while upgrading from old versions while trying to initialize the RTCC's eeprom ===================================================================================================== // 2.76.0 13 February 2019 ===================================================================================================== OK NX5, Add an API to clear memory using clearRegion() including PLCs 2 and 3 OK NX5, Add specific hardware ID to correctly identify hardware requested by Chris on Jason's will to exactly identify each one for adding visuals for SDS OK NX5, Add checking range when asking for BACnet array index to generate generateError( ERROR_CODE_OTHER ) if aIdx > discSize OK NX5, Deprecate IP and e-mail settings API as this functionality will be moved to ETH3, Xeeprom registers previously assigned will be released as well OK NX5, Remove code for configuring e-mails to free some resources, should be done via ETH3 OK NX5, Remove code for configuring IP to free some resources, should be done via ETH3 OK NX5, Fix bug reported by Chris to avoid that the new MSTP implementation requires a power cycle after changing the MAC address OK NX5, Fix bug to enable alternate/parallel instruction to run in PLC2 and PLC3 as well when writing status back to PLC instruction in as_updateCurrState() OK NX5, Fix bug in hysteresis instruction, adding an output assign instruction to load a stack res_bit if destination is otherwise to avoid undetermined result on exit as previous value was not loaded correctly OK NX5, Straighten sharing types, provide backward compatibility flag OK SW-WIN, Add flags to enable PLC2 and PLC3 for command line compiler OK SW-WIN, Force user to select a valid project before continuing in ValidteProject() OK SW-WIN, Automatically set flags to enable PLC2 and PLC3 when dual core is detected OK SW-WIN, Add specific hardware ID to correctly identify hardware requested by Chris on Jason's will to exactly identify each one for adding visuals for SDS OK SW-WIN, Standardize shared segment descriptors for usage by SDS and Nx5win: 0=Trend (S1,S2,S3), 1=script (S1,S2,S3), 2=**deprecated (S1,S2,S3), 3=SMS (S3), 4=PLC (S2,S3), 5=+200 labels (S1,S2,S3) OK SW-WIN, Fix trend error that throws error N1014 when sharing is activated due to removal of e-mail API OK SW-WIN, Fix decoding of command line address when the /address is omitted on the xxx/address part OK SW-WIN, Fix bug showing NXXXX found showing in UL machine after script downloading due to deprecated e-mail API in firmware OK SW-WIN, Fix bug showing when using command line flag -OL:1 in Luke's machine OK SW-WIN, Eliminate pop up screen reported by Luke that was showing when using command line flag and expanded memory was present telling user to manually restore expanded remote points OK SW-WIN, Fix bug with checksum calculation when overflowing the 16 bit register happened OK SW-WIN, Fix bug that was showing N80 error due to DirRS485 was corrupted, this affected setting COMM ports correctly after compilation OK SW-WIN, Deprecate current IP and e-mail settings API in the configurator, this functionality will be moved to ETH3 OK DUALC2, Fix bug that USB write flags were overlapped with slave status for slave 103, affected registers were DN_NX5__SYS_DN_STORE_GRA & DN_NX5__SYS_DN_STORE_RMT OK DUALC2, Allow PLC3 to run in core 1 to have all three PLCs active in dual core implementation OK ETH3, Provide a user defined return path (file) when changing a variable using forms ===================================================================================================== // 2.75.9 18 January 2019 ===================================================================================================== OK NX5, Fix bug that reported trend zero incorrectly to configurator SW OK SW-WIN, When checking to enable PLC2 and PLC3 if there is shared memory also check for g_PLCdualCoreInstalled to be active to enable PLC2 and 3 OK SW-WIN, During compile+download using the compile line, use same logic of the configurator to load only the things that got created OK SW-WIN, Add -OL:xxx (Optional Load flag) to the command line compiler interface to manually decide which parts to load after the compile process OK ETH3, Add BACnet/IP mapping to ETH3 remotes database ===================================================================================================== // 2.75.8 5 January 2019 ===================================================================================================== OK NX5, In processO22pointAcknowledge() comment the call to nextPoint() and instead call it after calling processO22pointAcknowledge() to eliminate the case where an anomaly acknowledge would make the polling cycle to stall ===================================================================================================== // 2.75.7 24 December 2018 ===================================================================================================== OK NX5, Added support for NX5_eco_XHVAC OK NX5, Fix bug that returned cached graph header on error, now reading the header forces reading it from EEPROM OK ETH3, Support to load and view JPG files from USB added by Chris OK ETH3, Improve comm performance by checking on different places for comm updating by calling Comm*task() OK ETH3, Provide a user defined return path (file) when changing a variable using forms OK SW-WIN, Added flag to compile + restore process when using command line interface, can use -COMPILE and add an address, or -COMPILE_D and an address, this last option will complain if no address is passed along OK SW-WIN, Fix bug reported by Gurshinderpal regarding creating schedules with floating point values was incorrectly adding ADF's on the stack OK SW-WIN, Fix bug with day/month schedules being created wrong during compilation process OK SW-WIN, Verify multi-language support to schedule documentation ===================================================================================================== // 2.75.6 19 December 2018 ===================================================================================================== OK ETH3, Fix bug in ETHXP that was not resetting gNX5net.SPIdisabled variable, as it is never intended to work standalone ===================================================================================================== // 2.75.5 13 December 2018 ===================================================================================================== OK DUALC2, Fix reboot issue that was introduced when using optimized compiler settings that LCD does not come in OK ETH3, Fix bug of stalled controller when upgrading by implementing i2c timeout by decrementing i2c.TOtimer instead of i2c.timeout and changing start init value of XEE_SYS_VALID_H and NV_SYS_ID_0 OK ETH3, Fix bug when selecting remote points for ETH3 by calling OnBnClickedRead() to update drop down list OK ETH3, Change default block read to improve web page loading throughput from USB from 200 to 50 and dyanamically adjustable via XEE_XEE_USB_PACKET_SIZE for pages heavy in CGI tags OK ETH3, Change web pages so that when commanding auto-reloads current page OK SW-WIN, Fix Ethernet remote point view bugs ===================================================================================================== // 2.75.4 12 December 2018 ===================================================================================================== OK ETH3, Add support for writing remote points via forms OK ETH3, Add files for comanding with forms in user loadable files in USB ===================================================================================================== // 2.75.3 4 December 2018 ===================================================================================================== OK ETH3, Add support for writing ETH3 remote points via web pages OK ETH3, Fix flag issue for decimals on remote points for ETH3 OK ETH3, Add USB web browsing file capability via CGI which are user modifiable ===================================================================================================== // 2.75.2 29 November 2018 ===================================================================================================== OK NX5, factory reset for lighting schedules so that they are disabled by default OK SW-WIN, Add support for COM11..256 for the command line interface OK SW-WIN, Remove from reset to factory default the additional buttons that created user confusion OK SW-WIN, Fix bug on selecting comm with ETH3 via SPI/COM1/COM2 that was not resetting correctly the g_talkToETH3database flag OK ETH3, Add NVRAM register NV_SYS_DISABLE_SPI to be able to force SPI of if set to 0x5A OK DEPLOY, Add HEX files for PM11, WLS and VAVFC in OtherHEX folder ===================================================================================================== // 2.75.1 24 November 2018 ===================================================================================================== OK NX5, Fix bug on initializing to factory defaults reported by Chris/Gurshinderpal clearRegion() was going outbounds by initializing loop with zero instead of startAddress OK SW-WIN, Fix bug reported by Weihua regarding clear addresses for remote points rwAddress increment ===================================================================================================== // 2.75.0 18 November 2018 ===================================================================================================== OK NX5, Fix logic.loopCount statistic that was not being incremented on dual core OK NX5, Clear on factory reset SMS memory area OK NX5, Add COM1 latency timing to show in info screen OK NX5, New BACnet stack which is v16 compliant OK NX5, Implement modbus MEI (Modbus Encapsulated Interface) to create an Optomux tunnel/bridge OK NX5, Verify that data sharing is active with 64K EEPROM base memory after a factory reset OK NX5, Bug fix reported by Gurshinderpal that on output assignment binary to analog of negative values behaves differently than in boolean equations due to signed unsigned mismatch OK NX5, Bug fix reported by Chris that RMT-1 ceases to work when COM2 is selected as master of RMT-51..255 OK NX5, Bug fix reported by Manuel/Ivan that modbus can't command relays reliably, added feature to choose write/override to function 05 write single coil and 15 write multiple coils OK DUALC2, Change optimization level GCC from 0 to 1 to reduce memory usage from 44% to 29% and make sure that USB storing does not slow down the dual core's keyboard interface OK ETH3, Change optimization level GCC from 0 to 1 to reduce memory usage from 87% to 51% and improve speed OK ETH3, Implement master on COM1 and COM2 for Optomux with bridging to slave devices OK ETH3, Implement master on COM1 and COM2 for modbus RTU OK ETH3, Implement slave on COM1 and COM2 for Optomux with bridging to NX-SPI OK ETH3, Implement slave on COM1 and COM2 for modbus RTU with bridging to NX-SPI OK ETH3, Implement modbus MEI (Modbus Encapsulated Interface) to create an Optomux tunnel OK ETH3, Use USB to read/write file IPCONFIG.TXT for reading and setting IP configuration OK ETH3, ETH3 works either with NX10 connected via SPI or in stand alone mode OK SW-WIN, Fix bug reported by Luke on loading software from command line was crashing by missing file nx5comm.ini OK SW-WIN, Verify operation of dual core memory initialization on new devices works consistently OK SW-WIN, Add support for using expanded NV/remote points >= 51 over modbus if COM2 is no master OK SW-WIN, Make sure correct sharing is always selected regardless of memory configuration to enable PLC2 and PLC3 specially on 64K devices OK SW-WIN, Provide alternative options for factory reset to clear the four different remote sections individually OK SW-WIN, In script compiler dialog box, make sure the new project is displayed in the field at the bottom of the dialog, must match what is on top on the main bar. OK SW-WIN, Bug fix reported by Chris that when cancelling output assignment, and then click exit you get a "Wrong PID selection" dialog error pop up, It also happens when you exit out of the PID select dialog, and the alternate/parallel select dialog OK SW-WIN, Make modbus point configuration multi-language OK SW-WIN, Make dual core remote point configuration multi-language OK SW-WIN, Make XP remote point configuration multi-language OK SW-WIN, Make XP modbus remote point configuration multi-language OK SW-WIN, Store temporary and log files from C:\NX5 to C:\OpenBAS\NX5 ===================================================================================================== // 2.74.b 30 October 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== OK SW-WIN, Fix bug with command line compiler that was not creating status.txt file if it was not already present OK SW-WIN, Add statistics for ETH3 to COM1 & COM2 bridge OK ETH3, Add statistics for ETH3 to COM1 & COM2 bridge ===================================================================================================== // 2.74.a 29 October 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== OK SW-WIN, Add support for COM1 and COM2 as masters Optomux in ETH3 OK ETH3, Verify issue with SPI changeover between FLASH and NX channels to avoid file corruption when serving images OK ETH3, Modify MPFS2.c to add: retryCount to retry SPI while( SPI1STATbits.SPIBUSY == 1 ) at least 5 times with a 5ms delay between retries to avoid SPI collission that corrupts files OK ETH3, Add support for COM1 and COM2 as masters Optomux in ETH3 OK ETH3, Add support for USB file upload and download via Ethernet (originally added by Chris) OK ETH3, Add support for operation in stand-alone mode (no NX connected via SPI bus) OK ETH3, Log in USB_LOG.CSV events of files upload/download OK ETH3, Log in USB_DIR.CSV events of files upload OK ETH3, In BACnet/IP report error: ERROR_CODE_OPERATIONAL_PROBLEM when ETH3/NX spi exception ocurs OK ETH3, In BACnet/IP report error: ERROR_CODE_UNKNOWN_OBJECT when an out of bounds object number is requested OK ETH3, In BACnet/IP report error: ERROR_CODE_NO_OBJECTS_OF_SPECIFIED_TYPE when an unknown object type is requested ===================================================================================================== // 2.74.9 15 October 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== OK SW-WIN, Add support for COM10, later support for values above 10 will be added OK NX5, Remove recursivity in BACnet_9_5_6_1_initialize() that was calling itself and forcing a WDT reset on lockout and /or stack overflow !!! OK NX5, Continue WIP on BACnet_MasterNodeStateMachine() ===================================================================================================== // 2.74.o 15 October 2018 -- (**branched development to quick fix BACnet MSTP**) ===================================================================================================== OK NX5, Copy from 2.74.3 support for temperature sensor PT1000 @ 0°C see XEE_AI_NX5_ty_1kDwy0C definition ===================================================================================================== // 2.74.8 12 October 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, AND-OR instruction, disable top or bottom term when both of its operands are NULL OK SW-WIN, Add command line support for compiling and uploading/downloading the database being generated ===================================================================================================== // 2.74.n 09 October 2018 -- (**branched development to quick fix BACnet MSTP**) ===================================================================================================== OK NX5, AND-OR instruction, disable top or bottom term when both of its operands are NULL ===================================================================================================== // 2.74.7 05 October 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add support for more than 8 alarm levels for LCD display OK SW-WIN, Add support for more than 8 alarm levels for LCD display ===================================================================================================== // 2.74.m 04 October 2018 -- (**branched development to quick fix BACnet MSTP**) ===================================================================================================== OK NX5, In pollForMaster() add two lines setting BACnet.usageTimeout to avoid repeated usage and/or flooding with PFM's ===================================================================================================== // 2.74.6 28 September 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add support for NX5-CIL40 (need to add support in NX5-WIN and finish implementing MCP23017 x2) ===================================================================================================== // 2.74.5 24 September 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add support for NX5 smoke control (need to add support in NX5-WIN and finish remapping) ===================================================================================================== // 2.74.4 29 August 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add support for NX5 eco ===================================================================================================== // 2.74.3 25 July 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add support for temperature sensor Dwyer PT1000 @ 0°C see XEE_AI_NX5_ty_1kDwy0C definition OK SW-WIN, Add support for temperature sensor Dwyer PT1000 @ 0°C ===================================================================================================== // 2.74.2 29 June 2018 -- (**NOTE BACnet MSTP is still in process of re-writing and not working yet**) ===================================================================================================== NOTE:NX5, BACnet is non working as it is in process of being reworked for v2.75.0 OK NX5, Add two new protocols for weight scales PROTOCOLO_WEIGHT_NHSF / PROTOCOLO_WEIGHT_IQPLUS OK SW-WIN, Add support for two new protocols for weight scales ===================================================================================================== // 2.74.1 20 June 2018 ===================================================================================================== OK SW-WIN, Fix bug that uninitialized segment information was not allowing to retrieve saved files, debug mode was OK, release version did not initialize segment info correctly OK SW-WIN, Fix bug that was not handling correctly the EOF on binary files when being downloaded to NX controller OK SW-WIN, Swap PLC2 / PLC3 use indication in resume that was reversed, PLC operation was correct though OK DEPLOY, Add missing _Bootloader_images directory with missing bootloader HEX files ===================================================================================================== // 2.74.0 15 June 2018 ===================================================================================================== OK NX5, Add to BACnet units mapping AIs and AOs only (not enough eeprom to store units for each database point) OK NX5, Add to BACnet mapping of system time variables (read only) OK NX5, Add to BACnet mapping of schedules OK NX5, Add to BACnet mapping of input voltage (+12V controller voltage), and battery fail (RTCLK validity aka. battery 1 = OK) OK NX5, Add multiple linked instructions capability for future expanded instructions, currently suports multi block PLC comment TYP_MULTIPLE_BLOCK_LINKED/TYP_MBL_LONG_COMMENT OK NX5, Add Invert logic in CALL and JUMP conditionals so generated script can save 1 instruction on each call/jump OK NX5, Add mask to validateTerm() in switch( logicRec.region[ idx ] & 0x0F ) to keep only the lower 4 bits, for when in the future the upper 4 bits are used for extended object addressing and/or flags OK NX5, Add modulus calculation (reminder) on: special instruction 124 OK NX5, Add square root is available on: special instruction 125 OK NX5, Add superheat calculation is available on: special instruction 126 OK NX5, Add PLC2 and PLC3 to standard controllers and using shared memory OK NX5, Add support for 8K NVRAM in XHVAC OK NX5, Add support for controllers with 64K NVRAM base memory OK NX5, Add time remapping into RES_FLOAT registers, remapping as hh.mm, dd.mm, minOfDay OK NX5, Add configuration to INVERT MODE of binary input connecting them to ground and using 5V pull up resistor setting DIP-SW to ON OK NX5, Add as standard instruction, limits OK NX5, Add as standard instruction, multiple transfer OK NX5, Add as standard instruction, lead lag by Chris OK NX5, Add as standard instruction, PID by Chris OK NX5, Add as standard instruction, proportional staging by Chris OK NX5, Add as standard instruction, Staggered start suggested by Tom Szura OK NX5, Add compare registers using TIME format, as now they can be mapped to RES_FLT in configuration of DST of RTCC OK NX5, Add store script in shared graph area OK NX5, Fix integration issues with 1, 2 or 3 active PLCs by adding integratePLC() and integrateADC() to keep integration of analog inputs consistent without regard of PLC cycle timing OK NX5, Disable graphs that are shared with PLC2,3 or sctipt storage OK NX5, Refactor especial.c so the previously mentioned instructions can make use of the new instructions OK NX5, E-mail configuration should only be available for NX5, NX10, NX learn, and dual cores, all others discarded OK ETH3, Add variable to read ETH3 build version OK ETH3, Incorporate fixes to TCP/IP stack problems by Chris Lange, specifically replaced HTTP2.c and MPFS2.c with his files OK SW-WIN, Add support dialogs for new instructions: Multiple linked (99), PID(36), PROP_STAGER(37), LEADER_CALC(38), LIMITS(39), STAGERED_START(40), MULTIPLE_TRANSFER(41), LONG_LABELS 99/1) OK SW-WIN, Add script support for new instructions: Multiple linked (99), PID(36), PROP_STAGER(37), LEADER_CALC(38), LIMITS(39), STAGERED_START(40), MULTIPLE_TRANSFER(41), LONG_LABELS(99/1) OK SW-WIN, Add checksum and timestamp to PLC to detect a change by the user, add it to the LOG OK SW-WIN, Add dialog for sharing graph trends, script storage, PLC2-PLC3, SMS and e-mails OK SW-WIN, Add in schedules new buttons to access database to see current status to avoid having to exit screen to see them OK SW-WIN, Add file dayCheck.ini to show version mismatch only once a day OK SW-WIN, Add DEFINE + INITIALIZATION option on the same line to save script lines and make less prone to error OK SW-WIN, Add store script in shared graph area OK SW-WIN, Add check for stack overlap on RES_BIT and RES_FLOAT when compiling OK SW-WIN, Add in analog input calibration visualization of integration constant in seconds, fix explanatory text to be consistent with its use OK SW-WIN, Only allow new instructions to be created if SW version is 2.74.0 or greater OK SW-WIN, Fix bug in CScriptCompiler::encodePLC_Special() that struct DB_OBJECT dbObject[ 5 ] was declared with 5 elements and at least 6 are needed, was incremented to 10 OK SW-WIN, Fix bug in script compiler fix subtract error message, when adding space between operators, it was a wrong character copied from the manual instead of the '-' sign OK SW-WIN, Fix bug in holidays "Document" gives a wrong day of ZERO OK SW-WIN, Fix bug in schedules "Document" should change h/d to e/d (English) OK SW-WIN, Fix bug that printed garbage randomly on section labels OK SW-WIN, Fix bug in In schedules shows OFF while it is programmed to be ON OK SW-WIN, Fix bug in In search gets stuck with multiple linked block instructions ===================================================================================================== // 2.73.6 01 May 2018 ===================================================================================================== OK NX5, Includes: PIDControl( ) by Chris in special 104. Will be later merged into main branch as a standard instruction fully supported by configurator OK NX5, Includes: boilerAndChillerStagingInstruction( ) by Chris in special 105. Will be later merged into main branch as a standard instruction fully supported by configurator OK SW-WIN, Fix bug in special instruction, was showing messages in french OK SW-WIN, Fix bug that was inverting the ON/OFF labels while documenting schedules, it worked OK just dicumentation was showing wrong labels ===================================================================================================== // 2.73.5 29 April 2018 ===================================================================================================== OK SW-WIN, Fix bug in script compiler writing general scedule's value at case KWD_SCHEDULE: line 5314 in CScriptCompiler::processExpression() ===================================================================================================== // 2.73.4 26 April 2018 ===================================================================================================== OK SW-WIN, Fix bug in script compiler using + - * / symbol operators, the assignment was missing the stack offset, the ADD, SUBTRACT, MULTIPLY and DIVIDE keywords worked ok ===================================================================================================== // 2.73.3 16 April 2018 ===================================================================================================== OK NX5, Add labels to BACnet/MSTP point name requests instead of currently fixed labels (default to use fixed if no label is attached to requested point) OK NX5, Add dynamic BACnet/MSTP discovery, can be selected from customer manually and/or set by the script compiler OK NX5, Fix bug that is sending for ON/OFF status garbage to BACnet labels OK NX5, Add in Especial.c chiller and boiler stage control based on PID (experimental) OK NX5, In as_alternadoYsimultaneo() remove casting to unsigned char for alternate.setPoint and alternate.bandaProp, they are float variables OK NX5, Clk.blogicCOS++; // Increment on every pass instead of just setting it to one, to overcome heavily loaded PLCs OK SW-WIN, Add to reindex the feature to store the index for all labels instead of only ADF, ADI, ADB OK SW-WIN, In Optomux restore a 25 ms interval between reads that had been removed while reading using USB to gain speed, but was not accurately spacing packages in the USB communication endpoints OK SW-WIN, Add to script compile the SPECIAL_PLC instruction OK SW-WIN, Add the new screen to select type of dynamic BACnet/discovery OK SW-WIN, Script compiler now auto sets the BACnet discovery, still can be manually tuned by the user OK ETH3, Add labels to BACnet/TCP point name requests instead of currently fixed labels (default to use fixed if no label is attached to requested point) ===================================================================================================== // 2.73.2 21 March 2018 ===================================================================================================== OK ETH3, Fix bug in startCommTransmission() that was using ETH requests to start transmission on COM2, an else if( commPort == PORT_COMM_2 ) // COMM2 was added ===================================================================================================== // 2.73.1 20 March 2018 ===================================================================================================== OK NX5, Correct timing on power on reset bits RES_BIT-251..253 by synchronizing to when PLC starts running OK ETH3, Add support for remote points in optomux, RMT-1..2000 OK ETH3, Add support for 300 setpoints in ETH3/ETHXP+ ADB, ADI, ADF-1-100 OK ETH3, Add support for reading and writing ETH3/ETHXP+ NXRAM 32K OK SW-WIN, Fix bug when compiling script for HOUR_COUNTER instruction OK SW-WIN, Fix bug when writing manually a remote point, the routine was writing 30 registers in a row! OK SW-WIN, Add fast initialization in TCP/IP by first opening IP/protected/index.htm and unlock possibly jammed opto_22.htm on overloaded sockets OK SW-WIN, Add support for remote points in optomux, RMT-1..2000OK OK SW-WIN, Add support for 300 setpoints in ETH3/ETHXP+ ADB, ADI, ADF-1-100 OK SW-WIN, Add support for reading and writing ETH3/ETHXP+ NXRAM 32K OK SW-WIN, Fix bug that sends error N80 after compiling with script by changing ID addres, and fails on commands >xx1E6B00002C90-(107):OBJ_COMMAND_XEEPROM, >xx1E730000006D-(115):OBJ_NX5_EXTENDED_STATUS ===================================================================================================== // 2.73.0 12 March 2018 ===================================================================================================== OK NX5, Add support to read as modbus master with dual core RMT-51..254 + RES-FLT-51..254, rmtORrefFlt alternates reads OK NX5, Fix bug that when using modbus master, expanded points was cycling netween reads and writes OK NX5, Add in USER.H instructions to debug bootloader + application together OK NX5, FIX DDX read bytes > 128 was showing as negative values OK ETH3, Fix ETH3 access to internal database using eth_22.htm CGI file OK SW-WIN, Fix bug when writing manually a remote point, the routine was writing 30 registers in a row! OK SW-WIN, Fix ETH3 access to internal database using eth_22.htm CGI file OK SW-WIN, Add support to read/write from the ETH3 database the ADF/ADI/ADB setpoints OK SW-WIN, Add support to read as modbus master with dual core RMT-51..254 + RES-FLT-51..254 OK DEPLOY, Create batch file to create HEX files distribution list OK DEPLOY, Add Mircom license information to installer ===================================================================================================== // 2.72.1 5 March 2018 ===================================================================================================== OK NX5, Add support writing as master using CODE_WRITE_MULTIPLE_COILS instead of CODE_WRITE_SINGLE_COIL, it is enabled by setting XEE_SYS_MODBUS_WRITE_FUNC_15 (32201) to 1 ===================================================================================================== // 2.72.0 1 March 2018 ===================================================================================================== OK NX5, Add support for reading trend graphs at 8X rate using truncated 24 bit IEEE float OK SW-WIN Fix typos for PROTOCOL_BANCET_MSTP, SUBSTRACT, SUBSTRACT_T and auto-correct if still found in old files ===================================================================================================== // 2.71.2 16 February 2018 ===================================================================================================== OK ETH3, Add support for ETHXP plus ===================================================================================================== // 2.71.1 3 January 2018 ===================================================================================================== OK SW-WIN, Fix in NXddx.cpp in CNXddx::validateFields() line 784 bug that was not allowing to read remote points above 50 by adding rgMax[REGION_RMT_PT] = 255; OK SW-WIN, Update retryNr from 3 to 4 when on USB to improve On-line stability on some fast machines ===================================================================================================== // 2.71.0 24 December 2017 ===================================================================================================== OK NX5, Add support to generate Dynamic Data eXchange (DDX) responses using OBJ_COMMAND_NX_DDX OK NX5, Fix bug in remote.c inside remotePoint() where in line 150, after copying buffers for bridging between COM2 and USB/COM1/SPI, the brdg_USB_COM2.sourcePort flag was not being reset, this caused an overwriting of SPI buffer that affected web pages and Ethernet bridging OK SW-WIN, Add support to generate Dynamic Data eXchange (DDX) responses using OBJ_COMMAND_NX_DDX OK SW-WIN, In CXeepromClear::OnAceptar() add multi language support for reset warming message OK SW-WIN, Fix typo errors for script keywords: PROTOCOL_BACNET_MSTP, SUBTRACT, SUBTRACT_T that were incorrectly: PROTOCOL_BANCET_MSTP, SUBSTRACT, SUBSTRACT_T OK SW-WIN, Add download site for updates in Mircom: www.mircom.com/building-automation-systems besides mirror in www.rikmed.com/nx5.zip OK SW-WIN, Add option to configure ADC offset calibration for NXSF: XEE_SYS_ADC_CERO_OFFSET 32197 when set to a value between 0-50 will subtract this value from ADC reading to CERO, used in NXSF to ZERO the ADC ground noise OK SW-WIN, Add option to configure lighting controler NX12 invert bit: XEE_SYS_LATCH_RLY_INVERT 32198 for NX12R lighting controller to invert polarity of coils, factory default = 255 inverted, else 0 = normal ===================================================================================================== // 2.70.4 7 November 2017 ===================================================================================================== OK NX5, Fix in line 782 in user.c by adding else statement when doing the zeroing for SF TC's OK NX5, In logic.c in function integrar() add logic to correct for very small or very big numbers OK NX5, In integrar(() in logic.c limit values of analog inputs to being ABS( 0.001 < AIN < 999999 ) OK SW-WIN, Fix issue with zoom in high resolution monitors by adding two lines in file ExWinDlg.cpp lines: 1681 and 1682 g_zoomFactor = (float)501 / (float)g_rectClient.bottom; // This is size of main dialog when all is OK OK SW-WIN, Fix IP not being reported correctly in the INFO screen, needed to exit program and enter again for reading current IP OK ETH3, Add in the HTTP headers nAccess-Control-Allow-Origin: * to be able to redirect AJAX calls ===================================================================================================== // 2.70.3.1 26 September2017 ===================================================================================================== OK NX5, Math instructions run in NX10 if dual core is not operational (or installed) when dual core software is lodaed into NX10 OK NX5, Fix incorrectly encoded BACnet/MSTP, apdu-timeout: Line:1637:expeted unsigned and returned enum OK ETH3, Fix incorrectly encoded BACnet/IP, apdu-timeout: Line:1637:expected unsigned and returned enum ===================================================================================================== // 2.70.3 10 August 2017 ===================================================================================================== OK ETH3, Put web pages in protected to allow for login to access web server OK ETH3, Change web pages to English OK ETH3, Add support with eth_22.htm to acces ETH3 internal database OK ETH3, Implement a retry in NX5_tx_rx() by calling NX5_SpiTxRx() at least a second time if first one failed ===================================================================================================== // 2.70.2 2 August 2017 ===================================================================================================== OK ETH3, Restore missing definitions from Xeeprom.h to add ETH# database OK ETH3, Add option to force ASCII terminal in COM1 and COM2 by pressing and holding DOWNLOAD button for 10 seconds, will stay forced for 60 seconds on each transmission OK ETH3, Implement Optomux slave in COM1 and COM2 of ETH3 OK ETH3, Implement COM1 and COM2 Optomux/SPI bridging when address is 255 OK ETH3, Implement reading and writing of NX lighting schedules SCH-1..100 and general schedules SCH-201.300 via modbus/TCP OK ETH3, Implement reading and writing ETH3 current value of 2000 field bus remote points of ETH3 via modbus/TCP OK ETH3, Implement reading and writing ETH3 current value of 250 IP remote points of ETH3 via modbus/TCP OK ETH3, Implement reading and writing ETH3 300 setpoints SPF, SPI, SPB of ETH3 via modbus/TCP ===================================================================================================== // 2.70.1 27 July 2017 ===================================================================================================== OK ETH3, Close TCP socket after 3 seconds of not being used so multiple clients can share the server (Compile with XC32 v1.40) OK ETH3, Fix bug that was writing ADB's in NX5_write() using INTtoASCII() insted of CHARtoASCII() OK ETH3, Add aduino Query to ETH3 using telnet in port 23 ===================================================================================================== // 2.70.0 17 July 2017 ===================================================================================================== OK Docs, Moved all documentation to www.rikmed.com to decrease installation size file OK NX5, Add Arduino Query protocol to USB, COM1 and COM2 OK NX5, Add support for showing values > 32K in Arduino Queries OK NX5, Fix bug that was reporting dropped receptions when using COM2 bridging, comm2.statAddrOk++ added in line 204 in remote.c OK SW-WIN, In Optomux.CPP line 1844 add delays to improve bridged IP communication on slow networks ===================================================================================================== // 2.69.a 13 July 2017 ===================================================================================================== OK DUALC2, Fix bug writing RMT and FLT in COM3 dualCoreRamReadRES_FLT (le falta restarle el indice DN_VAR_RES_FLT2_41) OK NX5, Fix bug showing REMT in LCD ===================================================================================================== // 2.69.9 4 July 2017 ===================================================================================================== OK ETH3, Fix bug on SPI interface between ETH3 and NX by checking SPI status bit:if ( SPI1STATbits.SPIBUSY == 1 ) return FALSE; by Chris 4 July 2017 to fix corruption issue, line 531 of MPFS2.c OK NX5, ADD Driver Setup utility by Microchip OK SW-WIN, Include USBDriverinstaller.EXE for CDC-driver setup OK SW-WIN, Add application notes directory ===================================================================================================== // 2.69.8.b 30 Jun 2017 ===================================================================================================== OK ETH3, Fix bug for writing RES_BIT in Modbus/TCP (HR-8001..8255) OK ETH3, Add support for writing RES_BIT in BACnet/IP (BV-1001..1255) ===================================================================================================== // 2.69.8.a 28 Jun 2017 ===================================================================================================== OK ETH3, Read / Write RTCC from BACnet/IP OK ETH3, Fix bug for writing expanded remote points to BACnet/IP ===================================================================================================== // 2.69.8 27 Jun 2017 ===================================================================================================== OK ETH3, Read / Write RTCC from modbus/TCP OK ETH3, Add support for expanded remote points to Modbus/TCP OK ETH3, Fix bug for expanded remote points to BACnet/IP ===================================================================================================== // 2.69.7 19 Jun 2017 ===================================================================================================== OK NX5, FIX bridging timing issues by: in remotePoint() change order on testing for message received in bridge in line 202 if( comm2.status == ST_EOM_RECEIVED ) and else if( !comm2.waitTmr ) // Check for timeout OK NX5, FIX bridging timing issues by: Set timer wait before transmission in void remotePoint() in the switch for bridging switch( remotePt.stateMachine ) does not exit before time: comm2.waitTmr = 200; // TIME TO WAIT FOR ACKNOWLEDGE OK NX5, FIX bridging timing issues by: adding initialization: comm2.waitTmr = 200; // TIME TO WAIT FOR ACKNOWLEDGE OK NX5, FIX bridging timing issues by: adding initialization: Clk.opto22MasterTimeoutInvalidPt = 0; // >To avoid this timer to screw the bridging OK NX5, FIX bridging timing issues by: // Fix on version 2.11 to avoid bus lock by USB-COM2 bridging in line 221 OK NX5, In initializeRemoteDeviceHwArray() reset index to remotes: remotePt.idx = 0; // Reset to ensure orderly re-sequencing OK ETH3, Add sequence to reset IP parameters by keepeng pressed DWNL durung poweron OK SW-WIN, Add force of communication port: CLOSE if timeout to avoid USB port latch by adding: g_deviceOpenedAndOnLine = 0; force a close if timeout in line 1965 in function a_N2() OK SW-WIN, When in wireless hooking up if RF module is not installed ===================================================================================================== // 2.69.6 1 Jun 2017 ===================================================================================================== OK NX5, Change logic in bInpFilter() from integration to peak detection to overcome limitation of BI-1 an 2 in LC-NX12R when using 24 VAC ===================================================================================================== // 2.69.5 18 May 2017 ===================================================================================================== OK NX5, Add Square root math on special function PLC_BLOCK_ESPECIAL_125 ===================================================================================================== // 2.69.4 4 Apr 2017 ===================================================================================================== OK NX5, Add modbus CODE_WRITE_MULTIPLE_COILS function 15 to write up to 16 coils or RES_BITs simultaneously OK NX5, Add in poweron() initialization for: comm1.slaveOnLineTmr = comm2.slaveOnLineTmr = K_SLAVE_ONLINE_TMR; to make sure they start from a known number OK SW-WIN, Translate to multi-language lots of sections and windows in user interface as QA listing by Li Ren ===================================================================================================== // 2.69.3 13 Mar 2017 ===================================================================================================== OK NX5, Fix bug when sending as a master a CODE_WRITE_SINGLE_COIL ===================================================================================================== // 2.69.2 10 Feb 2017 ===================================================================================================== OK SW-WIN, Add checkbox option to compile without addint PLC instructoons for temporaty labels OK SW-WIN, Correct logic to select current directory in CeZaskAboutCurrentProject:: OK SW-WIN, Add compiler directives to script: COMPILER_SMALL_STACK, COMPILER_SUPRESS_WARNINGS, COMPILER_SUPRESS_JUMP_LABELS Ok SW-WIN, Name of controller will be first label from file OK SW-WIN, Fix bug in HVAC application wizard that used in heating loop cooling valve as output instead of heating valve OK SW-WIN, Fix bug in script compiler that generated an error when adding non NX10 remote points with addresses in the 100-103 range OK SW-WIN, Increase stack size when using larcge stack from 140 to 180, now STACK_RES_BIT_LIMIT_LARGE = 180 // Large non-overlapped stack::LARGE = RES_BIT_61 to RES_BIT_240 OK SW-WIN, Fix bug in compiler that was not autoloading the PLC when it was manually selected to be loaded OK NX5-DN2,For OPC2K modify logic dor LED's and Keyboard to support HW SMD leds and remap to use RES_BIT2-129..160 also Keys from RES_BIT2-161..184 OK NX5, Add XEE_SYS_REMAP_OPC2K_LK to remap RES_BIT2 with OPC2K LED's and keyboards into RES_BIT registers (7 bytes = 56 bits) for use in the PLC ===================================================================================================== // 2.69.1 30 Jan 2017 ===================================================================================================== OK SW-WIN, Save zoom settings to make selected zoom persistent OK SW-WIN, If on main decrease retry comm counters to mark off-line devices faster OK SW-WIN, Add install-shield installer ===================================================================================================== // 2.69 13 Jan 2017 ===================================================================================================== OK SW-WIN, Remove external references to // \telecon\ex-base\*.h files that are now included on the source code directory for building the application OK SW-WIN, Read www/rikmed/com/nx-ver.htm to check for updated software every time the program starts OK SW-WIN, Ask to unlock comm ports if they are locked every time a COMM radio box is selected by adding m_temporaryUnlockPorts to make sure new ports are scanned even while locked OK SW-WIN, Add message for expanded modbus points if configuration is not ok and show max point being polled OK SW-WIN, Increase zoom factor capability of PLC to help Omar´s Zoom problem OK SW-WIN, Add option to invert relays for NX12R and add warning that option is only valid from release 2.69 and up OK SW-WIN, Closed comm port on repeated comm fail OK NX5, BACnet - Change logic on BACnet/MSTP to avoid ping-pong on missing next address when passing a the token is missed OK NX5, Modbus - Fix bug that modbus.parityMode was not being set when master, so it only worled if first read as slave and then set as master OK NX5, Modbus - Change master writes, if point is a coil, then issue a CODE_WRITE_SINGLE_COIL instead of a CODE_WRITE_MULTIPLE_REGISTERS OK NX5, Modbus - Clear remote points status at power on to enable Modbus to poll correctly on startup OK NX5, Add support for X-HVAC controller similar to NX5 and NX10 but with 4 AO´s similar as NX4AO OK NX5, Added XEE_SYS_REMAP_PHY_AO3_AO4 // For X_HVAC and NX4AO be able to use RES_FLT_1..39 (+1) to host AO_3 and AO_4 for when used as bus master can still control their slaves OK NX5, Fix bug where XEE_SYS_LATCH_RLY_INVERT and XEE_SYS_ADC_CERO_OFFSET were overlapping @ address 32197 ===================================================================================================== // 2.68.h 10 Jan 2017 (release candidate 4 for beta testing) ===================================================================================================== OK SW-WIN, Add option for automatically check for updates online on ClientUrlThreadProc_NX_version() OK SW-WIN, Add option for manually check for updates online on CInfoNX5expanded::OnBnClickedCheckForUpdates() OK SW-WIN, Added option to refresh comm ports even while locked with g_temporaryUnlockPorts ===================================================================================================== // 2.68.g 09 Jan 2017 (release candidate 3 for beta testing) ===================================================================================================== OK SW-WIN, Correct issue with creating new and opening exixting files OK SW-WIN, Adding initial support for AHU OK SW-WIN, Fix bug that was not generating error for complex math in compound assignments ===================================================================================================== // 2.68.f 09 Jan 2017 (release candidate 2 for beta testing) ===================================================================================================== OK SW-WIN, Add name corrector class in CwZnameChecker OK SW-WIN, Start adding support for AHU OK SW-WIN, Fix bug not generating IOname.UI[ 1 ].name = "RUN_EXT_ENABLE"; when generating lighting application OK SW-WIN, Add warnings when writing to ADx registers using m_warningEEPROMassignment OK SW-WIN, Add checklist to supress warnings during compile OK SW-WIN, Add active project info on compiler and wizard dialogs ===================================================================================================== // 2.68.e 06 Jan 2017 (release candidate 1 for beta testing) ===================================================================================================== OK SW-WIN, Add script compiker and eZ App wizard OK SW-WIN, Fix bug in comm that ports were being searched in an incorrect order and caused lag OK SW-WIN, Added zoom in PLC fos some screens with 4K bitmaps were being shown smaller than usual, also added ADJUST_ZOOM_OF_WINDOW macro to try to autoscale the best possible OK SW-WIN, Only autosave vais in ADB, ADI, ADF & Limits if flag g_autoSave not set // Save any pending last minute changes by user only if not autosaving ===================================================================================================== // 2.68.d 28 Nov 2016 ===================================================================================================== OK NX5, Fix bug in modbus CODE_WRITE_MULTIPLE_REGISTERS function 16 that was not writing correctly and returned error if number of registers was > 1 OK SW-WIN, Make sure new instructions added on version 2.68 are only available if updated firmware is present in control, otherwise warn user to upgrade the firmware on the controller ===================================================================================================== // 2.68.c 15 Nov 2016 ===================================================================================================== OK NX12R, Add XEE_SYS_LATCH_RLY_INVERT eeprom to invert polarity to invert LATCH type lighting relays logic, factory default = 255 inverted, else 0 = normal ===================================================================================================== // 2.68.b 28 Oct 2016 ===================================================================================================== OK NX5, Fix parity issue with modbus, TXSTA1bits.TX91 and RCSTA1bits.RX91 were not being set properly ===================================================================================================== // 2.68.A 18 Oct 2016 ===================================================================================================== OK ETH3, Implement Modbus/TCP ===================================================================================================== // 2.68.a 7 Oct 2016 ===================================================================================================== OK SW-WIN, Fix output on documentation of PLC in call graph print, showed incorrect for "COMPARE <= " ===================================================================================================== // 2.68 4 Oct 2016 ===================================================================================================== Add support for the following instructions both in firmware and in Windows software: Motor latching start/stop logic. |--[ ]---+----[ ]--+----[\]----( )--| e-stop | start | stop RES | | +----[ ]--+ RES And + Or(Nor) instructions |--[ ]--------[ ]--+-----------( )--| op-1 op-2 | RES | |--[ ]--------[ ]--+ op-3 op-4 Hysteresis comparator OR in range comparator. +--------------------------------+ ResBit = 1 for in range comparator LOW < X < HIGH (LOW <= X <= HIGH) |---[ ]---+ low limit op-1 | ResBit = set to 1 for hysteresis comparator when X > (>=) HIGH threshold low | | reset to 0 only after X crosses < (<=) LOW threshold |---[ ]---+ high limit op-2 +--( )--| high | | RES |---[ ]---+ Process var. op-3 | X term | | Result can be inverted optionally and |---[ ]---+ Flags (invert) (<>or<=>) (Hys) | Operands can optionally be tested for Flags +--------------------------------+ <> or <=> and optionally with hysteresis behaving as a s=Schmitt trigger gate. ===================================================================================================== // 2.67.q 1 Sep 2016 ===================================================================================================== OK ETH3,Fix bug that was sending garbage ovet HTTP, in HTTPSendFile() make fCGIfound to be persistent between calls while serving files, and in CGI files read fro SPI one byte at a time instead of arrays to overcome segmentation issues that break the CGI server ===================================================================================================== // 2.67.p 30 Aug 2016 ===================================================================================================== OK ETH3,Fix bug preventing bootloader and loadable application to be debugged together, configuration initialization values were added to bootloader for MAC/MII interface that was missing ===================================================================================================== // 2.67.o 8 Aug 2016 ===================================================================================================== Ok ETH3,Fix bug to print correctly timestamp on graphs Ok ETH3,Fix bug with BACnet remote points 51 to 255, correct offset in BACNETip.c line 1164 changing offset from -6050 to -6000 ===================================================================================================== // 2.67.N 26 Jul 2016 ===================================================================================================== Ok NX-HALF,Test to use ASCII driver as mirror for Insuite, by disabling #define ECM_SURVEYOR_PLUS Ok NX-SF, Add XEEPROM variable XEE_SYS_ADC_CERO_OFFSET to cero offset the ADC for TC measurements Ok SW-WIN, In Optomux.CPP replace dwBytesRead in ReadFile() instead of dwLocLength to improve speed Ok SW-WIN, In Logic.CPP fix bug when showing relay #6 on the view for lighting groups, operation was OK as well as documentation ===================================================================================================== // 2.67.n 20 Jul 2016 ===================================================================================================== OK NX12R, Adjust low voltage reset values to spare lighting controller from resetting during relay firing ===================================================================================================== // 2.67.m 11 Jul 2016 ===================================================================================================== OK ETH3,Add web pages and support for remote points RMT-51..255 for dual core systems ===================================================================================================== // 2.67.k 04 Jul 2016 ===================================================================================================== OK SW-WIN, Added a call in void CCom1Com2::OnRead() line 1715 to correctly identify dual core when using Ip communications ===================================================================================================== // 2.67.I 29 Jun 2016 ===================================================================================================== OK NX5, Add write support for remote points in modbus 51..255, OK SW-WIN, Add write support for remote points in modbus 51..255 ===================================================================================================== // 2.67.i 28 Jun 2016 ===================================================================================================== OK NX5, Add support for remote points in modbus 51..255, only will be available if COM2 != master && COM2 is set as master of RMT-51..255 in config of COM3 OK SW-WIN, Add support for remote points in modbus 51..255, will be read only points ===================================================================================================== // 2.67.h 25 Jun 2016 ===================================================================================================== OK NX5, Add support in LC-NX12R for LED indicator frond OpenBAS-LC-FPDISP (PBB-1131) in display.c ===================================================================================================== // 2.67.g 15 Jun 2016 ===================================================================================================== OK NX5, Add support for OpenBAS-NWK-NXSMS with UI-1,3 and BO-1 OK NX5, Add support for OpenBAS-HV-NX4AO with AO-1..4 OK NX5, Modify support for OpenBAS-HV-NX12R R01 with alternate LED direct mux drivers now on PGD/PGC, still must make RLY6 non MCP23008 to fix blinking issue OK NX5, Add 10 ms to USB replies same as field buses to avoid Windows communications issues in fast and multiple core machines, add USBwaitms & USBsendNr variables OK SW-WIN, Revert to a_N2() and impl_N2() from 2.67 as some error was introduced that was slowing down traffic ===================================================================================================== // 2.67.f 2 Jun 2016 ===================================================================================================== OK SW-WIN, Add m_commPLCfailCounter to retry on PLC and avoid exiting on first error ===================================================================================================== // 2.67.e 19 May 2016 ===================================================================================================== OK SW-WIN, For factory testing, erase serial number if al set to 255's to avoid the manual burden to tester OK SW-WIN, For factory testing, automatically set to CERO and 10 integration values OK SW-WIN, For factory testing, automatically guide user for program restoring before testing and clearing after tests are done OK SW-WIN, For factory testing, If dual core is installed, avoid asking for password to erase the EEPROM for remote points if factory setting has been entered OK SW-WIN, Correct bug that doesn't write *.NX5 project file when creating a new program ===================================================================================================== // 2.67.d 29 April 2016 ===================================================================================================== OK SW-WIN, For factory testing, make sure when factory test is set, to be able to enter configure dialog, and also view menu. OK SW-WIN, For factory testing, avoid having to input password to clear memory for dual core remote points OK SW-WIN, Improve comm while @ main by limiting R/W to comm only on timer, remove from onPaint and on Check comm Ok SW-WIN, Correct bug on Felix's machine that slowed while on main screen because he is using XP SP1 old version of Windows and delays too long for returning the call when COMM ports are not phisically present, SP3 should correct issue ===================================================================================================== // 2.67.c 24 April 2016 ===================================================================================================== OK SW-WIN, Changes to support factory testing for Mircom ===================================================================================================== // 2.67.b 15 April 2016 ===================================================================================================== OK NX5, Disable line that was setting TRIS_VDC_SENSE as output for test purposes, as doing so made the device randomly consume 1 ma (10x) what it should from the battery if it was inadvertent left to HIGH ===================================================================================================== // 2.67.a 15 April 2016 ===================================================================================================== OK NX5, Fix bug in write to modbus schedules ===================================================================================================== // 2.67 14 April 2016 ===================================================================================================== OK NX5, Add support in useerXEEinit() to automatically set flags XEE_SYS_BOOTL_DETECT_FLAG and XEE_SYS_HW_VERSION depending on standard or extended bootloader installed, NOTE: Support for the ten initial devices built in February 2011 with hardware revision cero ends here on version 2.66.a to be able to auto detect bootloader type automatically OK NX5, Add space in EEPROM for serial number for OpenBAS controllers in XEE_SYS_HW_ OK NX5, Support for OpenBAS-LC-NX12R lighting controller with 12 external type latch relays OK NX5, Support for !MCLR devices with HW reset to allow deep sleep mode OpenBAS-HV-NXHALF & OpenBAS-HV-NXSF by defining MCLR_HARDWARE_RESET_PRESENT, must later enable using XEE_SYS_HW_VERSION_CONFIG_? OK NX5, Disable pullups at power off in MCP23008 to further reduce battery drain OK NX5, Support in modbus for schedules read / write OK NX5, Support in modbus for real time clock read / write OK SW-WIN, Add support to view/edit serial number string for OpenBAS devices OK SW-WIN, Fix bug that loops in graphs if incorrect numbers to save toto file is input (reported by Marcelo Piña) OK SW-WIN, Add support to factory test by Mircom Toronto ===================================================================================================== // 2.66 15 February 2016 ===================================================================================================== OK NX5, Add support for OpenBAS-HV-Learn to fix bug where outputs don't respond correctly as slave even if no DIP-SW is present in HW, now a salve operation is enabled if address == 0 (+DIP-SW) of address is within 100-103 range OK NX5, Add support for > 24 remote addresses in expanded remote points OK NX5, Skip unused remote points by storing efficient last valid remote into rmtGT24.lastXPremotrPt OK SW-WIN, Adjust dialogs to reflect above changes OK SW-WIN, Some language mixup text cleanup in various interface buttons OK SW-WIN, In LCD remote labels implement auto increment text OK SW-WIN, Disable the bootloader set button in reset dialog if extended bootloader is detected (Hw2 programmed into XEE_SYS_HW_VERSION = XEE_SYS_HW_VERSION_R_2) ===================================================================================================== // 2.65.i 19 January 2016 ===================================================================================================== OK NX5, Fix bug with duplicate label PA_ESPECIAL when activating CLUB_DE_INDUSTRIALES ===================================================================================================== // 2.65.H 16 January 2016 ===================================================================================================== OK NX5, Adjust times of Clk.modbusMasterTimeoutInvalidPt and Clk.opto22MasterTimeoutInvalidPt to avoid resource depletion OK SW-WIN, Fix bug that blocks program when entering COMM configuration (fixed in 2.65.g but deployed on 2.65.h) ===================================================================================================== // 2.65.h 14 January 2016 ===================================================================================================== OK NX5 Save status of RCON to LOG for power on analysys OK NX5 Adjust times of Clk.modbusMasterTimeoutInvalidPt and Clk.opto22MasterTimeoutInvalidPt to avoid resource depletion OK NX5 In checkRTCvalidity() store number of retry when clock is read incorrectly ===================================================================================================== // 2.65.g 11 January 2016 ===================================================================================================== OK NX5 In initI2C() change ACK for NACK OK NX5 In initI2C() go again to 400 CLK cycles to get a good reboot when coming out of fully discharged Power OFF ===================================================================================================== // 2.65.f 5 January 2016 ===================================================================================================== OK NX5, In initI2C() change implementation for faster init and implement general call (ADDRESS CERO) for corect bus re-synch OK NX5-DN1,Change I2C timeout in UpdateLCD_KBD() for Dual Core from 300 to 150 ms OK NX5-DN1,Add i2cSeqCount for i2c debug to be read in NX5_OBJ_DAYLIGHT_SAVING_TIME for debug OK SW-WIN, Fix bug that showed CERO in result of math instructions that use RES_FLT >= 41 of dual core, result was ok but not viewed correctly in the WIN software OK SW-WIN, Fix bug that multiple language signs appear when block saving and resroring, a break; was added after each case: ===================================================================================================== // 2.65.e 23 December 2015 ===================================================================================================== OK NX5, In checkRTCvalidity() don´t store a battery fault if I2C collission detected, the fault is due to the collission ===================================================================================================== // 2.65.d 9 December 2015 ===================================================================================================== OK NX5, In BACnet/MSTP answer to the WHO-Is when token is received even is device is in PFM sequence to get crispy device discovery by issuing I-AM OK NX5-DN1,Add NAK at end of I2C read to avoid I2C bus collission OK SW-WIN, Implement in multilanguage screen to save and restore whole project ===================================================================================================== // 2.65.c 22 November 2015 ===================================================================================================== OK NX5, Change PFM logic in BACnet.C, don´t assume main master is at address cero, do a rollover to find an alternate until reaching back THIS_STATION in which case no successor was ever found by PFM logic. OK NX5, Add for BACnet/MSTP: XEE_SYS_churnActiveMSTP 32170 active if == 1 else inactive (255 == Inactive by default), if enabled will send an I-Am message periodically as broadcast OK NX5, Add for BACnet/MSTP: XEE_SYS_MASTER_NWK_START 32171 used to detect network activity and re-start broken networks if enabled == 1 OK SW-WIN, Provide support for setting above parameters for COM1 OK SW-WIN, Add button to reset comm log files ===================================================================================================== // 2.65.b 14 November 2015 ===================================================================================================== OK SW-WIN, Fix bug that was crashing the program (MFC stopped working) when the log file CommOK.LOG was being written in a_N2(), by calling the: time() + localtime() + ftime() sequence OK SW-WIN, Fix bug that was hanging program while entering CSms::OnSave() OK SW-WIN, Fix bug that was hanging program while entering CAlarmas::OnGuardar() [also CAlarmas::OnRestaurarDePc() make warnMessage static to fix bug] OK SW-WIN, Fix bug that was hanging program while saving configuration manually in CLCDpersonalizado::OnSave() OK SW-WIN, Fix bug that was hanging program while saving configuration manually in CCalibAI::OnRespaldarPc() [make warnMessage static to fix bug] ===================================================================================================== // 2.65.a 29 October 2015 ===================================================================================================== OK NX5, In BACnet/MSTP implement device property PropIDdev_deviceAddressBinding OK ETH3, Support for BACnet/IP OK ETH3, Support for USB host disk driver (MDD) OK SW-WIN, Correct USB/IP change bug, by setting g_IP_OPTO22_bridgingEnable = m_IP_OPTO22_bridgingEnable; inside void CExWinDlg::OnCheckIpBridge() call OK SW-WIN, Correct corect button labels in CNX5::OnInitDialog() ===================================================================================================== // 2.65 9 September 2015 ===================================================================================================== OK NX5, Multilanguage support OK NX5, Implement bootloader with extended instructions, add XEE_SYS_HW_VERSION_R_2 for OpenBAS devices using it OK NX5, Initialize timers to CERO @ poweron if XEE_SYS_RAM_CLEAR_RES_FLT option is enabled OK NX5, Implement getTimer() and setTimer() for safe read/write of timers in especial.c ===================================================================================================== // 2.64.h 21 September 2015 ===================================================================================================== OK NX5, Allow schedule set up 201..250 via LCD ===================================================================================================== // 2.64.g 17 September 2015 ===================================================================================================== OK NX5, Search all while() project wide that are involved in i2c and add tiemout 100-100 ms to avoid lock up ===================================================================================================== // 2.64.f 9 September 2015 ===================================================================================================== OK SW-WIN, Correct Optomux.c function impl_N2() to be able to get maximum throughput in Windows 10 ===================================================================================================== // 2.64.e+E 30 August 2015 ===================================================================================================== OK NX5, Remove -9 offset in Ni temperature sensors in analog.c OK NX5-DN2,Add ACK at end of INT_I2C routine in main.c to avoid lockout of i2c bus in runaway conditions OK NX5-DN2,Add clearFromDislay in display.c to reset i2c logic con collission OK NX5-DN2,Change NX5-DN2 from 5000 to 8000 to avoid i2c collission OK SW-WIN, Remove call to OnPtRead(); at end of CGraficas::OnWrite() AND CGraficas::OnBorrar() to avoid recursion OK SW-WIN, Implement recursion in CGraficas::OnTimer() using "grafBusy" variable OK SW-WIN, Fix bug showing alarmed clock in CExWinDlg::OnPaint() by re-reading time into gmtX time structure ===================================================================================================== // 2.64.d 27 August 2015 ===================================================================================================== OK NX5, Avoid multiple i2c reinitialization on bus collission, limit on 1 per second using: i2c.initBlockoutOnColission OK SW-WIN, Start multilanguage support in commissioning tool ===================================================================================================== // 2.64.c 25 August 2015 ===================================================================================================== OK NX5, Correct graphs for temperature Ni sensors, eliminate +9 degrees offset ===================================================================================================== // 2.64.a y b 13 Agosto 2015 ===================================================================================================== OK SW-WIN, Ajuste en driver COM para Windows 10 ===================================================================================================== // 2.64 20 Mayo 2015 ===================================================================================================== OK NX5-DN1,En IdleI2C() si hay delays con doble núcleo aumentar tiempo de espera para asegurar sincronización del i2c con: i2c.disconnectTmr = K_I2C_DISC_TMR; OK NX5-DN1,En UpdateLCD_KBD() dar más tiempo de timeout en el i2c para esperar sincronización con segundo núcelo en caso de desincronización: Clk.sec50ms = 6; // Wait in i2c fail = 300 ms OK NX5, Implementar bloques especiales paea usar por Fernando en programa de lína, tipos 100 al 126 OK SW-WIN, Implementar bloques especiales paea usar por Fernando en programa de lína, tipos 100 al 126 OK SW-WIN, En generar documentación del PLC usar if( !UpdateData( TRUE ) ) antes de UpdateData( FALSE ) para asegurar que las opciones de tipo de documentación al salvar se actualizen correctamente ===================================================================================================== // 2.63.c 18 Mayo 2015 ===================================================================================================== OK NX5-DN1,Limpiar I2C en caso de colisón llamando i2cinit() modificada OK ETH3, En archivo NX5_SPI.c en función NX5_stuff() deshabilitar código que checa variable coolDown que al compilar en Win8/64 bits el servidor regresa incorrectamente fechas, etiquetas y leds de counicación no muestran actualización entre NET y NX5 ===================================================================================================== // 2.63.b 26 Abril 2015 ===================================================================================================== OK NX5, Cambio en VENDOR_ID asignada por ASHRAE el 21 de Abril del 2015 = 828 ===================================================================================================== // 2.63.a 18 Abril 2015 ===================================================================================================== OK NX5, Cambios en BACnet por Steve Karg al recibir PropIDdev_objectList sin índice generateAbort( ABORT_SEGMENTATION_NOT_SUPPORTED ); para que Cimetrix lea correctamente Hubo que generar variable adicional struct APDU_BUFF_XT apduX; para crear un APDU extendido virtual para recibir mensajes > 50 bytes y poder procesar dev_objectList y readpropertymultiple para poder generar generateAbort( ABORT_SEGMENTATION_NOT_SUPPORTED ) y forzar leer usando readproperty estándard. ===================================================================================================== // 2.63 22 Marzo 2015 ===================================================================================================== OK NX5, Inicializar variables en XEEPROM que no se estaban inicializando al borrar eeprom de nuevo ó a solicitud del usuario OK SW-WIN, Boton para emular pantalla del LCD desde opción de inicializar valores de fábrica ===================================================================================================== // 2.62.e 14 Marzo 2015 ===================================================================================================== OK NX5-DN1,En as_updateCurrState checar par NX5-DN que se guarde la etapa correctamente dependiendo del PLC que está corriendo. ===================================================================================================== // 2.62.d 13 Marzo 2015 ===================================================================================================== OK NX5, En módulo de UMAS no recargar el timer de minimo OFF si la etapa está deshabilitada, dejarlo correr, solicitado por Fernando OK NX5, En módulo de UMAS inicializar timer OFF e interetapas a 60 segundos en falla de energía OK SW-WIN, Corregir bug de visualización al usar RES_BITS->=8 como salida en el modulo de alternado y simultaneo ===================================================================================================== // 2.62.b,c 12 Marzo 2015 ===================================================================================================== OK NX5, Con Omar build especial, quitar limitante de operar los relays de HW cada 200 ms. Añadir XEE_SYS_NO_WAIT_BOs para hacerlo modificable por usuario OK NX5, Resetear numero de etapas simultaneadas que se almacenan en EEPROM para que en caso de falla de energía el alternado se resetee correctamente OK SW-WIN, Evitar generar documentacion durante modulo de alternado OK SW-WIN, Corregir bug de bits invertidos al visualizar en modulo de alternado y simultaneo para salidas del tipo RES_BIT ===================================================================================================== // 2.62.b 27 Marzo 2015 ===================================================================================================== OK SW-WIN, Corregir bug en modulo de alternado y simultaneo para visualizar correctamente entradas de retroalimentación tipo RES_BIT y que no marque N10 en LeerSAM() ===================================================================================================== // 2.62.a 26 Febrero 2015 ===================================================================================================== OK NX5, Deshabilitar linea 184 en modbus.c: modbusMaster.ptToPoll++; que hace que se brinque el siguiente punto a pollear en caso de que el punto anterior esté deshabilitado OK NX5, Añadir en XEEPROM XEE_SYS_commStatErase para forzar borrar estadísticas COMM periodicamente OK NX5, Borrar: Clk.zombieCount al llamar commStatErase( 1 ) OK NX5-DN2,Opcion de guardar estado entradas y salidas binarias y los encabezados en archivos CSV en doble núcleo añadiendo ...store_BIN_IO y ...store_HEADERS OK SW-WIN, Opción para habilitar forzar borrar estadísticas COMM periodicamente OK SW-WIN, Opcion de guardar estado entradas y salidas binarias y los encabezados en archivos CSV en doble núcleo ===================================================================================================== // 2.62 24 Febrero 2015 ===================================================================================================== OK NX5, Corregir bug para resetear logica de puntos remotos cuando se recibe N00 en Batamote ===================================================================================================== // 2.61.a 13 Febrero 2015 ===================================================================================================== OK NX5, Corregir bug que bloquea el bootloader al cargar el NX5-DN, y hacer más eficiente la secuencia de power down en caso de falla de energía ===================================================================================================== // 2.61 12 Febrero 2015 ===================================================================================================== OK NX5, Usar tiempo de integración en salidas digitales opcional a min/on off ó de integración. OK NX5, Usar el tiempo de integración de BI's locales 1..8 también para AI's locales 1..8 OK NX5, Poder usar en equipos DN ó NX5 estándar con NVRAM COM1 como maestro modbus y COM2 como maestro opto22 simultáneamente OK NX5, Rehabilitar modificar horarios desde LCD que había sido deshabilitado por falta de espacio previamente OK NX5-DN1,Compilar con instrucciones extendidas después de haber quitado bug de master modbus en main con timeout que creaba zombies OK SW-WIN, Ajuste de pantalla de integración de EB+EA/SB en NX5 info ===================================================================================================== // 2.60.e 3 Febrero 2015 ===================================================================================================== OK NX5, Corregir bug que se brinca un punto con puntos inalámbricos ===================================================================================================== // 2.60.a+b+c+d 28 Enero 2015 ===================================================================================================== OK NX5, Modificar valores de reset de indice de puntos remotos y cambiar chequeo de cad 1 seg a cada 200 ms (Batamote) OK NX5, Añadir tiempo de integración a entradas locales digitales OK NX5, Añadir registros de tiempo minimo ON/OFF en salidas binarias locales OK NX5, Añadir messagesPolled para resetear logica de remotos de vez en cuando OK NX5, Verificar operación de PB1 override, y por por EB-1,2 OK NX5-DN1,Bug en contador de horas PLC doble núcleo OK NX5-DN1,Poner el bloqueo del PLC en excepción de i2c opcional OK NX5-DN1,Escribir puntos remotos 1..50 a N2 para su almacenamiento OK NX5-DN2,Opcion para seleccionar que almacenar a USB OK SW-WIN, Pantalla en INFO para todos los ajustes descritos arriba ===================================================================================================== // 2.60 24 Enero 2015 ===================================================================================================== OK NX5, Añadir la posibilidad de bloquear los forzamientos (override) via comunicaciones en las salidas locales SB-1..8 usando XEE_SYS_BO_COM_OVR_LOCK OK NX5-DN1,Bloquear proceso de PLCs y 2 en N1 cuando la comunicación internúcleos está en exepción para evitar glitches en función de asignar salidas, añadiendo variables: commDN.exception... OK SW-WIN, Corregir la documentación, el mes lo daba en base al índice del día OK SW-WIN, Corregir la fecha al documentar el PLC el año se documentaba +100 años ===================================================================================================== // 2.59.a 14 Enero 2015 ===================================================================================================== OK NX5-DN1,Compilar sin instrucciones extendidas para evitar reset espurio, probablemente debido al stack reducido de 120->96 del modo extendido OK NX5, Añadir variable remotePt2.remoteStallTmr para que junto con remotePt2.remoteDeadTmr y bridgeStats.masterScanTimeCurr eviten polleo congelado ===================================================================================================== // 2.59 5 Enero 2015 ===================================================================================================== OK NX5, Corregir bug al escribir puntos remotos XP desde lógica del PLC que escribe RES_FLT's al comandar RMT's OK NX5, Corregir bug al esperar recibir ACK de esclavo, en remotePoint() hay que procesar primero si hay mensaje antes de probar timeout para evitar perder el procesamiento de mensajes recibidos OK NX5, Corregir bug en las estadísticas que no cuenta cuando hay comandos de WRITE OK NX5, Corregir bug en las estadísticas que marca error con mensajes BBT OK NX5-DN2,No escribir gráficas al USB si la fecha es incorrecta ya que creará directorios con fechas inválidas OK SW-WIN, En la función CCommSatusExpanded::OnInitDialog() inicializar variable m_waitAck = 0; ===================================================================================================== // 2.58.d 30 Diciembre 2014 ===================================================================================================== OK NX5, Ajustes en comm.h para evitar offline de puntos inalámbricos en Santander Patio al leer puntos XP OK NX5, Cambiar prioridad en writes de remotos 1..50 para Santander Patio de RMT_CMD_WR a RMT_CMD_OVRD ===================================================================================================== // 2.58.c 29 Diciembre 2014 ===================================================================================================== OK NX5, Aumentar los puntos con alta prioridad de 5 a 10 y el timeout de 5 a 10 segunodos OK SW-WIN, Aumentar los puntos con alta prioridad de 5 a 10 y el timeout de 5 a 10 segunodos ===================================================================================================== // 2.58.b 26 Diciembre 2014 ===================================================================================================== OK NX5, Corregir bug que en doble núcleo resetea loop de maestro COM2, no estaba cargando remotePt2.remoteDeadTmr cada transmisión OK NX5, Corregir bug para marcar el COS para puntos remotos RES_FLT XP en Metasys OK NX5-DN2,Añadir flag: logic.dualCoreError para verificar en validateTerm() que no haya habido error al leer doble núcleo N2 OK SW-WIN, Forzar leer archivo en getLable() al leer etiquetas de puntos temotos del doble núcleo para generar corretamente archivo de documentación. OK SW-WIN, Indicar en lógica los operandos con falla de comunicación en amarillo para hacerlos visibles OK SW-WIN, Al cargar librería, seleccionar cargar en bloque actual ó en donde viene almacenado en librería OK SW-WIN, Corregir bug que no imprimía correctamente combres de puntos remotos del doble núcleo, forzando a leer las etiquetas del archivo *.ini antes de documentar ===================================================================================================== // 2.58.a 22 Diciembre 2014 ===================================================================================================== OK NX5, Al encontrar el primer punto remoto eXPandido inválido (remotePt.region == 0 && remotePt.currAddress) reiniciar índice OK NX5, Incrementar estadísticas al recibir la contestación de puntos remotos escritos también OK NX5, Resetear módulo GSM si se pierde comunicación con él, y agregar estadísticas de COM2 con su comunicación OK NX5, Algunos ajustes al COS de Metasys para remotos del doble nucleo OK SW-WIN, Corregir bug que no permite usar puntos remotos del doble núcleo en control proporcional OK SW-WIN, Corregir bug para autoincrementar texto en etiquetas OK SW-WIN, Corregir bug para autoincrementar texto en etiquetas de remotos del doble núcleo y remotos xp ===================================================================================================== // 2.58 20 Diciembre 2014 ===================================================================================================== OK NX5, Añadir COS a entradas analógicas XP AI-51..255 de RES_FLT-51..255 para compatibilidad con Metasys y que no muestre offline las EA >= 51 OK NX5, Añadir tiempo a puntos modbus no válidos para evitar colisiones en bus y/o saturación de comunicaciones OK NX5, Verificar posible inconsistencias en RES_FLT-11 RES_BIT-55 reportada por Fernando/Oscar, se verificó operación y no se encontró que los registros sean inconsistentes OK NX5, Añadir tipo NX5 en modbus para leer escribir todo el HW de esclavos en un solo mensaje usando mensaje de read/write holding registers multiple para mantener compatibilidad 100% con ptotocolo mdbus RTU OK NX5, Asegurarse que en Optomux un comando de WR a remoto recibe 100% la respuesta como "A\r" para marcar como enviado, de lo contrario reintentar el comando hasta obtener respuesta positiva "A\r" OK NX5-DN2,Compilar con el IDE v2.26 y el XC32 v 1.34 OK SW-WIN, Añadir soporte para salvar / restaurar las pantallas personalizadas OK SW-WIN, Al seleccionar proyectos, no cambiar lista actual si se selecciona cancelar OK SW-WIN, Mostrar avisos de recordatorio para salvar / restaurar manualmente los puntos adicionales del NX5-DN y cuando hay NVRAM-32K ===================================================================================================== // 2.57.c 17 Diciembre 2014 ===================================================================================================== OK SW-WIN, Visualizar correctemente RMT, se sale de linea al escribir a puntos modbus y optomux si los puntos son mayores a 30 OK SW-WIN, Corregir bug al escribir etiquetas de alarmas si al final borramos los espacios ocupados ===================================================================================================== // 2.57.b 12 Diciembre 2014 ===================================================================================================== OK SW-WIN, Opción de reindexar opcional, para encontrar automáticamente FIN de programa al realizar búsquedas en PLC OK SW-WIN, Leer bloque actual después de dalir de: copiar / mover ó borrar en bloque OK SW-WIN, Auto incrementar las etiquetas al copiar++ en puntos remotos DN y XP OK SW-WIN, Auto incrementar resultado y/o operandos seleccionados al usar función PEGAR++ en PLC OK SW-WIN, Viualizar correctamente RES_BIT después de haber visto un bloque de SET/RESET bit que muestra: bit[&] ===================================================================================================== // 2.57.a 11 Diciembre 2014 ===================================================================================================== OK SW-WIN, Imprimir correctamente etiquetas de puntos remotos expandidos RMT-51..255 y RES_FLT-(41)51..255 en doble núcleo y XP ===================================================================================================== // 2.57 9 Diciembre 2014 ===================================================================================================== OK NX5, Corregir bug que marca como OFF-LINE las entradas analógicas 51-255 (RES_FLT-51.255 con NVRAM) OK NX5, En modbus master marcar como offline el punto si hay timeout OK NX5, Implementar variable XEE_SYS_BUG_RMT_1_50_IDX para sumarle UNO al indice al escribir remotos para compensar por equiposcon BUG en Patio OK NX5-DN1,Procesar directamenteen el segundo núcleo BBT y escribe a RES_FLT-31..40 los registros, así como lectura de RES_FLT-41..255 y RMT-51..255 OK NX5-DN1,Corregir bug que al visualizar PLC de doble núcleo en SW-WIN muestra mal los terminos válidos añadiendo la variable g_plcNr al leer OBJ_COMMAND_LOGIC OK NX5-DN1,Posibilitar poner RES_FLT-51..255 como resultado de operaciónes matemáticas en doble núcleo OK NX5-DN1,Disminuir tiiempo para procesar mensaje de 20 a 5 ms para que eficientar tiempos de respuesta y procesdar correctamente los BBT OK SW-WIN, En puntos remotos modbus marcar correctamente cuando se escribe un punto y que no marque error cuando no hay error por que se está escribiendo el punto OK SW-WIN, Detectar version y ajustar a base CERO / UNO al comandar puntos remotos manualmente OK SW-WIN, Opción para comandar puntos en modbus manualmente OK SW-WIN, Posibilitar poner RES_FLT-51..255 como resultado de operaciónes matemáticas en doble núcleo OK SW-WIN, Indicador en estado de versión de HW y SW y marcar si no son iguales y cual es menor en amarillo ===================================================================================================== // 2.56.B 5 Diciembre 2014 ===================================================================================================== OK NX5, Corregir bug introducido al añadir NVRAM que elimina los overrides a puntos remotos por error OK NX5, Aumentar retry en remotos, de 3 a 4 para pasar a offline OK NX5, Añadir variable XEE_SYS_WIRELESS_REMOTE_TO en eeprom para multiplicar x2 delay en remotos OK NX5, Corregir bug que al leer remotos de NVRAM creaba mal indice > 128 en set/getRemotePt_currValue() OK NX5, Corregir bug detectado en Patio Santa Fe, en el que los puntos remotos RMT-1..50 tienen un desfasamiento de -1 al enviar override OK SW-WIN, Corregir bug detectado en Patio Santa Fe, en el que los puntos remotos RMT-1..50 tienen un desfasamiento de -1 al enviar override OK SW-WIN, Cambiar campo para comandar valor en remotos XP de INT a float para poder enviar decimales a los remotos >= RMT-51 ===================================================================================================== // 2.56.b 1 Diciembre 2014 ===================================================================================================== OK NX5, Corregir bug en USER.C al cambiar bridgeStats.masterScanTimeCurr de 12 seg a 100 seg, ya que incrementamos cada 1/5 seg. ===================================================================================================== // 2.56.a 20 Noviembre 2014 ===================================================================================================== OK NX5, Corregir bug al que sobreescribe RES_FLT-51..255 en asignar salidas cuando el operando de destino es RMT-51.255, usar setRemotePtXP_currValue() en lugar de setRemotePt_currValue() ===================================================================================================== // 2.56 15 Noviembre 2014 ===================================================================================================== OK NX5, Corregir bug al escribir a xeeproms expandidos en la función XEEWritePgChk(), afecta PLC2 y gráficas expandidas OK NX5-DN1,Corregir bug que escribe en direcciones (ID de Xeeprom) incorrectas los registros de los PLC-2 y PLC-3 OK SW-WIN, Opción para habilitar u deshabilitar PLC2 del doble núcleo ===================================================================================================== // 2.55.d 13 Noviembre 2014 ===================================================================================================== OK NX5, Habilitar el uso de puntos remotos expandidos en el PLC OK SW-WIN, Habilitar el uso de puntos remotos expandidos en el PLC ===================================================================================================== // 2.55.c 9 Noviembre 2014 ===================================================================================================== OK NX5, Soporte para NVRAM-32K en bus expansión del bus i2c, para poder tener puntos remotos expandidos 50+205+205 = (458) OK SW-WIN, En programador XEEPROM identificar correctamente la memoria NVXEEPROM de 32K ===================================================================================================== // 2.55.b 5 Noviembre 2014 ===================================================================================================== OK NX5-DN1,Corregir bug que bloquea COM2 como maestro aleatoriamente y se queda remotePt.stateMachine = REMpT_StMACH_TX y el indice IDX en cero OK SW-WIN, En ver estadísticas comunicaciones, los valores de COM2 y COM1 maestro que dan valores negativos hacer un cast a (int) para que se vean correctamente ===================================================================================================== // 2.55.a 5 Noviembre 2014 ===================================================================================================== OK SW-WIN, En gráficas solo checar si están dados de alta parámetros IP en NX5 básico ó doble núcleo para evitar falla de comm. ===================================================================================================== // 2.55 31 Octubre 2014 ===================================================================================================== OK NX5, Implementar e-mails, y deshabilitar las gráficas correspondientes OK NX5, Implementar ajustes de parámetros IP, SMTP y e-mails OK NX5, leer estadísticas de puertos COMM y bridging usando función OBJ_COMMAND_COM_STAT OK NX5, Evitar bloqueo por i2c con Dual core sobrecargado, reseteando i2c en: XEESetAddr() llamando: initI2C( 29 ); OK NX5-DN2,Evitar bloqueo por i2c con Dual core sobrecargado reseteando i2c cada 2 segundos en caso de falla comm i2c OK SW-WIN, Implementar e-mails, y deshabilitar las gráficas correspondientes OK SW-WIN, En calibrar, escribir valor de calibración automáticamente al oprimir el botón de "Guardar" OK SW-WIN, En eeprom añadir botpnes de INC / DEC para moverse hacia arriba y abajo automáticamente OK SW-WIN, Al crear documentación del PLC documentar que versión tiene el NX5 cargada y no solo la versión del SW-WIN como está actualmente OK SW-WIN, Al crear documentación del PLC documentar correctamente directorios largos OK SW-WIN, Enviar aviso so el largo del PATH excede 230 caracteres OK SW-WIN, Añadir variables g_version_MAJOR y g_version_MINOR para añadir al documentar el PLC OK SW-WIN, Cambiar límites a ADF´s hasta +/- 99,999,999 OK SW-WIN, Verificar en gráficas que la versión sea >= 2.55 antes de llamar la función de leer datos de IP (120) OK SW-WIN, Permitir cancelar actualización de etiquetas y evitar autoactualización desde pánel principal OK SW-WIN, Al copiar/pegar bloque, ller bloque después de pegarlo para visualizar correctemente de manera automática cuando está en modo off-line ++ ETH3, Implementar ajustes de parámetros IP, SMTP y e-mails (pendiente terminar implementación en NX5-NET) ===================================================================================================== // 2.54 1 Septiembre 2014 ===================================================================================================== OK NX5, Añadir funcionalidad a totalizador para totalizar energía OK SW-WIN, Pantallas implementar módulo para totalizar energía ===================================================================================================== // 2.53 28 Agosto 2014 ===================================================================================================== OK NX5, Habilitar instrucciones extendidas para evitar que USB comm se salga de línea en: Project/BuilOptions/Project/MPASM C18 suite/Extended mode OK NX5, Habilitar instrucciones extendidas para evitar que USB comm se salga de línea en: main.c: #pragma config XINST = ON //Extended instruction set enabled OK NX5, Inicializar la variable: loop.msMax = 0; al final de la función powerOnFinishInitialize() OK NX5, Deshabilitar comunicaciones hasta después de powerOn() y powerOnFinishInitialize() OK NX5, Reducir log a 200 eventos para poder tener espacio para IP y e-mail config OK NX5, Coregir bug del ECM enviando el mensaje del display ECM to: del buffer RX al del TX para evitar sobreescribir el buffer de recepción. OK NX5, El valor de 255 en XEE_SYS_L1_LCD_STANDBY ahora es de 255 segundos (x default) en lugar de regresarse al mínimo de 15 segundos OK NX5, Poder limitar al escribir valores ADF/ADI/ADB/RES_FLT y RMT OK SW-WIN, Opción para pasar NX5 a modo bootloader en pantalla de reset OK SW-WIN, Añadir en optomux variable: iOpenedThePort para abrir el puerto si se llamó a función de COMM sin haber abierto el puerto. OK SW-WIN, Pantalla para limitar al escribir valores ADF/ADI/ADB/RES_FLT y RMT OK SW-WIN, Pantallas para implementar ajustes de parámetros IP, SMTP y e-mails (falta implementar el NX5) ===================================================================================================== // 2.52 20 Agosto 2014 ===================================================================================================== OK NX5, Versiones b y c especiales para: FERNANDO_RANCHO_LUCERO ===================================================================================================== // 2.52 13 Agosto 2014 ===================================================================================================== OK NX5-DN1,Validar que los mensajes por modbus al recibir valores para escribir sean 100% recibidos antes de cambiar valores OK NX5-DN2,Validar que los mensajes por modbus al recibir valores para escribir sean 100% recibidos antes de cambiar valores OK NX5-DN2,Permitir escribir valores a puntos remotos desde RMT-1..255 (estaba limitado a sólo 50) OK NX5-DN2,Corregir bug para escribir BO's desde modbus usando COM3 ===================================================================================================== // 2.51.a 28 Julio 2014 ===================================================================================================== OK NX5, Regresar en debug de USB el string RX que estaba previamente deshabilitado al cargar BACnet x que ya hay espacio OK ETH3, Bajarle el SPI de 2.5 a1.525 MHz ya que cuando todos los buses están al máximo el puerto USB se desincroniza y se desconecta de la PC, NX5_SPI_SPEED_K de (15ul) a (31ul) ===================================================================================================== // 2.51 24 Julio 2014 ===================================================================================================== OK NX5, Soporte para el nuevo miembro de la familia el NX5-HALF OK NX5, Hacer un solo build que incluye BACnet, modbus y ECM al utilizar MPLAB-C18 con licencia y optimizaciones OK NX5, Poner el display en standbay despues de un tiempo programable para dar mayor velocidad a COMM por USB OK NX5, Corregir bug en USB que lo bloqueaba, crear variable i2c.createDisplay y mover el segmento del display a main() por problable saturación del stack al usar sprintf() en display.c OK NX5, Rehabilitar todos las pantallas en LCD que estaban deshabilitados por falta de espacio OK NX5, Permitir que en gráficas con dual core se almacenen variables del doble núcleo RMT-51..255 y RES_FLT-41..255 OK NX5, Permitir ver y controlar el display desde el sw NX5-WIN via remota, excepro en DualCore y NX5-USB-CURR OK NX5-DN1,Opción para deshabilitar el PLC2 que corre en el primer núcleo OK NX5-DN2,Opción para ver estatus de polleo en COM3 OK SW-WIN, Permitir ver y controlar el display desde el sw NX5-WIN via remota ===================================================================================================== // 2.50.d 2 Julio 2014 ===================================================================================================== OK SW-WIN, Búsqueda de etiqueta automática ===================================================================================================== // 2.50.c 1 Julio 2014 ===================================================================================================== OK NX5, Dejar por default LCD ON al restablecer a valores de fábrica. OK SW-WIN, Opción para ver etiquetas en Excel(*.CSV) ó Explorador(HTML) ===================================================================================================== // 2.50.b 12 Junio 2014 ===================================================================================================== OK NX5, Rehabilitar escribir a RMT desde modbus OK SW-WIN, Botón para valores por default en COM3 para el doble núcleo ===================================================================================================== // 2.50.a 6 Junio 2014 ===================================================================================================== OK SW-WIN, Se activa por default la opción de ?Guardar auto? OK SW-WIN, Se mejoró la lógica de auto incrementar, de 9 pasa a 10, de 19 a 20 y así sucesivamente hasta 99 a 100 OK SW-WIN, Para poder visualizar la primera ó segunda asignación en línea, se añadió el botón de "Intercambiar" (Swap). OK SW-WIN, Corregir bug que al generar documentación del PLC imprime dos veces en asignar salida aún cuando hay una sola asignacion OK SW-WIN, Mensaje que no permite habilitar doble asignación pare versiones < 2.50 OK SW-WIN, Añadir en bloque de UMA al generar documentación, lineas faltantes en el tercer timer "rollo cosmético solamente". ===================================================================================================== // 2.50 4 Junio 2014 ===================================================================================================== OK NX5, Implementar función de asignar salida dual. OK SW-WIN, Implementar función de asignar salida dual. OK SW-WIN, Avisar al mover bloques si hay llamadas a subrutinas, para que el usuario las modifique manualmente. ===================================================================================================== // 2.49.b 3 Junio 2014 ===================================================================================================== OK NX5, Permitir que el operando 3 de móduo de control UMA's sea RES_FLT OK SW-WIN, Permitir que el operando 3 de móduo de control UMA's sea RES_FLT ===================================================================================================== // 2.49.a 30 Mayo 2014 ===================================================================================================== OK NX5, En modbus, limitar AI's a 40, estaban hata 100 al leer por lo que arriba de AI-40 leía basura OK SW-WIN, En las pantallas de remotos marcar los puntos que no están dados de alta con "---" para hacer más claro que no están siendo poleados OK NX5-DN2,Corregir bug en protocolo ASCII para mostrar correctamente pantallas en Hyperterminal OK NX5-DN2,Implementar baud rate variable OK NX5-DN2,Implementar paridad variable usando hardware de PIC32 OK NX5-DN2,Implementar modbus RTU esclavo en COM3 OK NX5-DN2,Implementar pantallas para leer AI, AO y modificar ADB, ADI, ADF OK NX5-DN2,Mostrar los textos de las etiquetas en ADB, ADI, ADF ===================================================================================================== // 2.49 23 Mayo 2014 ===================================================================================================== OK NX5, Cambiar optimización en PROJECT/BUILD OPTIONS/PROJECT/MPLAB_C18/category:OPTIMIZATION: de Debug a Enable All para recuperar 5872 bytes. en MEMORY_MODEL: el stack de sinle-bank a multi-bank OK NX5, Eficientar leer XEEPROM de memorias base y expandidas leyendo en bloque en lugar de uno x uno los 16 bytes en function_READ_OBJECT() case OBJ_COMMAND_XEEPROM /.._XP OK NX5, Leer registros de resultado bit del doble núcleo con dualCore_getResultBit2(() OK NX5, Eficientar validateTerm() cambiando return 0 por break y el return 0 se procesa al final de la función, y cambiando de logicRec.nr[ idx ] por localIndex para ahorrar 318 bytes OK NX5, Eficientar logicProcess() cambiando a operador ternario en comparadores, y en validateTerm()9 usar getResultFloat() y getRemotePt_currValue() y eliminar funcion duplicada getResFloat() para ahorrar 174 bytes OK NX5, Implementar RES_BIT2 del segundo núcleo, para poder leer escribir desde comm y desde el PLC OK NX5, Implementar XEE_SYS_COMM_3_2_MASTER_RMT para seleccionar si COM2 ó COM3 es el dueño de los puntos remotos RMT-51.255 como maestro, los RES_FLT-41..255 siempre serán del COM3 OK NX5, Cambiar tiempo para tiemeout en esclavos a10 segundos XEE_SYS_RMT_DefST_TMR OK NX5, Opcion para visualizar etiquetas en LCD para ADB, ADI, ADF OK NX5, Opcion der pantalla personalizada por usuario en LCD pantalla 200 OK SW-WIN, Opcion der pantalla personalizada por usuario en LCD pantalla 200 OK SW-WIN, Corregir bug reportado por Fernando: al programar un horario de tipo ajustar valor comandar adb el Nr. Mayor a 60 marca error de fuera de rango cuando el rango es de 1 a 100 OK SW-WIN, Implementar leer / modificar RES_BIT2 del segundo núcleo OK SW-WIN, Eficientar uso de etiquetas, solo generando buffer de etiquetas si hubieron cambios en el NX5 OK SW-WIN, Importar, exportar en el PLC OK SW-WIN, Opcion de reindexar etiquetas para visualizarlas en los ADF, ADI y ADb en el LCD de operador OK SW-WIN, Visualizar en la pantalla principal si el NX5 está instalado y activo OK SW-WIN, Escribir registros DN_TIME_STAMP_... para que núcleo 2 actualiza su caché en RAM si se actualiza el XEEPROm por medio de núcleo 1 OK NX5-DN2,Implementar registros DN_TIME_STAMP_... para que núcleo 2 actualiza su caché en RAM si se actualiza el XEEPROm por medio de núcleo 1, suando algoritmo eficiente OK NX5-DN2,Implementar puntos del tipo NX5 en el bus de COM3 OK NX5-DN2,Implementar escritura de puntos en COM3 OK NX5-DN2,Corregir bug que añade 1 al día de la semana, el reloj del núcleo dos maneja en el día de la semana base uno y no base cero ===================================================================================================== // 2.48 10 Mayo 2014 ===================================================================================================== OK NX5, Implementar en logic.c variables adicionales de doble núcleo a funciones lógicas / matemáticas /comparación, RES_FLT-41..255 y RMT-51..255 OK NX5, Implementar en logic.c variables adicionales de doble núcleo a funcion asignar salidas, RES_FLT-41..255 y RMT-51..255 OK NX5, Mapear en memoria compartida las salidas analógicas para poder implementar en COM3 puntos remotos NX5 OK NX5, Evitar buscar nícleo 2 hasta que termine powerOnFinishInitialize() parta evitar lock up, cuando no hay núcleo 2 instalado / operacionalOK NX5-DN2 Implementar escribir / leer a variables adicionales RES_FLT-41..255 y RMT-51..255 OK NX5, Crear loop de espera por algunos microsegundos entre dualCoreReceiveAcknowledge() y dualCoreSendMessage() en checkCoreN2_COMM() para evitar reboot espurio de Núcleo 1 OK NX5, Eficientar implementación de readGraficaPoint() para ahorrar 161 bytes de flash OK NX5, Eficientar implementación remoteWriteCMDset() y remoteWriteCMDget() para ahorrar 50 bytes de RAM suprimiento variable remotePt2.wrCMD[] y almacenando este valor en remotePt.status[].val (3 bits) OK NX5, Eficientar implementación al leer gráficas en COMM_OBJ.C / OBJ_COMMAND_GRAPHS para ahorrar espacio en flash haciendo rutinas comunes OK NX5-DN1,Corregir bug en UpdateLCD_KBD() por errores en secuencias de espera: while (SSP1CON2bits.???) if( !Clk.sec50ms ) return; Todas mapeaban a *.SEN OK NX5-DN2,Corregir y evitar fallas recurrentes de bus i2c OK NX5-DN2,Corregir y evitar fallas recurrentes en COMM3 como esclavo OK NX5-DN2,Implementar bridging entre COM3 y núcleo 1 para poder usar COM3 como esclavo de OPTOMUX / N2-BUS OK NX5-DN2,Corregir BUG en i2c que bloqueaba el bus i2c al haber colision, limpiando el bit de overflow i2c: I2C1STATbits.I2COV = 0; // Clear overflow bit OK NX5-DN2,Implementar como maestro en COM3 para Optomux/N2-Open OK NX5-DN2,Escribir RES_BITS cada 200 ms entre Núcleo-1 y Núcleo-2 OK SW-WIN, Añadir variable de integración también en pantalla de calibración OK SW-WIN, Añadir variables adicionales de doble núcleo a funciones lógicas / matemáticas /comparación, RES_FLT-41..255 y RMT-51..255 OK SW-WIN, Añadir variables adicionales de doble núcleo a funcion asignar salidas, RES_FLT-41..255 y RMT-51..255 OK SW-WIN, pantalla de configuración puntos remotos del doble núcleo RES_FLT-41..255 y RMT-51..255 OK SW-WIN, Call graph para visualizar mejor llamadas a subrutinas, brincos y flujo del programa OK SW-WIN, Pedir confirmación para borrar historial de mover copiar y borrar OK SW-WIN, Botones con íconos en el PLC OK SW-WIN, Solicitar confirmación al borrar o sobreescribir con bloque fin un bloque que no esté vacío OK SW-WIN, En funciones de búsqueda no parar al encontrar el bloque fin, si aún no llegamos al final del programa, usa generar documentación para encontrar el fin real del programa. ===================================================================================================== // 2.47.c 14 Abril 2014 ===================================================================================================== OK NX5, En integrar(() verificar que logic.loopSegundo != 0 para evitar errores al dividir entre cero OK NX5, Corregir bug en bits de reset @ poweron RES-BIT-251 al 253 para que los tiempos de +1 +5 +10 sean correctos OK NX5, Usar RES-BIT-247 y 248 para ver si esclavo esté en línea 1=ON-Line, 0=OFF-line por más de 10 minutos OK NX5, Usar RES-BIT-249 como timer fijo 1 minuto, 1 minuoto ON x 1 minuto OFF OK NX5, Eliminar pantalla de prioridades BO para hacer espacio para nuevas opciones OK SW-WIN, Visualizar los nuevos RES-BIT añadidos en pantallas de RES_BIT, funciones lógicas, asignar salidas OK SW-WIN, En pantalla de configuración de COM1-COM2 limitar m_maxMaster a <= 127 OK SW-WIN, En pantalla de configuración de COM1-COM2 limitar m_pollPriorituTOx200ms a <= 25 ===================================================================================================== // 2.47.b 9 Abril 2014 ===================================================================================================== OK NX5, En ratiometricConvert() limitar numeros muy grandes ó muy chicos para evitar error por números infinitos ===================================================================================================== // 2.47.a 5 Abril 2014 ===================================================================================================== OK NX5, En NX5-SMS devolverle un byte al mensaje de texto eliminano \r al final del texto, ya que la función de transmitir de comm2 transmite hasta este caracter O hasta el fin del buffer OK NX5, Implementar ESPECIAL.C para que Fernando se puede divertir incluyendo código para Superheat y/ó aplicaciones especiales ===================================================================================================== // 2.47 2 Abril 2014 ===================================================================================================== OK NX5, No checar que la dirección sea == 0 en comm_obj.c en function_READ_OBJECT(), switch() case: case OBJ_COMMAND_NX5: sección (objNr == NX5_OBJ_SLAVE_POINTS), ya que (NX5-CORE/SMS/SF/RETRO) no usan dip switch OK NX5, Implementar auto repeticion al enviar SMS OK NX5, Guardar SMS usando bloques de 16 bytes a la vez, e implementar salvar/restaurar/documentar leerlos/escribirlos OK SW-WIN, Guardar SMS usando bloques de 16 bytes a la vez, e implementar salvar/restaurar/documentar leerlos/escribirlos OK SW-WIN, En horarios iluminación y generales añadir opción para que el horario se ejecute un día de cualquier mes OK SW-WIN, En horarios generales leer todos si la opción de documentar deshabilitados está activada OK SW-WIN, Opción de resetear al inicializar NX5 a valores de fábrica con selecciones parciales OK SW-WIN, Añadir peek message en comunicación x TCP/IP para que sea más responsiva la aplicación en caso de internet lento OK NX5-NET Cambiar configutación de timeouts en TCP.C para mejorar rendimiento del stack ===================================================================================================== // 2.46.d 27 Marzo 2014 ===================================================================================================== OK SW-WIN, Poner prioridades para poleo en COM2 en pantalla de configuración, adicionales a las ya presentes en COM2 puntos remotos ===================================================================================================== // 2.46.c 25 Marzo 2014 ===================================================================================================== OK NX5, Soporte para entradas analógicas TC en NX5-SF digitalizando y analizando señal para dar mayor sensibilidad y precisión (ya no lleva instalados capacitores de filtro) OK SW-WIN, Soporte para entradas analógicas TC en NX5-SF digitalizando y analizando señal ===================================================================================================== // 2.46.b 19 Marzo 2014 ===================================================================================================== OK NX5, Llamar COS cada 30 min para evitar AIs off line en Metasys OK SW-WIN, Corregir bug en lista de proyectos no selecciona el correcto. Ok SW-WIN, Purgar lista de proyectos repetidos automáticamente ===================================================================================================== // 2.46 10 Marzo 2014 ===================================================================================================== OK NX5, Reinsertar función de que LED de TX parpadea cuando no hay comm (off-line) OK NX5, Reinsertar función de que LED de RX se enciende con override local ON/OFF cuando no hay comm (off-line) OK SW-WIN, Recordar la selección de cambiar de proyecto al cambiar de NX5 OK SW-WIN, Peek message en loop de "Operar" OK SW-WIN, verificar no sobreescribir nombre de controlador al restaurar etiquetas, (funciona OK) OK SW-WIN, Opción para no autoincrementar etiquetas , sólo punto ó dirección ===================================================================================================== // 2.45.d 03 Marzo 2014 ===================================================================================================== OK NX5, Habilitar writes para ADF/ADI/ADB/RES_FLT/RMT en BACnet OK ETH3, Corregir problemas de sincronía y velocidad de flash ajustando NX5_SPI_BRG para 1.25 y 16 MHz y OK ETH3, Lectura de NX5 cuando hay carga de páginas en NX5_SpiTxRx() cuando gNX5net.downloadInProgress=1 ===================================================================================================== // 2.45.c 28 Febrero 2014 ===================================================================================================== OK NX5, Añadir _SUBREVISION en el mensaje OBJ_NX5_EXTENDED_STATUS para verlo en SW-WIN OK NX5, Soporte para NX5_CORE y NX5_SMS, se cambió en HW el monitoreo de voltaje de VCC a +12V OK NX5, Implementar en NX5_SMS envio de mensajes de texto OK NX5-DN1 Versión para ECM Surveyor Plus OK NX5-DN2 Implementar COM3 en OPTOMUX, N2-BUS y ASCII como esclavos OK SW-WIN, Al inicio entrar en salvar / restaurar, activar el check de Generar Documentación por default OK SW-WIN, Verificar que al usar NX5_SMS esté dado de alta COM2 como maestro de O-22/N2bus para que al recibir ACK lo haga correctamente ===================================================================================================== // 2.45.b 17 Febrero 2014 ===================================================================================================== OK NX5, En Nogales Arizcona, compilas sin SSCE para servidor web que no usa Flash por Fernando Escobosa ===================================================================================================== // 2.44.a 4 Febrero 2014 ===================================================================================================== OK NX5, Cambiar en COS reporting para Metasys debe cambiar el bit_6: BO_CurrentStat, no el bit_0: BO_ReliableUnrel OK SW-WIN, Alinear en generar documentación el nombre de línea a brincar al final de la línea ===================================================================================================== // 2.44 29 Enero 2014 ===================================================================================================== OK NX5, Soporte en modbus RTU master para escribir usando WRITE_MULTIPLE register para soportar drives Yaskawa OK NX5, corregir bug con asignación de LED´s a puertos seriales OK NX5, Eliminar código no usedo de i2c para implementaciones con: #if defined( NX5_USB_CURR ) || defined( NX5_RETRO ) || defined( NX5_CORE ) || defined( NX5_SMS ) OK NX5, Modificar voltajes de reset para NX5-retro, NX5-USB, NX5-core y NX5-sms con fuente de alimentación a 5 volts OK SW-WIN, Opción para seleccionar LED asignado a: USB/COM1/COM2 ó USB/COM1 ó COM2 para todas las familias del NX5 ===================================================================================================== // 2.43.b 17 Enero 2014 ===================================================================================================== OK ETH3, Se pone interlock en SPI para evitar que rutinas de FileSystem y NX5 traten de accesar simultaneo el bus SPI generando basura en las páginas OK ETH3, Poner dead timer para auto reset en 10 segundos si el NX5 se vuelve zombie al cargar páginas (variable gNX5net.clockTick) OK ETH3, Configuración dinámica de páginas usando CGI con delimitadores %CMD% similar a ExNet para evitar tener que recompilar y cargar programa con cambios en HTLM OK ETH3, Mostrar la versión del servidor en las páginas usando nx5_ver() OK ETH3, Evitar leer NX5 mientras hay download de páginas web con variable gNX5net.downloadInProgress para evitar que se corrompa al cargar OK ETH3, Corregir los puntos de las gráficas 1-16 estaban desfasados tanto en gráficos como texto (OJO se renombraron todos los puntos) OK ETH3, Crear página de los timers del sistema que faltaba ===================================================================================================== // 2.43.a 16 Enero 2014 ===================================================================================================== OK NX5, En NX5-retro modificar en PowerOn() inicialización de pin: TRIS_SDI2 = INPUT_PIN; // Tied to VCC ! para reducir corriente de 65 a 20 ma y evitar calentamiento del regulador de voltaje OK SW-WIN, Eliminar bug que en la versión de release, marca error al leer info expandida del NX5 ===================================================================================================== // 2.43 15 Enero 2014 ===================================================================================================== OK NX5, Soporte para NX5-ME9, NX5-retro, NX5-Core, NX5-SMS, carga BACnet/MSTP y modbus maestro/esclavo simultáneamente OK NX5, Mejorar comunicación en COM2 como maestro escuchando silencio en el bus con la variable: comm2_rxTimeout antes de transmitir OK NX5, Alta prioridad en COMM2 para los primeros 1..5 puntos (0-4 en variable XEE_SYS_L1_REMOTE_HP_MAX, >= 5 deshabilita prioridad alta/baja) OK SW-WIN, Añadir botón para borrar estadísticas de COMM2 en puntos remotos OK SW-WIN, Añadir barra indicadora para ver visualmente rangos de voltaje de núcleo (core) y ragulador de referencia (band gap) OK SW-WIN, Avisar cuando se ha cambiado de NX5 (usa el nombre del controlador etiqueta #200) para seleccionar el proyecto correspondiente OK SW-WIN, Forzar re-leer etiquetas en cambio de controlador NX5 OK SW-WIN, Ver detalles del modelo de controlador (tipo) NX5 en ID expandida OK SW-WIN, En asignar salidas marca error si el operando #2 no es el correcto OK SW-WIN, Clarificar uso de variables en totalizador, por periodo RES_FLT-x/y para actual anterior, para totalizador RES_FLT/ADF para respaldar acumulado en eeprom OK SW-WIN, Documentar al borrar/mover/copiar bloques en archivo LOG, y pedir confirmación antes de ejecutar OK SW-WIN, Solicitar confirmación siempre antes de restaurar de archivo al NX5 OK SW-WIN, Opción para auto documentar cuando se respalda todo el proyecto OK SW-WIN, Opción de salvar rápido al igual de velocidad que al generar documentacion OK SW-WIN, Eliminar mensajes de error al auto guardar horarios generales causados por horarios no inicializados ó no usados OK SW-WIN Opción para seleccionar LED asignado a: USB/COM1/COM2 ó USB/COM1 ó COM2 ===================================================================================================== // 2.42 13 Enero 2014 ===================================================================================================== OK NX5, Eliminar parpadeo de relays cuando la batería se ha descargado por completo OK NX5, Gráficas expandidas no se estaban almacenado correctamente, en storeExpandedGraph(() se cambió variable icID x icIDv para evitar confusión en línea 211 OK SW-WIN, En gráficas, verificar nombre de proyectos, y si tienen espacios avisar que las gráficas se generarán en el directorio actual (donde se ejecuta NX5WIN.EXE) ===================================================================================================== // 2.41.a 8 Enero 2014 ===================================================================================================== OK SW-WIN, Documentar nombre de subrutina y/ó brinco con etiqueta si esta existe en direccion de brinco/llamar subrutina OK SW-WIN, Preguntar si está seguro al restaurar para evitar errores dedo o por accidentalmente Ok SW-WIN, No generar aviso de que el equipo es esclavo al autosalvar PLC OK SW-WIN, Alinear textos al documentar puntos remotos Ok SW-WIN, Ver etiqueta de AI al calibrar Ok SW-WIN, Documentar tipo de AI's al calibrar ===================================================================================================== // 2.41 2 Enero 2014 ===================================================================================================== OK NX5, Corregir bug que no muestra bien variables en PLC en bloques arriba > 255, gLogicTermValidateIdx de char a short ===================================================================================================== // 2.40 28 Noviembre 2013 ===================================================================================================== OK NX5, Corregir bug que almacena doble vez las gráficas por re-sincronización de reloj se SW+HW cada minuto OK NX5-DN2,Mostrar en pantalla de inicio estado de USB1 y USB2 OK NX5-DN2,cargar etiquetas en inicio OK NX5-DN2,Mostrar entradas y salidas binarias en display OK ETH3, implementar gráficas como columnas y como gráficas ===================================================================================================== // 2.39 23 Noviembre 2013 ===================================================================================================== OK NX5-DN1,Mapear los valores de las gráficas en memoria del NX5-DN2 para poder almacenarlas en USB con mínima interacción OK NX5-DN2,Postergar abrir USB hasta que el reloj del DN1 haya sido leido desde el DN2 OK NX5-DN2,Almacenar datos de gráficas de DN1 cada minuto OK NX5, Implementar OBJ_NX5_IP_STRING_READ para poder ver IP desde swWin y NX5-DN2 ===================================================================================================== // 2.38.a 9 Noviembre 2013 ===================================================================================================== OK NX5, Eliminar mensaje de OFFLINE en COM2 display en LCD, cambiar = por * con blink ===================================================================================================== // 2.38 14 Octubre 2013 ===================================================================================================== OK NX5, Asegurarse que en caso de falla el MCP23008 es escrito para que los relays y LED´s se vayan a CERO en rutina de power off OK NX5, Verificar la presencia de la memoria expandida antes de usarla en gráficas OK NX5, Eficientar al enviar 64 bits juntos usando make8bitByte() OK NX5-SF, versión inicial del NX5-SF OK NX5-DN1,Verificar que override local de BO`s con SW1 funciona en NX5-DN (dual core) y NX5-MIG OK NX5-DN1,Definición de variables y direcciones de RMT2, RES_FLT2 y RES_BIT2 en "xeeprom.h" OK NX5-DN1,Habilitar PLC-2 en núcleo 1 y PLC-3 del segundo nucleo OK ETH3, Dar de alta mapeo de EEPROM para soporte de servidor con programación dinámica (CGI) en archivo XEEPROM.H OK SW-WIN, Habilitar PLC-2 en núcleo 1 y PLC-3 del segundo nucleo OK SW-WIN, Opción para seleccionar sólo un puerto COM de NX5-SF para evitar colisiones al usar dirección 255 y los dos puertos COM1 y COM2 contestan simultáneamente ===================================================================================================== // 2.37 3 Octubre 2013 ===================================================================================================== OK NX5-DN1,Integrar BACnet al build estándard provisionalmente OK NX5, Integrar el comando 0x10 Write multiple registers en modbus para soportar pantalla Delta DOP-B07S515 OK NX5, Mapeo alterno para entradas analógicas y binarias para soportar pantalla Delta DOP-B07S515 OK SW-WIN, Corregir bug que al respaldar ó generar documentación no marca correctamente el último bloque con CALL/JUMP intermezclados ===================================================================================================== // 2.36 1 Octubre 2013 ===================================================================================================== OK NX5, Salvar reloj a Eeprom cuando se cambia desdde el display de operador OK SW-WIN, Posibilidad de eliminar límites de +/-1,000,000 en RES_FLT OK SW-WIN, Cancelar lectura de LOG de eventos con más de 3 errores para evitar que se cicle en error de lectura OK NX5-DN1,Comandos para intercomunicación con doble núcleo #2 ===================================================================================================== // 2.35 19 Septiembre 2013 ===================================================================================================== OK NX5, Añadir variables Clk.powerOffRegXXX para asegurarse al 100% de almacenar power off y evitar lock out en falla de energía por intentar leer/escribir al bus i2c OK NX5, Inicializar variables de USB; USBDeviceState = DETACHED_STATE y USBSuspendControl = 0 para que el USB reinicie bien en falla de eenergía y evitar tener que desconectar/conectar el USB para que lo reinicialize la PC ===================================================================================================== // 2.34 18 Septiembre 2013 ===================================================================================================== OK NX5, Corregir ++loop.ms deshabilitado en interrupt en main.c para ver t. ciclo del loop OK NX5, Habilitar Brown-out config bit para cuando la bateríia esté medio descargada arranque bien el NX5 OK NX5, En control de UMA/UP añadir variable para enfriamiento / calefaccion para invertir lógica OK SW-WIN, En control de UMA/UP añadir variable para enfriamiento / calefaccion para invertir lógica OK NX5-DN1,Habilitar el segundo nucleo por I2C para poder comunicarse con el LCD y N2 ===================================================================================================== // 2.33 3 Septiembre 2013 ===================================================================================================== OK NX5, Habilitar interrupciones hasta el final de powerOn() Ok NX5, Incrementar la prioridad a PLC_LOOP para tener mejor índice Ok NX5, Cambiar #include "USER.H" antes que cualquier otro #include, para tener consistencia en builds de todos los modelos de NX5 OK NX5, Habilitar MSSP1.BCIE en I2C para daber cuando hay colission en el bus y reiniciar el I2C OK NX5, Cambio en lógica de UP/UMA a SP +/- diff. en lugar de SP-BP OK SW-WIN, Cambio de archivos *.HEX y bootloader a directorio \Bootloader en archivo de distribución OK SW-WIN, Visualización correcta de operandos en BIT SET/RESET/TEST OK SW-WIN, Generar los archivos de gráficas *.CSV en el directorio del proyecto ===================================================================================================== // 2.32 27 Agosto 2013 ===================================================================================================== OK NX5, Soporte en Comm.c de override para ADB/ADI OK NX5, Evitar parpadeo de relays aleatorio, al energizar NX5 sin batería ó con la batería descargada OK SW-WIN, Poner peekMesagge/dispatchmessage en loop de visualizar gráficas OK SW-WIN, Abortar en PLC si se cierra el puerto serial al desconectar USB para evitar mensajes infintos de error OK SW-WIN, Clarificar uso de XEE_SYS_RMT_WRITE_MODE en configuración COM1/COM2 ===================================================================================================== // 2.31 19 Agosto 2013 ===================================================================================================== OK SW-WIN, Corregir bug x IP que marca error de comunicaciones al salir de modificar etiquetas debido al tiempo que le toma al NX5 reindexarlas OK SW-WIN, Bridging entre NX5-NET(spi) y COM2 OK NX5, Bridging entre NX5-NET(spi) y COM2 OK ETH3, Bridging entre NX5-NET(spi) y COM2 ===================================================================================================== // 2.30.a 16 Agosto 2013 ===================================================================================================== OK SW-WIN, Borregir bug al crear un bloque de Unidad Paquete UP con un bloque borrado OK SW-WIN, corregir x USB bug que marca error de comunicaciones al salir de modificar etiquetas debido al tiempo que le toma al NX5 reindexarlas ===================================================================================================== // 2.30 25 Julio 2013 ===================================================================================================== OK NX5, Añadir soporte en modbus para pantalla touch Delta Electronics DOPAS35THTD implementando CODE_WRITE_SINGLE_REGISTER y CODE_READ_DEVICE_ID OK NX5, Si no hay LCD no activar desactivar PLC desde teclado en Power-On ===================================================================================================== // 2.29 23 Julio 2013 ===================================================================================================== OK NX5_USB_CURR, Homologar con código general del NX5 OK NX5-DN, Eliminar código de SPI master que no se usa OK NX5, Corregir operación de OVERRIDE LOCAL todos desde LCD, añadiendo variable lcd.operatingFromKeyboard OK NX5, Añadir al LOG el override local por teclado operador OK SW-WIN, Añadir al LOG el override local por teclado operador ===================================================================================================== // 2.28 17 Julio 2013 ===================================================================================================== OK NX5, Bloque para control de equipos de A/C (manejadoras de aire UMA y UP) OK SW-WIN, Imprimir correctamenet K_BYTE en etiquetas OK SW-WIN, Evitar mensajes recurrentes de error cuando se desconecta el COMM ===================================================================================================== // 2.27 16 Julio 2013 ===================================================================================================== OK SW-WIN, Actualizar barra de estado al hacer LOG OK SW-WIN, en operar salidas si no tiene suficiente prioridad, evitar que se bloquee OK NX5, Soporte para operandos del tipo constante byte OK NX5, Soporte para bloques del tipo subrutina ===================================================================================================== // 2.26.a 15 Julio 2013 ===================================================================================================== OK SW-WIN, Cambio en LOG para evitar leer registros duplicados OK SW-WIN, En Optomux cambiar timeout de RX_IP de 200 a 300 ms OK SW-WIN, Obtener una conexión estable por IP a cualquier velocidad OK SW-WIN, En gráficas, forzar leer etiqueta al crear gráficas en Excel OK SW-WIN, En gráficas, ver que texto a leer no varía si hay error al leer datos ===================================================================================================== // 2.26 10 Julio 2013 ===================================================================================================== OK SW-WIN, En documentar horarios de ilum + generales marcar INVERTIDO en horario ON DENTRO DE PERIODO hora de INICIO > que hora FIN OK SW-WIN, En ayuda al mapear inalámbricos a puntos remotos añadir datos de enlace: linkTimer y secLinkLost OK SW-WIN, Lectura de expansión IO MCP23008 desde comm, quitarlo del LCD para ahorrar espacio OK SW-WIN, Lectura de voltaje de vCore y vBGap desde comm, quitarlo del LCD para ahorrar espacio OK SW-WIN, Lectura de eficiencia del loop del PLC sesde comm, quitarlo del LCD para ahorrar espacio OK SW-WIN, Lectura de estado PLC y posibilidad de habilitarlo / deshabilitarlo remoto con opción a ON /OFF / Ultimo estado OK SW-WIN, En gráficas, Por default sin Excel al importar, preguntar si lo quiere abrir al leer gráfica si no se usa la opción "Todos" OK NX5, Horarios por ON dentro de periodo, invertir bit en horario ON DENTRO DE PERIODO si hora de INICIO > hora FIN OK NX5, Visualizar timeouts de wireless en puntos remotos de expansiones y maestros OK NX5, Lectura de expansión IO MCP23008 desde comm, quitarlo del LCD para ahorrar espacio OK NX5, Lectura de voltaje de vCore y vBGap desde comm, quitarlo del LCD para ahorrar espacio OK NX5, Lectura de eficiencia del loop del PLC desde comm, quitarlo del LCD para ahorrar espacio OK NX5, Lectura de estado PLC y posibilidad de habilitarlo / deshabilitarlo remoto con opción a ON /OFF / Ultimo estado OK NX5, Lectura de presencia de segundo núcleo, dejar preparación para la próxima implementación OK NX5, Enviar a LOG cuando el PLC se vaya a modo habilitado / deshabilitado desde LCD ===================================================================================================== // 2.25.d 4 Julio 2013 ===================================================================================================== OK SW-WIN, Espera al inicializar comm por IP ===================================================================================================== // 2.25.c 3 Julio 2013 ===================================================================================================== OK SW-WIN, Auto retry en comunicaciones lentas por IP ===================================================================================================== // 2.25.b 3 Julio 2013 ===================================================================================================== OK SW-WIN, Mejorar comunicación IP con redes lentas ===================================================================================================== // 2.25.a 24 Junio 2013 ===================================================================================================== OK SW-WIN, salir a main si hay error al abrir comm ===================================================================================================== // 2.25 21 Junio 2013 ===================================================================================================== OK NX5, En COMM.C deshabilitar el segmento de bloque /// TEST usado como prueba en línea 835 en function_GENERAL_COMMAND_MESSAGE usada para probar comandar RMT-XX desde Windows que afecta sobreescribiendo a RES_FLT-OK En COMM.C deshabilitar el segmento de bloque /// TEST usado como prueba en línea 835 en function_GENERAL_COMMAND_MESSAGE usada para probar comandar RMT-XX desde Windows que afecta sobreescribiendo a RES_FLT-31,32,33 OK NX5, Hacer que RTCK haga respaldo en XEEPROM al escribir reloj si no coincide la hora con la que está en XEE OK NX5, Corregir bug que regresa a 1/Ene/2001 si RTCK respaldado en XEE no está inicializado ===================================================================================================== // 2.24.a 14 Mayo 2013 ===================================================================================================== OK NX5, Eficientar operaciones comunes en analog.c para reducir tamaño del programa OK SW-WIN, mostrar ayuda en la configuración y calibración de entradas analógicas ===================================================================================================== // 2.24 13 Mayo 2013 ===================================================================================================== OK NX5, Soporte para NTC de Kele ST-S3K de 10K Ohms @ 25°C Type III (29,588 @ O°C, 3,894 @ 50°C) OK SW-WIN, Soporte para NTC de Kele ST-S3K en tipo de entradas analógicas OK SW-WIN, Cambia a USB si falla conexión por IP OK SW-WIN, evitar que el texto del nombre del control se vea cortado al cambiar de control a control OK SW-WIN, al visualizar nombre del control en "etiquetas" poner dirección del control com confirmación OK SW-WIN, ver en formato ampliado RES_BITS para poder visualizar su nombre ===================================================================================================== // 2.23.a 10 Mayo 2013 ===================================================================================================== OK SW-WIN, cambiar lugar de asignación de variable: "g_msglock" para evitar recursive call desde main ===================================================================================================== // 2.23 7 Mayo 2013 ===================================================================================================== OK NX5, Mete al segmento de comilación condicional el código de modbus SANTANDER_NEXUS que estaba fuera del #ifdef que calcula variables tipo F7 y F20 de energía OK NX5, Driver para ECM Surveyor Plus ECM_SURVEYOR_PLUS para lecturas de corrosión de Cu y Ag usando RS232 @ 9,600 x COM2 OK SW-WIN, añadir soporte para protocolo TERMINAL ASCII en COM2 ===================================================================================================== // 2.22.a 3 Mayo 2013 ===================================================================================================== OK SW-WIN, en el PLC continuar salvando/generando info si hay una instrucción JUMP que vá más allá de un bloque END ===================================================================================================== // 2.22 3 Mayo 2013 ===================================================================================================== OK NX5, Mapear al RES_BIT-250 a override local por PB y permitir liberarlo al comandarlo a OFF por BACnet OK NX5, Opción para poder dar override local a los 40 relays desde el PB usando XEE_SYS_PB_OVRD_RLY_NR OK SW-WIN, usar PEEK MESSAGE al buscar fin de bloque en PLC para evitar mensaje NO_RESPONDE OK SW-WIN, al inicializar SW si es por IP esperar un tiempo para actualizar interaz en ON_INIT OK SW-WIN, al leer etiquetas desde PLC asegurar que reindexe correctamente al salir OK SW-WIN, verificar que el módulo de modbus maestro esté cargado en memoria para poder seleccionarlo ===================================================================================================== // 2.21 29 Abril 2013 ===================================================================================================== OK NX5, Quitar código no usado en build con/sin BACnet para hacer más espacio OK NX5, Implementar horario de invierno / verano automático como alternativa al manual OK NX5, Posibilidad de ver horarios desde LCD operador OK NX5, Posibilidad de seleccionar tipo de disovery en BACnet dinámicamente entre sencillo / completo, etc. OK NX5, Posibilidad de almacenar puntos binarios en gráficas expandidas OK NX5, La opción de cambiar tipo de entrada analógica se quitó en el LCD y solo será posible hacerlo desde wl SW-WIN para evitar errores de operador OK NX5, En gráficas añadir soporte para puntos binarios en expandidas. OK SW-WIN, verificar al configurar COM1 y COM2 si hay protocolos selecionados que no estén cargados OK SW-WIN, seleccionar elementos estáticos para visualizar mejor en gráficas OK SW-WIN, retry en caso de falla de comunicaciones para evitar perder procesos largos, sobre todo en usando comm por IP OK SW-WIN, añadir botón para ver archivo de versiones NX5 = Revisiones.TXT ===================================================================================================== // 2.20.b 7 Abril 2013 ===================================================================================================== OK NX5, En BACnet, Discovery (Small) mapea los 50 puntos remotos, en total los 77 puntos mapeados toman 25-30 segundos en aparecer en el NAE ===================================================================================================== // 2.20.a 7 Abril 2013 ===================================================================================================== OK NX5, En BACnet, procesar mensajes que nos son para nosorros en interrupt apara eliminar RETRIES ===================================================================================================== // 2.20 3 Abril 2013 ===================================================================================================== OK NX5, En BACnet I-Am message IDX[9]cambiar: // Application tag 9, Enumerated L=1 SEGMENTATION_NONE, era 0x21 debe ser 0x91 OK NX5, Añadir variable en XEEPROm XEE_SYS_BACNET_STYLE para manejar diferencias entre BACnetMETASYS Y BACnetALERTON OK NX5, En BACnet Alerton pide PROP_UNITS en binarios (que no es estándard en BACnet), por instruccciones de Steve Karg debe responder con : ERROR_CODE_UNKNOWN_PROPERTY OK NX5, En BACnet para PROP_PRESENT_VALUE de objetos OBJECT_BINARY_VALUE deve de responder con encodeTag( sz, TAG_APPLICATION_ENUMERATED... en lugar de encodeTag( sz, TAG_APPLICATION_BOOLEAN... OK SW-WIN, opción para customizar variantes de BACnet para Metasys ó Alerton ===================================================================================================== // 2.19.b 19 Marzo 2013 ===================================================================================================== OK SW-WIN, Cambiar de IP a USB si falla Optomux IP bridge OK SW-WIN, Dejar un solo boton en acceso a password OK SW-WIN, Cambiar timers en auto actualizar gráficas a 250ms para no saturar IP bridge ===================================================================================================== // 2.19 28 Marzo 2013 ===================================================================================================== OK NX5, Soporte en BACnet de TimeSyncronizationService, PropIDdev_localDate y PropIDdev_localTime, full description OK NX5, Mostrar día de la semana alternado con mes en el reloj principal LCD OK NX5, Cambniar lógica de operar BO´s en BACnet para poder usar ON/OFF adicional a overrides en NAE/NCE OK NX5, Corregir prioridades al visualizar en LCD de grupos y circuitos OK SW-WIN, Leer etiquetas antes de prioridades para evitar flicker OK SW-WIN, Solicitar password, si equipo regresa "NEE\r" por nivel de acceso insuficiente OK SW-WIN, Poner nombre y datos del nombre en gráficas enviadas a Excel OK SW-WIN, Visualizar cual gráfica es la seleccionada OK SW-WIN, Opción de ejecutar Excel después de crear archivo y rango al generar todas las gráficas ajustable OK SW-WIN, Alternado+simultaneo, etapa lider marcada como salida en referencia cruzada ===================================================================================================== // 2.18.b 24 Marzo 2013 ===================================================================================================== OK NX5, Soporte de password con prioridades para bloquear writes al programa (L0), overrides (L1), cambio de horarios y parámetros (L2) ===================================================================================================== // 2.18.a 22 Marzo 2013 ===================================================================================================== OK NX5, Soporte de I-Am y Who-Is en BACnet OK NX5, Implementar NPDU completo para soporte multi redes en BACnet OK NX5, Cambiar K de tiemouts para obtener un health index de 0.0 (Excelente) con NAE ===================================================================================================== // 2.18 18 Marzo 2013 ===================================================================================================== OK NX5, Fix en BACnet auto discovery en Array element CERO usando encodeTag( .., TAG_APPLICATION_UNSIGNED_INT,TAG_CONTEXT_2 .. OK NX5, Limitar puntos mapeados usando BACNET_SMALL_DISCOVERY, Solo mapea 8_EB/8_EA/8_SB/2_SA/{10/50_RMT}/1_DV 27/{37/77}, toma 2-5 min el remapeo automático ===================================================================================================== // 2.17.b 13 Marzo 2013 ===================================================================================================== OK SW-WIN, Barra de avance en gráficas al cargar a Excel OK SW-WIN, aumenta tiempo de retry en IP, RX_TIMEOUT = de 64 a 120 ===================================================================================================== // 2.17.a 12 Marzo 2013 ===================================================================================================== OK SW-WIN, añadir soporte para nombre de controlador (Etiqueta #200) ===================================================================================================== // 2.17 11 Marzo 2013 ===================================================================================================== OK SW-WIN, Checar rangos de operando al dar de alta etiquetas OK SW-WIN, Totalizador dice TM EN LUGAR DE tot EN DOCUMENTACION OK SW-WIN, Peek en graficas extendidas OK SW-WIN, mejoras a visualización de LOG y ayudas en línea OK NX5, magicCookie check @ poweron para restablecer vars en caso de falla batt ó cambio de versión. ===================================================================================================== // 2.16 22 Febrero 2013 ===================================================================================================== OK NX5, Almacenar falla de reloj si año de RTCK != al almacenado en EEPROM OK NX5, Almacenar LOG de falla de reloj solo después de que "powerOnFinishInitFlag" ha sido inicializada ===================================================================================================== // 2.15 15 Febrero 2013 ===================================================================================================== OK SW-WIN, NX5-NET soporte para comunicarse por IP a través del NX5-NET ===================================================================================================== // 2.14.a 9 Febrero 2013 ===================================================================================================== Ok NX5, Almacenar a LOG si hay falla de RTCK durante operación normal OK NX5, Almacenar a LOG si hay ajuste de reloj usando dirección 0xFF=255 OK SW-WIN, añadir peekMessage a LOG y barra de avance ===================================================================================================== // 2.14 8 Febrero 2013 ===================================================================================================== Ok NX5, Solo almacenar RTCK a EEPROM si año <= 2001 ===================================================================================================== // 2.13.a 7 Febrero 2013 ===================================================================================================== OK SW-WIN, deshabilitar override de salidas analógicas si SW cargado en NX5 < 2.13 ===================================================================================================== // 2.13 4 Febrero 2013 ===================================================================================================== OK NX5, Implementar override remoto para salidas analógicas OK NX5, Habilitar memoria 2Mb flash en servidor por default (habilitando NX5_NET_USA_SSCE en USER.H) ===================================================================================================== // 2.12 14 Enero 2013 ===================================================================================================== OK NX5, Soporte para NX5-NET con 2Mb Flash usando SSCE en módulo SPI OK NX5, Corregir bug en horarios en apagar con parapadeo OK SW-WIN, avisar si se selecciona un horario en apagar con parpadeo, sólo válido para grupos de iluminación. ===================================================================================================== // 2.11.b 9 Enero 2013 ===================================================================================================== OK SW-WIN, peekMesagge/dispatchmessage en loops ADB/ADI/ADF para evitar mensaje de (no responde) ===================================================================================================== // 2.11.a 7 Enero 2013 ===================================================================================================== OK NX5, Revisar rangos en NX5COMM.INI de puerto COM1-COM9 para no generar error: EV_RXCHAR ===================================================================================================== // 2.11 4 Enero 2013 ===================================================================================================== OK SW-WIN, corregir falla de autoseleccionar etiquetas en PC SAVE OK SW-WIN, añadir botón de seleccionar proyecto existente en PC SAVE OK SW-WIN, alinear textos en PLC al visualizar control proporcional OK SW-WIN, mostrar en documentar horarios generales cuál es el último horario escaneado por el NX5 OK SW-WIN, peekMesagge/dispatchmessage en loops faltantes, (horarios, etc) OK NX5, Dar prioridad a comm entre maestros / escalavos con condicion de alto tráfico de datos en bus (XEE_SYS_WAIT_K_USB_COM2_BRDG) OK NX5, Cambiar el reajuste automático del reloj con el RTCLK al medio minuto cada hora ===================================================================================================== // 2.10 30 Diciembre 2012 ===================================================================================================== OK SW-WIN, peekMesagge/dispatchmessage en loops para evitar mensaje de (no responde) OK NX5, Mapear en RES_BIT estado de comunicaciones de HW remotos ===================================================================================================== // 2.09.d 14 Diciembre 2012 ===================================================================================================== OK SW-WIN, Documentar días festivos OK SW-WIN, Ayuda en línea en pantalla de configurar COM1 y COM2 ===================================================================================================== // 2.09.c 13 Diciembre 2012 ===================================================================================================== OK SW-WIN, Update de datos NX5 al salir de 9 botones principales OK SW-WIN, Mostrar overrides en Logica / asignar salidas ===================================================================================================== // 2.09.b 13 Diciembre 2012 ===================================================================================================== OK SW-WIN, cambiar timer en remotos para evita rque al ver HW se salga de línea ===================================================================================================== // 2.09.a 11 Diciembre 2012 ===================================================================================================== OK SW-WIN, kill timer cuando se edita la direccion OK SW-WIN, cambiar texto de BBT a OK al ver NX5 esclavos ===================================================================================================== // 2.09 10 Diciembre 2012 ===================================================================================================== OK NX5, Habilitar BI-1 y 2 para overrode local a ON/OFF si está habilitado PB local OK NX5, Añadir override local a LOG de eventos OK NX5, Mensaje NX5-BBT (Broadcast BLock Transfer) para transfrir bloques de datos entre NX5´s en modo broadcast, bus address = 254 ===================================================================================================== // 2.08 5 Diciembre 2012 ===================================================================================================== OK NX5, Limitar salida del control proporcional a números positivos OK NX5, Función AND cambia a BIT_(TEST)/SET_16_bits cuando OP1=RES_FLT-XXX, OP2=ADI-XXX, OP3=(NULL)RES_BIT-XXX, OP4=NULL OK SW WIN, Modificar limites de ADI a 0..65535 para poder usar máscara 16 bits en bit test/set/reset OK SW WIN, Modificar limites de ADF a +/-100k OK SW WIN, Modificar limites de RES_FLOAT a +/-100k ===================================================================================================== // 2.07.d 30 Noviembre 2012 ===================================================================================================== OK SW-WIN, Grupos de iluminacion no mostrar relays que no se usan / falta una linea vertical OK SW-WIN, Web server virtuaql, crear archivos HTML y CSV en la carpeta de cada proyecto OK SW-WIN, Añadir etiquetas a horarios ===================================================================================================== // 2.07.c 29 Noviembre 2012 ===================================================================================================== OK SW-WIN, Evitar que ponga (no responde) al usar operaciones que consumen largo tiempo OK SW-WIN, Corregir bug al reindexar etiquetas OK SW-WIN, Evitar bug que bloquea al leer etiquetas al leer puntos remotos ===================================================================================================== // 2.07.b 23 Noviembre 2012 ===================================================================================================== OK SW-WIN, Corregir bug al respaldar PLC no visualiza cuando el NX5 es remoto OK SW-WIN, corregir bug al visualizar buffer de etiquetas por direcciòn ===================================================================================================== // 2.07.a 20 Noviembre 2012 ===================================================================================================== OK SW-WIN, añadir password para inicializar eeprom a valores de fábrica desde el SW de Windows OK SW-WIN, corrige bug que se cicla al salvar etiquetas en guardar todo OK SW-WIN, Boton de forzar borrado a valores de fàbrica desde sw. Windows OK SW-WIN, añadir niveles de paswword para habilitar ciertas opciones OK SW-WIN, ver etiquetas archivo LABEL_Fxxx por direccion independiente OK SW-WIN, Implementar RESTAURAR por bloques igual que RESPALDAR ===================================================================================================== // 2.07 8 Noviembre 2012 ===================================================================================================== OK NX5, En asignar salida, LOGIC_RGN_TIMER_STATUS cambia, escribe registro del timer (cuenta) en lugar del bit de control, el bit de control se puede escribir con RES_BIT-21..36 OK NX5, Corregir bug de cambio de horario de verano a invierno OK SW-WIN, en PLC pasar a OFFLINE al editar etiquetas OK SW-WIN, en PLC opción para ir a ajuste de parámetros y ver estado directamente OK SW-WIN, nombres en timers OK SW-WIN, visualizar nombres correctemente en gráficas cuando son mayúsculas OK SW-WIN, getLabel() en Clase OK SW-WIN, añadir al LOG el cambio de horario a verano ó invierno OK SW-WIN, avisar al abrir PLC si es esclavo y mostrar aviso de que AO´s y BOs se irán a override después de n segundos de offline ===================================================================================================== // 2.06.b 26 Octubre 2012 ===================================================================================================== OK SW-WIN, corregir al documentar valores ADB >= 128 los imprime negativos ===================================================================================================== // 2.06.a 1 Octubre 2012 ===================================================================================================== OK SW-WIN, añadir en documentar etiquetas opción de documentar valores de AD´s OK SW-WIN, clarificar !run/load en documentar y display de timers ===================================================================================================== // 2.06 30 Septiembre 2012 ===================================================================================================== OK NX5, Añadir ClrWdt(); a loop de falla de energía ===================================================================================================== // 2.05.a 24 Septiembre 2012 ===================================================================================================== OK NX5, Habilitar WDT 4 segundos para restablecer en caso de falla bus i2c y runaway code ===================================================================================================== // 2.05 10 Septiembre 2012 ===================================================================================================== OK NX5, Alargar tiempo de TIMEOUT en bridging para soportar doble bridging (X_USB_TO_MULTPLIER) OK SW-WIN, corregir bug en puntos remotos para evitar error de lectura después de escribur puntos remotos > 10 ===================================================================================================== // 2.04 24 Julio 2012 ===================================================================================================== OK NX5, BUG, corregir AO's, se van al 50% cuando val > 100% OK SW-WIN, Actualizar proyecto después de crear nuevo OK SW-WIN, ver wireless link en configurar también OK SW-WIN, Implementar en respaldar todo, buscando archivos existentes *.INI OK SW-WIN, Confirmar antes de sobreescribir archivos existentes al salvar datos ===================================================================================================== // 2.03 20 Julio 2012 ===================================================================================================== OK NX5, Aumentar dispositivos HW en com 2 master opto 22 de 16->24 ===================================================================================================== // 2.02.c 5 Julio 2012 ===================================================================================================== OK SW-WIN, Indicador de que el bloque no se está ejecutando correctamente más visiblemente ===================================================================================================== // 2.02.B 28 Junio 2012 ===================================================================================================== OK SW-WIN, corregir bug al leer gráficas expandidas OK SW-WIN, Opción para documentar horarios OK SW-WIN, Pulir iconos para interfaz gráfica (B) ===================================================================================================== // 2.02.a 13 Junio 2012 ===================================================================================================== OK SW-WIN, auto checar COM al selecionar uno diferente ===================================================================================================== // 2.02, 8 Junio 2012 ===================================================================================================== OK SW-WIN, Afinar interfaz gráfica OK NX5, Corregir bug al almacenar gráficas cada 15 minutos ===================================================================================================== // 2.01, 6 Junio 2012 ===================================================================================================== OK SW-WIN, Cambio en comunicaciones para permitir máxima velocidad cuando se usa conexión por USB OK SW-WIN, Simplificar interfaz por modo gráfico con íconos ===================================================================================================== // 2.00.a, 28 Mayo 2012 ===================================================================================================== OK NX5, Fix de bug al usar Bridge entre USB-COM1 para eliminar fallas en comm ===================================================================================================== // 1.17.b, 10 mayo 2012 ===================================================================================================== OK SW-WIN, Si reloj no coincide con PC, mostrarlo en rojo ===================================================================================================== // 1.17.a, 3 mayo 2012 ===================================================================================================== OK SW-WIN, Visualizar gráficamente overrides en operar circuito y vistas de NX5 OK SW-WIN, Visualizar gráficamente horarios de iluminación y generales ===================================================================================================== // 1.17, 26 Abril 2012 ===================================================================================================== OK NX5, Salvar reloj cada 20 min a eeprom para en caso de falla de batería no perder más de 20 minutos OK NX5, Generar log en caso de falla de batería ===================================================================================================== // 1.16.a, 25 Abril 2012 ===================================================================================================== OK NX5, Visualizar hora del NX5 en página principal ===================================================================================================== // 1.16, 11 Abril 2012 ===================================================================================================== OK NX5, Hacer MAX_MASTER en BACnet modificable, XEE_SYS_MAX_MASTER OK NX5, Corregir dirección de XEE_SYS_WAIT_K_USB_COM2_BRDG de 45->47 ===================================================================================================== // 1.15, 22 Marzo 2012 ===================================================================================================== OK NX5, Corregir mensajes con malformaciónenBACnet generateAbort(), generateReject(), generateError(), OK NX5, En readPropertyService() añadir case PROP_RELIABILITY: y eliminar OK NX5, En readPropertyService() cambiar generateError( ERROR_CODE_INVALID_PARAMETER_DATA_TYPE ) por generateError( ERROR_CODE_UNKNOWN_PROPERTY ) OK NX5, En readPropertyService() DEVICE eliminar PropIDdev_deviceAddressBinding() OK NX5, Añadir checkCOM1() para mejorar performance en BACnet en baud rate > 19,200 OK NX5, Modificar secuencias en PFM para obtener estabilidad del token ring @ 38,400 ===================================================================================================== // 1.14, 14 Marzo 2012 ===================================================================================================== OK NX5, Poder visualizar que el bloque se esté ejecutando en SW WIN OK NX5, Corregir timing en TX_EN para BACnet en 19,200 y 38,400 OK NX5, Añadir RELIABILITY a BACnet y ajustar parámetros para correr estable 19,200, K_USAGE_TIMEOUT/T_TURNAROUND/RETRY_PFM_COUNT ===================================================================================================== // 1.13.a, 12 Marzo 2012 ===================================================================================================== OK NX5, Visualizar por comm en ADF- variable de escrituras a EEPROM usado port readWriteXEE() OK NX5, version especial para JW-Marrion Club de industriales, #define CLUB_DE_INDUSTRIALES ===================================================================================================== // 1.13, 10 Marzo 2012 ===================================================================================================== OK SW-WIN, Brinco condicional corregir con RES_BIT que visualize correctamente OK SW-WIN, Error al guardar direcci`on de COM2, pone a cero OK SW-WIN, Copy++ en etiquetas y gráficas OK SW-WIN, Corregir visualizar nombres cuando exceden tamaños en gráficas y remotos OK SW-WIN, Corregir visualizar puntos con bit INVALID set OK SW-WIN, Corregir visualizar y guardar etiqueta separadora OK NX5, Visualizar en LCD variable de escrituras a EEPROM usado port readWriteXEE() ===================================================================================================== // 1.12.a/b/c, 7 Marzo 2012 ===================================================================================================== OK SW-WIN, Documentaciòn tipo PLC OK SW-WIN, optimizaciòn para leer NX5 remotos a travès de NX5 Maestro en Altezza OK SW-WIN, aplicaciòn especial Altezza para generar achivos en Excel de medidores ME8 OK NX5, Soporte para dar overrides a ADF`s ===================================================================================================== // 1.12, 29 Febrero 2012 ===================================================================================================== OK NX5, Evitar sobre escribir ADF´s cuando el valor sea el mismo OK NX5, Poder escribir/borrar ADx`s en asignar salida OK NX5, Implementar Optomux en modo MASTER para puntos remotos ADF/ADI/ADB (write) BO/AO/ADF (override/release) OK NX5, Hacer puntos remotos destino de ASIGNAR SALIDAS ===================================================================================================== // 1.11, 28 Febrero 2012 ===================================================================================================== OK NX5, Modificar programa para poder usar com1 ||com2 para esclavo, hay que programar la dirección == CERO, y el esclavo lo dan los DIP-SW OK NX5, Corrige bug al tener COM2 como esclavo NX5 para poner las salidas en valores por default OK NX5, Corrige bug al asignar salida de RMT-XX --> AO-XX da como resultado CERO, corregir, solución provisional usar registro intermedio en otro tipo de bloque que no sea asignar salida OK SW-WIN, cuando control proporcional fuente es RMT-XX se sale de programar, se modificò en OnTimer() en lògica para leer RES_FLT/RES_BIT/TMR/RMT (Capistrano) OK SW-WIN, Ver estado actual de brinco condicional y clarificar texto funcion brinco condicional ===================================================================================================== // 1.10, 25 Febrero 2012 ===================================================================================================== OK NX5, Tiempo para pasar a offline cuando es esclavo inicial en 10 segundos para permitir que el maestro se inicialize ===================================================================================================== // 1.09.a, 22 Febrero 2012 ===================================================================================================== OK SW-WIN, corregir nombres de variables al visualizar control proporcional OK SW-WIN, corregir nombres de variables al visualizar asignar salidas analógicas (eliminar overlap) OK SW-WIN, añadir botón para buscar último bloque desde posición actual OK SW-WIN, seleccionar opción de parar al encontrar 1er bloque END en PC save OK SW-WIN, archivos de documentación de etiquetas y logica también generar en carpeta de proyecto ===================================================================================================== // 1.09, 9 Febrero 2012 ===================================================================================================== OK NX5, En Bacnet.c cambiar unidades de UNITS_VOLTS a UNITS_NO_UNITS OK NX5, En Bacnet.c añadir PFMretry para evitar perder NS en velocidad 38400 OK NX5, Si LCD está deshabilitado, no crear mensaje en buffers OK NX5, En sw Win añadir texto de variables en control proporcional y VO en display OK NX5, En sw Win Modificar comportamiento de borrar en etiquetas OK NX5, En sw Win modificar dialogo para modificar MATH / LOGIC corregir texto en MATH = RES_FLOAT OK NX5, En sw Win corregir bugs al visualizar y editar etiquetas OK NX5, Cambiar en Bacnet en función assemblePFM() constante de timeout de K_USAGE_TIMEOUT (40ms) a K_RELPY_TIMEOUT (200 ms) OK NX5, Corregir bug en gráficas que aborta el diálogo al llamar UpdateData( FALSE ); sin memoria expandida OK NX5, Corregir bug que resetea el NX5 al borrar registros de gráficas sin memoria expandida OK NX5, Corregir etiquetas en LCD alarms OK NX5, Corregir visualización de AO´s en vista gráfica ===================================================================================================== // 1.08, 29 Enero 2012 ===================================================================================================== OK NX5, Corregir bugs en BACnet/MSTP para implementar con NAE OK NX5, Añadir comando WRITE en BACnet-MSTP OK NX5, Corregir bug alusar PC-SAVE con datos ADx en sw Win ===================================================================================================== // 1.07.a, 16 Enero 2012 ===================================================================================================== OK NX5, Añadir tiemo de intercomunicación al usar el puente USB_COM2, (K_USB_COM2_BRDG) OK SW-WIN, Corregir bug en WIN7 usando convertidor USB-SER de Steren en optomux.cpp ===================================================================================================== // 1.07, 12 Enero 2012 ===================================================================================================== OK NX5, Expansión memoria seeprom/nvram por i2c en varias configuraciones 32k(x), 128K(x), 128K+128K(x+x), 128K+32K(x+n) OK NX5, Implementar gráficas expandidas 1K * 16 OK SW-WIN, corregir visualización de NULLs que marcan ?? en AND/NAND y OR/NOR OK SW-WIN, Cambiar de inglés a español tipos en gràficas y remotos ===================================================================================================== // 1.06.e, 4 Enero 2012 ===================================================================================================== OK SW-WIN, Opción para seleccionar proyecto (directorio) de trabajo para archivos *.INI ===================================================================================================== // 1.06.c, 20 Diciembre 2011 ===================================================================================================== OK SW-WIN, usar directorios para *.INI / *.HTML / *.CSV OK SW-WIN, poner nombres al documentar bloques lógicos ===================================================================================================== // 1.06.a, 30 Noviembre 2011 ===================================================================================================== OK NX5, Corregir bug en operar circuitos/grupos desde el display OK NX5, Modificar vista de horarios OK NX5, Corregir glitch en relays de iluminación en POWERON OK NX5, Corregir bug interrelay en POWERON ===================================================================================================== // 1.06, 17 Noviembre 2011 ===================================================================================================== OK NX5, Valores por default para salidas de módulos remotos OK NX5, Bits de estado para módulos NX5 remotos OK SW-WIN, Reportar bits de estado para módulos NX5 remotos en COMM OK SW-WIN, Corregir bug al en NX5 esclavos al comandarlos y reportar estado OK SW-WIN, Mejorar visualización de bloques Logicos en WIN ===================================================================================================== // 1.05, 26 Septiembre 2011 ===================================================================================================== OK SW-WIN, Generar archivo HEX del eeprom OK SW-WIN, Borrar puntos modbus y alarmas cal inicializar EEPROM a valores de fábrica OK SW-WIN, Salvar valor de totalizador a punto en ADF cada 5 minutos ===================================================================================================== // 1.04.a, 26 Septiembre 2011 ===================================================================================================== OK SW-WIN, Corregir bug al leer punto remoto ===================================================================================================== // 1.04, 23 Septiembre 2011 ===================================================================================================== OK NX5, Implementar modbus master OK SW-WIN, Respaldo automático de LCD remotos, alarmas, modbus remotos ===================================================================================================== // 1.03.b, 21 Septiembre 2011 ===================================================================================================== OK NX5, Cuando no hay actividad en ningun COMM, LED TX parpadea después de 15 segundos y LED RX se queda ON si hay override local con sw PB1 ===================================================================================================== // 1.03, 20 Septiembre 2011 ===================================================================================================== OK SW-WIN, Implementar DEBUG en modo terminal en USB para COM1 y COM2 OK NX5, Bloque ALARMAS LCD OK NX5, Implementar BACnet slave por MS/TP ===================================================================================================== // 1.02.A, 11 Septiembre 2011 ===================================================================================================== OK NX5, Timers fijos 1,2,4 segundosen RES_BIT-37..39 OK NX5, Reset bits +1, +5, 10 segundos en RES_BIT-251..253 ===================================================================================================== // 1.02, 07 Septiembre 2011 ===================================================================================================== OK SW-WIN, Implementar pantalla de deshabilitar PLC en reset oprimiendo ESC en Poweron OK NX5, Implementar modulo alternado y simultaneo OK NX5, Implementar contador de horas OK NX5, Totalizador trigger en cambio a UNO, CERO ó AMBOS OK NX5, Implementar etiquetas divisoras de seccion OK NX5, Timer con nuevas funciones OK NX5, Implementar brinco condicional OK NX5, Implementar COPIAR, MOVER, BORRAR,PEGAR en bloques lógicos OK NX5, Implementar COPIAR, PEGAR en horarios OK NX5, Implementar salvar eqiquetas de LCD remote OK NX5, Implementar fast read de etiquetas desde archivo OK NX5, Implementar cambios entre revisión 0 y 1 de HW, Pin rev.0 rev.1 Ry4 RB3 RD0 // Pin RLY4 movido de RB3 a RD0 IntSPI -- RB3 // INT/SSCE, (será usado con expansión de memoria Flash en NX5-ETH/WIFI) Toggle RA6 RA6 // = (SPI TOGGLE) Ry2 RA7 RA7 // = (Exp. sRAM) Ry3 RD1 RD1 // = (Exp.sFLASH) OK NX5, Implementar timers fijos de 1, 2, 4 segundos en RES_BIT-37, RES_BIT-38, RES_BIT-39 OK NX5, Implementar Power ON reset de +1, +5, +10 segundos en bits RES_BIT-251, RES_BIT-252, RES_BIT-253 ===================================================================================================== // 1.01.a, 22 Agosto 2011 ===================================================================================================== OK NX5, Corregir bug en módulo lógico para valores analógicos comparar que valor sea >= 1 ===================================================================================================== // 1.01, 17 Agosto 2011 ===================================================================================================== OK SW-WIN, Implementar timestamp en etiquetas para leer de file en lugar de wwprom en WIN_SW OK NX5, Implementar pantalla inicial en configuración de parámetros de sistema NX5 OK NX5, Añadir variables en xeeprom para: HW2, eeprom size y USB comm config para ser implementadas más adelante OK NX5, Implementar etiquetas para LCD en puntos remotos ===================================================================================================== // 1.00, 15 Agosto 2011 ===================================================================================================== OK NX5, Clk adj, implementar ajuste de reloj, de 1..25 adelanta, de 101..125 atrasa de 1..25 segundos por día OK NX5, Implementar modbus slave OK SW-WIN, en etiquetas, poner búsqueda de última OK SW-WIN, en etiquetas generar archivo con todas en formato TXT OK SW-WIN, en bloques lógicos implementar referencias cruzadas y detección de errores y avisos (warnings) al generar documentacion OK SW-WIN, implementar autobúsqueda de puertos seriales ===================================================================================================== // 0.99, 4 Agosto 2011 ===================================================================================================== OK NX5, Corregir bug en Logic/Prop_control que generaba NAN float en reset en resultado OK SW-WIN, Buscar última etiqueta no NULL an poweron ó al escribir última etiqueta ===================================================================================================== // 0.98c, 26 Julio 2011 ===================================================================================================== OK NX5, Evitar division entre CERO en control proporcional si banda proporcional es == 0 ===================================================================================================== // 0.98b, 14 Julio 2011 ===================================================================================================== OK NX5, Bug en reset, a veces no restablece hasta darle HW reset, añadir tiempo de resurrección. ===================================================================================================== // 0.98a, 11 Julio 2011 ===================================================================================================== OK SW-WIN, Poner a cero valores de wireless, si esta deshabilitado modulo RF_WIRELESS. OK SW-WIN, Display principal con opción de sub-revisión menor OK SW-WIN, Full support SPI commprocess() para servidor páginas web OK SW-WIN, Ver IP asignada a servidor OK SW-WIN, Ver loop performance en LCD ===================================================================================================== // 0.98, 7 Julio 2011 ===================================================================================================== OK NX5, Deshabilitar LCD por i2c y wireless por i2c si no están presentes para evitar delays en i2c bus OK NX5, Corregir bug en control proporcionar, al escribir y leer datos incrementa +1 objNr en operandos 2 y 3 OK NX5, Corregir bug en override manual de todos los circuitos OK SW-WIN, Corregir error al leer graph causado por bug en SW windows al no inicializar ariable ComError OK SW-WIN, Clarificar el uso de lighting groups, al eliminar no de RES_BIT al darlos de alta en SW windows OK SW-WIN, Clarificar uso de timers en RES_BIT al darlos de alta en SW windows. ===================================================================================================== // 0.97, 5 Julio 2011 ===================================================================================================== OK NX5, Borrar Holidays en XEEinit OK NX5, Inicializar variables de wireless en XEEinit (Debe hacerse manual ya que se almacena en EEPROM de modulo RF-WRLS) OK NX5, Checar bug logica con 4 termminos cuando hay terminos deshabilitados OK NX5, Checar logica de timer para asignar directamente a BO estado OK NX5, BOOTLOADER, Fix BO flicker at startup by disabling PULLUPS after verifying DWNL switch OK NX5, Revisar bug en prioridades de BO´s para BO´s sin asignación OK NX5, Implementar bloques Min,Max,Avg OK NX5, Implementar boton de overide local OK SW-WIN, Checar archivos almacenados en ROOT no funciona bien con Vista ===================================================================================================== // 0.96, 27 junio 2011 ===================================================================================================== OK NX5, Implementar METASYS COS (not fully tested yet), usando michrochip solutions v2011-06-02 OK NX5, Limpiar BI, AI, AO en poweron si RES_FLT está seleccionado OK NX5, SPI slave interface for C32-WEB server OK SW-WIN, Labels optimizar para no leer todas Ok SW-WIN, Log de comunicaciones ===================================================================================================== // 0.95 4 April 2011, firmware and Windows software project start, builds on top of EX project from 2001 ===================================================================================================== OK NX5, Salidas analogicas OK NX5, Led remoto OK NX5, implementar xeeprom OK NX5, implementar ADx OK NX5, implementar flash 2mb OK NX5, implementar sRam OK NX5, implementar SPI OK NX5, implementar bateria y RTCLK OK NX5, entradas analogicas tipo + calibracion + normalizar OK NX5, implementar logic blocks OK NX5, implementar operar / release local y timers interrelay CIL OK NX5, implementar BITS de override en comm OK NX5, implementar horarios OK NX5, implementar N2 BI-BO para CILs OK NX5, implementar logic block control proporcional OK NX5, implementar esclavos NX5 OK NX5, implementar master OPTO22 en COM2 OK NX5, implementar reliability bit para NX5 remotos OK NX5, implementar graficas OK NX5, implementar dias festivos OK NX5, implementar ver prioridades OK NX5, implementar borrar variables RS_BIT, RES_FLT, OVRRD_LOCAL OK NX5, implementar borrar xeeprom remoto OK NX5, implementar etiquetas OK NX5, implementar Leds a BIT'grn/s 254 + red/255 OK NX5, implementar read back reloj OK NX5, implementar device reset requested desde commm OK NX5, implementar log file OK NX5, implementar restaurar HW a overrides en poweron OK NX5, implementar multibaud en COM1 y COM2 OK NX5, implementar tipo de entradas analogicas y calibracion OK NX5, implementar horarios logicos OK NX5, implementar salvar ruta de excel (sw win) OK NX5, implementar integrar AI´s OK NX5, implementar convertidor USB 485 virtual OK NX5, inicializar RES_FLT / RES_BIT desde (sw win) OK NX5, verify XEEPROM init fails when all fields of init flag are set bug en (XEE_SYS_INIT_FLAG_LOGIC) OK NX5, ajuste de reloj esclavos cada hora o al recibir comando synch reloj OK NX5, eficientar com3 variable OK NX5, implementar display para ver remote points OK NX5, implementar display para calibrar AI´s OK NX5, implementar display para ver puntos remotos OK NX5, implementar pantalla para carga por USB OK NX5, horario invierno / verano OK NX5, reset graphs 1 min to 5 min on rollover OK NX5, implementar equipos wireless FCDH OK NX5, modificar remoto wireless links OK NX5, add keep akive USB message every 4 min OK NX5, Añadir al LOG borrar eeprom y clear overrides OK NX5, implementar GRAFICA binarios OK NX5, implementar dialogo para variables del sistema OK NX5, ACCUM logic block y fast speed counters en BI-1,2 Med speed BI-3..8,BO-1..8, RES_BIT-1..255 OK NX5, LED y LCD blink en caso de falla RTC por batt. y horarios no aplican OK SW-WIN, ajustes de sistema OK SW-WIN, implementar web server en sw win OK SW-WIN, search / find OK SW-WIN, respaldo general de datos OK SW-WIN, inicializar xeeprom desde sw win OK SW-WIN, salvar ADB, ADI, ADF, AI_CALIB, GRAFICAS desde sw win