src.dualinventive.com/fw/dncm/CHANGELOG.md

218 lines
8.0 KiB
Markdown

# Change Log
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres to [Semantic Versioning](http://semver.org/).
## [1.2.0] 2019-04-26
### Added
* Add support for config uid 103 (`dncm-force-vf-nl-network`) boolean for forcing VF simcard to VF NL (TWS-215)
* Add support for caching the `project:id` from the CAN bus RPC device node on DNCM startup using reqrep (DINET-82)
### Changed
* Make sure CAN message bursts will not result in CAN message ready drops by increase the `DI_CAN_CFG_MSG_TIMEOUT` to 1 second
* Led blink changed
* Red blink, connecting to Secure-Multi-Proxy
* Green blink
* 1 second, TCP connection without and DNCM RPC handshake
* 500 ms, DNCM RPC handshaked
* 250 ms, CAN device:uid registered
* Improve `DI_LOG` routing to support multiple variants (serial port, semihosting, sdcard, canbus) (DINET-82)
* The defaults are set as follows:
* `Debug` firmware logs to stlink programmer over semihosting
* `Release` firmware logs to sdcard (and is dropped when not present)
### Fixed
* Send GPS and communication status also with a project:id for the CAN device:uid (TWS-221)
* `DI_LOG` message got silently dropped for SDCard due to CAN message `src_id` was unset (DINET-86)
* RPC device:ping should return an OK reply and no `DNE_OPNOTSUPP` (TWS-215)
* RPC config:set reply for DNCM results in an timeout (DINET-76)
* Drop CAN RPC message from device when `device:uid` is not yet known to prevent sending as `...0` (TWS-193)
## [1.2.0-rc.2] - 2019-03-19
## Removed
* Don't force current band to GSM anymore (introduced in 1.2.0-rc.1) (TWS-193)
## [1.2.0-rc.1] - 2019-03-15
### Changed
* Change serial driver buffer for modem. Sized from 255 bytes to 2048 bytes which prevent overflow when multiple URCs
are received at once (TWS-193)
* Reduce `STM32_SERIAL_USART1_PRIORITY` from 7 to 5 so we will never miss any characters for the modem driver (TWS-193)
* Resize TCP buffer pool `DNCM_TCP_TX_POOL_SIZE` from 16 to 12 because we resized the serial driver buffer (TWS-193)
### Added
* Force current band to GSM only which prevents band hopping (TWS-193)
* Add support to receive messages over UDP and relay to CanBus (TWS-193)
## [1.1.1] - 2019-02-28
### Fixed
* Use same UDP configuration as the tcp endpoint and remove the hardcoded IP + port (TWS-190)
## [1.1.0] - 2019-02-26
### Added
* Enable shell on UART4 for test stimuli injection and development at 115K2 Baudrate (DINET-62)
* Add initial support for Realtime message routing over UDP (TWS-190)
* Add support for CanBus Realtime messages (TWS-192)
## [1.0.0] - 2019-01-21
### Fixed
* libdi: Fix integration build of DNCM when `DI_CAN_CFG_DBG_STAT` is enabled (DINET-79)
## [0.7.0] - 2018-10-16
### Added
* Add CAN net subsystem `DI_CAN_NET_DTYPE_NODE_UID` unicast request handler for requesting DNCM device:uid (DINET-68)
* RPC `connection:info` request handler (DINET-37)
* Support for XM1110 GPS receiver (DINET-40)
* Temperature sensor MCP9808 reporting to server with a interval of 15 minutes (DINET-41)
* Raise device error and submit to server when a leader conflict occurs, with new device:data publish (DINET-10)
### Changed
* Use new device:info version property (DINET-58)
* Change board.h for use with new hardware v4.x (hardware v3.x is only supported with firmware releases v0.6.x) (DINET-41)
* DNCM send correct sensor:info with its own device:uid (DINET-29)
* Report GPS, RSSI and BER sensor:data also as DNCM device:uid with same interval as set from the CAN bus
* Report correct RSSI and BER sensor:data for HL76xx modem (DINET-45)
### Removed
* Removed all RPC dncm class methods which are replaced by the new connection:info (DINET-37)
## [0.6.2] - 2018-05-14
**NOTICE** The next releases with versions v0.7.x and up can only be used on hardware version 4.
All v0.6.x releases are used for compatibility and bugfixes for hardware version 3.
### Changed
* Increase maximum packet size on the DNCM (DINET-34)
* can: Buffers changed from 32 msg / 1024 byte to 16 msg / 2048 bytes
* tcp: Transmit buffers changed from 32 bufs / 1024 byte to 16 bufs / 2048 bytes
## [0.6.1] - 2018-03-20
### Fixed
* Continuous Device busy message after a try again message during lock/unlock signals (DINET-14)
### Changed
* Auto-select APN based on SIM-card MCC & MNC (DINET-12)
* Enable the SDcard by enabling its power
* Post ahead reply messages in the mailbox to prioritize them above publish messages
## [0.6.0] - 2018-01-18
### Changed
* Updated `libdi` and `libdi_fw` to latest revision, includes fix for missed GPS-events (DINET-8)
* Increased ping-interval of the DNCM to 43 seconds to reduce network activity
* Only check the GPS interval at the modem GPS side to prevent possible mismatches in the administration
* Catch the CREG-value to see network deregistration faster
* Ask the CREG-status on boot and every 10 seconds when not registered (in case of missing URC's)
* Make a generic close function to allow for correct internal deregistration and forced leader give-up
* Stop creating manual bearer connections, the HL854x does this automatically
* Add a timeout of 60 seconds for connecting to TCP, when connecting fails, try again
* Handle TCP invalid session state problems better
* Reset when the modem does not reconnect within 120 seconds after disconnect
## [0.5.1] - 2018-01-17
### Changed
* Increased timeout for TCP connection because of slow initial network registration at T-Mobile (DINET-11)
* Return `DNE_PARAM` when RPC class-method is unknown instead of `DNE_BUSY` (DINET-7)
### Removed
* XBee support
## [0.5.0] - 2017-07-27
### Added
* DNCM uses its own `device:uid` to login to the server (Secure-Multi-Proxy)
* DNCM `device:info` is now available which has the `"type":"dncm"` property
* Gracefull disconnect TCP on watchdog monitor trigger
* Wait-for-interrupts sleep mode when in IDLE thread to safe power
* XBee CRTM gateway functionality
* Configurable GPS sensor sleep cycle and reporting
* Configurable Communication status (RSSI, BER) reporting
* Synchronize the DI-Net RPC timestamp every hour with the server
### Changed
* CAN-bus `device:uid` is registered with DI-Net Lowlevel Register message instead of previous Handshake
* Update ChibiOS to v16.1.7
* Set RTOS scheduler to 1KHz (was 10KHz), and reenable thread preemption (10ms)
* Disable RTC clock which was unused and saving power
* Use `di_fw_board_init` for setting device type and device board revision
* Handle all message sending over TCP by the TCP send thread and mailbox
### Fixed
* Low-power: GPS sleep cycle and set hl854x modem sleep mode to 1 instead of default 2
saves approximate 50mA (on 12V) when idle.
* CAN raw message connection state is connected when CAN device:uid is registered instead of
only a TCP connection is established.
* Watchdog monitor now resets time when sim card is ready
* Make sure we don't send more than 255 bytes to the mode when the DTR line is deassert which can
caused the `+KTCP_NOTIF=1,8`. By setting the ChibiOS serial driver driver to 255 bytes.
### Removed
* DI-Net RPC method `dncm:info` (replaced by `device:info`)
* DI-Net RPC method `dncm:reset` (replaced by `device:reset`)
* Partial internal RTC implementation
* Disable high speed internal oscillator to safe power
* Disable unused CAN2 peripherial to safe power
* IRQ handling for GPS PPS sync
* Reporting of GPS sensor, Communication status as DNCM `device:uid`
## [0.4.1] - 2017-02-16
### Added
* Support `device:errors` RPC message
### Fixed
* Read `device:uid` correctly over CAN-bus (CAN raw message)
### Changed
* STM32 EEPROM Flash driver uses new `di_config` interface
## [0.4.0] - 2017-12-21
### Added
* Initial DNCM DI-Net CAN-bus redundancy (redundant DNCM setup)
* STM32F4 internal real-time clock configuration
* Modem driver (`di_drv_hl854x`) now reads IMSI number
### Removed
* Disabled reading of onboard ds18b20 temperature sensor (due to BUG in onewire driver) which
creates timing issues in redundancy.
# [0.3.3] - 2017-09-27