0107 /* * * * * * * * * * * * * * * * * * * * * * * * * * * Vers Date Who What 01.00 22.09.03 RS - first release for production annuncicom ic 01b01 02.10.03 RS - added parameter to set command for IO/1 on/off actions - added command to set/reset talk via command - added command for reset to defaults without network - correct commands for factory defaults - extend length of init sequence to 64 characters - added command r= to send udp commands to other devices - added configuration parameter for udp and tcp cmd rx port 03.10.03 RS - fixed blocking streams if a client is missed 06.10.03 RS - added telnet port (default 12303) for telnet <-> serial (default 9600,8,n,1 no flowctrl) with parameter for port, baudrate, data-, stopbits, parity, flowcontrol - send back always with own udp rx port as destination - store last ip of commands for send back - fixed remote commands without protocol 07.10.03 RS - active open serial gateway (telnet) with destination ip and port. if both set this function is active. - stream udp to addr 0.0.0.0 is broadcasting on the subnet - if udp send stream port is 0 use udp rx port. if the udp rx port is 0 aus default port 3030 - added parameter to set command for CTS on/off actions - added command to set/reset cts via command - added parameter preset to store the selected preset 08.10.03 RS - don't allow sending during streaming - added command for forced talk - added status for talk, in-/exstreaming active and streaming mode and added them in getstate - fixed setup for concatenated command sequences - fixed volume control if loop to output is activated and the volume is temporary changed by user control 09.10.03 RS - added internet radio support for annuncicom - on active serial gateway test every 30s for a connection. if no answer after 1s activate serial command interface in the mean time - the green led blinks slow if sending and fast if receiveing. it is on if not sending nor recieving the red led blinks together with the green if talk is forced. it blinks every second time if talk is suppressed and it blinks together with the green led if talk is forced 10.10.03 RS - fixed encoder quality setting - pre play parameter new in msec 13.10.03 RS - PIO1 used to shoutdown amplifier if 0 21.10.03 RS - fix for correct value for D OUT (difference web page -> D OUT) - fix for broken streams 30.10.03 RS - added answer page for dynamic marks - fix for configuration of empty strings - added port and type to command set target and fixed command concatenation after this command - added definitions for inmode configuration for spdif1/2 in - fix for don't stop sending in streaming mode send on receive 12.11.03 RS - fix commands for html configuration 28.11.03 RS - fix web app vers in discover 01.02 08.12.03 RS - don't accept toggle command durning toggle time (discard it) - fix configuration positions of cts commands etc. 09.12.03 RS - removed telnet setup (available still in the bootloader) 01.03 17.12.03 RS - fix for string2url if character changed to %hh 08.01.04 RS - wait until streaming buffer empty before rx timeout executed 09.01.04 RS - stop streaming on buffer underrun, restart after start threshold bytes are received - play buffer default value set to 1024 06.02.04 RS - added command for set encoding quality - set single channel mode for encoding if mono is set 09.02.04 RS - activate command RESETTALK for instreamer too - set factory default for instreamer cts close command to RESETTALK and cts open to FORCETALK - fix for set config strings that contain the character & 17.02.04 RS - fixed streaming breaks on internet radio streams - set default play buffer size to 4096 - if rx stream is detected during sending (not forced) stop own tx stream - added parameter name for the device - changed setup and dyn. marks to newest version - added name parameter - added ir out support for instreamer - don't set pio22 as output because it isn't needed 22.02.04 RS - fixed rts/cts for serial gateway - set param pre start to 0 per default 24.02.04 RS - added ir gateway 27.02.04 RS - added no-cache to http response (for all dyn files and commands) 01.03.04 RS - show lan mac address, add id 6 for active mac (for wireless) - included TFTP - store volume correct if mute - removed balance and stereo out command 01.04 10.03.04 RS - use always stereo/mono from inmode parameter after autodetection of the input - added workaround for codec error (s/pdif) - fixed selection of optic. or coax. s/pdif in - faster sonic ip 12.03.04 RS - added sync master functionality 01.05 22.03.04 RS - added SNMP private tree and traps 23.03.04 RS - SPDIFOPT_EN (pio23) fix to 1 for always connect SPDIR to AGND 30.03.04 RS - sync output ptr is directly the input of the encoder, this moves the sync nearer to the original source 16.04.04 RS - don't stop reader for encoded data on buffer overrun 13.05.04 RS - buffer underrun mode disconnect or skip (incl. param) 14.05.04 RS - improved speed for web pages (read quasi peak only every 0.5s) - fixed and optimized encoder reading - fix for dyn. marks where string params are after 2. par - busy wait before testing command password - support for escape sequences in dyn. marks (without \o) - new dyn. mark for web application versions - support for set config cmd C= via serial, tcp and udp - check max. length of a serial command - added recursive dyn. marks (dyn. marks in dyn. marks) - added dyn. mark for !=, >, < - added dyn. marks for build date - don't wait on udp commands but send nothing back if something else currently is executed - fixed cmd blocking on an error - fixed file handle leak in web server - fixed file handle leak in read file for factory defaults 17.05.04 RS - send encoded data as soon as possible (2ms after last packet received) 18.05.04 RS - if stream connection type is tcp raw a port is set but no ip selected (0.0.0.0) use this as tcp listener - open tcp connection only actively if ip and port is set - fixed streaming status for status page - added dyn. mark for syncstate 01.06.04 RS - don't blink red led during instreaming 02.06.04 RS - fix passiv serial gateway disconnection from other partner (ex. power loss, network down, etc) 03.06.04 RS - send always full length sync packets (minimized bandwith) 07.06.04 RS - fixed encoder interrupt timing 08.06.04 RS - added talk commands with timeouts for keypads 09.06.04 RS - fixed tcp sending mode (tcpopts = 1) for serial gateway (immediate sending) - added functionality serial keypad (qtronix qx-022) including command send to selectable target s= for sending to a target out of a file, to one of the 8 targets in the config and directly to a specific ip/port (udp based) 10.06.04 RS - fixed fragmentation of tcp command answers - command e=255 reinitializes the encoder without change cfg - new faster encoder reading isp routine (bytewise in ram) 11.06.04 RS - fixed tcp stream sending over the buffer wrap - fixed optimized package length 14.06.04 RS - added monitor (only for instreamer) - fix/add (micronas) workaround for s/pdif on coaxial input 15.06.04 RS - return nosupport tag if c= is unknown - monitor encoded stream on headphone (not the original one) 16.06.04 RS - added a/d amplifier gain with parameter (default 0) - fixed setting for encoder clock 18.06.04 RS - added workaround for gargling sound (restart codec if crc is wrong) -> permanent serial debug output and syslog on restart codec) - added mp3 crc disable/enable parameter 21.06.04 RS - reset crc error counter on restart encoder workaround - added parameter bitreservoir used (default)/kept empty - added parameter channel mode extension (default enabled), copyright protection (default protected), copy (default)/original stream and emphasis (default none) - changed snmp mib number from 7777 to real barix id 17491 - added parameter for web server port 22.06.04 RS - added 'stream type' 'internet radio' and use the port as radio port (removed parameter 'radio port'). max. 6 streams are supported. 23.06.04 RS - fixed send status picture on send always 24.06.04 RS - fixed answer for commands that execute command sequences - use get_ticks and get_time instead of ticks and time - use telnet port as source port for active serial gateway 28.06.04 RS - restart encoder after 1 sec if no more encoded data received - added command toggle rts including toggle timeout parameter 01.07.04 RS - improved workaround for micronas encoder error (gargling) mp3 crc must be enabled! 12.07.04 RS - improved workaround for less but faster encoder restarts 13.07.04 RS - added dyn. mark for last caller ip address 14.07.04 RS - restart encoder after 1 sec if no more mp3 frame crc received - added command g= for open serial gateway to specific ip:port, if command executed from serial cmd interface the connection will be closed 1 sec after the last transmitted byte 15.07.04 RS - restart encoder every hour (workaround) 01.06 21.07.04 RS - removed restart encoder every hour (workaround) - restart sync on restart encoder workaround 05.08.04 RS - added parameter for sync port (0 for fix algorithm) - removed crc workaround and use easier workaround from micronas (read out every second D1:$9d8, restart codec if (bit[15:14] == 0) && (bit[0] == bit[16]) is false) 12.08.04 RS - removed tcp rx stream port. use 'stream to' for listeners - restart encoder if no data for 4s from encoder (workaround) 13.08.04 RS - fixed codec handling, locked access 23.08.04 RS - fixed streaming rom song (m=) during encoding 28.08.04 RS - fixed concatenated command seqeunces in configuration - don't discard udp commands during execution of another cmd - scan io's every 50ms (before 20ms) 31.08.04 RS - fixed timeout waiting for end of execution (5 sec) 11.09.04 RS - s/pdif workaround also if mono input is selected 01.07 21.09.04 RS - added * to ir cmd j= - fixed command b=, j=, l=, L=, r=, t=, T=, v= not terminated with 0x00 - fixed bug udp answer not always sent 22.09.04 RS - added volume with inc/dec, balance with inc/dec, bass with inc/dec, treble with inc/dec, loudness with on/off and inc/dec, mute with force, volumelock, mono out and T= commands for the instreamer - if no udp command port is set use the default udp command port for the command r - fixed crash if ir sent during sonic ip 08.11.04 RS - fixed corrputed html/tcp output - calc bitrate for sync every 50ms instead of 100ms 09.11.04 RS - send sync response not as broadcast - fixed crash if udp stream received during startup - if no ip is given for r= cmd (annuncciom ic only) and not yet received an ip then send it as broadcast 11.11.04 RS - fixed neg. values for balance, bass, treble (add c for dyn. mark 'print string if equal') - send back busy.ack on a udp command if currently a command is executed, fix udp and tcp packet loss 18.11.04 RS - fixed blocked listening caused by a underrun if the streaming buffer isn't filled up again by the sender and the rx tout occurs during this time - fixed blocking first command after execution of a parametrized command 02.12.04 RS - no timeout on active gateway cmd g= if executed from tcp - send ack immediately after g= cmd if exectued from serial */