# These notes describe changes and issues # associated with the specified releases # of the MBARI PUCK Reference Design Kit (PRDK). Copyright Information Copyright 2006, Monterey Bay Aquarium Research Institute. Licensed for PUCK-enabled oceanographic instrumentation field-of-use. Intellectual Property Disclaimer MBARI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, MBARI MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE LICENSED SOFTWARE COMPONENTS OR DOCUMENTATION WILL NOT INFRINGE ANY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. MBARI SHALL NOT BE HELD LIABLE FOR ANY LIABILITY NOR FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIM BY RECIPIENT OR ANY THIRD PARTY ON ACCOUNT OF OR ARISING FROM THIS AGREEMENT OR USE OF THE PUCK REFERENCE DESIGN KIT. Terms of Use MBARI grants to the user (RECIPIENT) a royalty-free, nonexclusive, and nontransferable license to use the PUCK Reference Design Kit (PRDK) architecture, hardware, software code and documentation to be furnished hereunder, upon the terms and conditions set out below. RECIPIENT acknowledges that the is a research tool and that the architecture, hardware, software code and documentation are being supplied "as is," without any accompanying services or improvements from MBARI. RECIPIENT agrees to use the PRDK solely for internal, non-commercial purposes and shall not distribute or transfer them to another location or to any other person without prior written permission from MBARI. Title and copyright to the PRDK and to any associated documentation shall at all times remain with MBARI, and RECIPIENT agrees to preserve same. RECIPIENT agrees not to make any copies except for its internal use without prior written consent of MBARI. RECIPIENT agrees to place the appropriate MBARI copyright notice on any such copies. ======================== PRDK Release Notes release: feb08_2008 ======================== Features - added help and quit commands to emulator instrument mode - added support for higher baud rates to emulator for faster performance with utilties # Bug Fixes A number of bug fixes were made, mostly related to improving performance of the buffering and I/O routines to speed up the utilities. - in DataSheetWriter: fixed duplicate write statement that caused mfgModel to be written twice and mfgVersion not to be written. - Payload.InputStream.read(): fixed buffering and end-of-stream detection; in reference design hardware, memory reads wrap around, making it possible to re-read the same memory twice, which is innefficient and slow. Also added calls to puck.setFastBaud() in utilties to speed up transfers. - in Puck.read: optimized wait loop for much faster performance; previously slept for 1 sec when no input was available, which happens frequently. Now checks every 50 ms or so (though still with a 20 s timeout). - in unix/memory.c: fixed pointer arithmetic error that caused datasheet size to be written to the wrong location overwriting part of the mfg name. Reformatted memory output on puck start. Use memcpy instead looping through buffer in readPuckMemory. - in unix/serial.c: added support for multiple baud rates. Added sendChars method that writes a whole buffer at once (10x improvement in write speed for emulator; called by funcReadMemCmd). - in msp430/serial.c: added sendChars method (see above) - in generic/actions.c: funcReadMemCmd calls sendChars() instead of sendChar() (see above) - fixed makefile for unix firmware build; redefined objects # Known Issues - Power cycle timing with reference design hardware (rev 6) When power to the PUCK reference hardware is cycled rapidly, the supply voltage can take a long time (10-15 s) to drop below the threshold required to initiate a power-on reset (POR) condition. If POR does not occur, the PUCK will not boot properly, usually evidenced by low current draw (< ~4 mA); the PUCK will not respond in this state. A potential work-around is to close and open the reset jumper (with power on or off). ======================== PRDK Release Notes release: jan16_2008 ======================== This version will be the initial PRDK release on the MBARI Plug and Work web site. Features - Updated hardware test procedure document - Added Ant target ("firmware") to buildPRDK to build MSP430 binaries for PRDK build, along with wrapper script buildFirmware. Bug Fixes - Fixed build problem in bashrc for *nix (incorrect path separator caused shell to try to execute log4j JAR file) - Under MacOS (BSD Linux?), puckVerify won't compile because termios.h doesn't define CBAUD; redefine in puckVerify-1.3/tty.h ======================== PRDK Release Notes release: jan13_2008 ======================== Features - Updated PUCK schematic annotations and cable drawings - RS485 transceiver test code (see issue below) - Added Win32 wrapper scripts for PUCK utilities - Added hardware test guide for running hardware tests under minimal Win32 installation (for internal production) # Issue: RS485 hardware support for PUCK v1.3 incomplete # Affects: PUCK reference design implementation hardware The modification made to the reference implementation hardware for PUCK protocol v1.3 does not work for the RS485 version. Only one of the puck's two communications lines required for RS485 communication is connected in instrument mode; hence the PUCK is unable to send or receive data to/from the host computer in instrument mode. It is possible to connect this line with the following "blue-wire" modification: Connect pins 2 and 4 of relay K1 Furthermore, an RS485 firmware implementation for PUCK protocol v1.3 is not currently defined. Pending issues include an addressing scheme and electrical termination and biasing recommendations. However, when the RS485 tranceiver is installed and the blue-wire modification above is made, it is possible to exercise the RS485 transceiver using test code included in serial.c for the MSP430 firmware. The makefile for the MSP430 firmware contains notes describing how to compile the test code. There is currently no plan to complete a RS485 reference implementation. ======================== PRDK Release Notes release: nov30_2007 ======================== Features - Added documentation for installing the MSPGCC tool chain for - Updated MSP430 reference design firmware so that it now compiles using either MSPGCC or Quadravox AQ430. - MSP430 binaries (.rcx, .elf) using the new MSP430 firmware code (nov30_2007 tag) are included in the distribution. - Hardware has been built and tested using the hardware documentation ======================== PRDK Release Notes release: nov09_2007 ======================== Features Updated design documentation has been provided for the PUCK hardware reference design. Consult the README file in the hardware directory to learn how this documentation is organized. Version information for various PRDK components is now generated during the build process. This may be found in the top level PRDK directory in the version-info file. ======================== PRDK Release Notes release: oct29_2007 ======================== # Issue: Vulnerability in writePuck and writeDatasheet # Affects: PUCK reference design implementation hardware # and PUCK-enabled devices with writable # datasheets It is possible that the information in the datasheet will be lost if the user terminates (ctrl-c) the writePuck or writeDatasheet utilities. It appears that the existing shutdown hooks (intended to preserve the datasheet) are not allowed to complete before the JVM is halted. If this happens, the datasheet in the PUCK hardware will possibly have been erased if the program was terminated before all write operations were completed. The datasheet may be restored using the writeDatasheet utility. If you are using the PUCK reference implementation hardware, a copy of the original datasheet is included with the hardware. The datasheet properties template included in the prdk/doc/samples directory may alternatively be used to create a new file that may by used with writePuck.