AMiRo-OS: Issueshttps://opendata.cit-ec.de/https://opendata.cit-ec.de/favicon.ico?14265323552019-11-14T10:52:36ZResearch for Cognitive Interaction
Redmine Feature #596 (New): automated test scripthttps://opendata.cit-ec.de/issues/5962019-11-14T10:52:36ZThomas Schöppingtschoepp@techfak.uni-bielefeld.de
<p>Introduce a test script, that sweeps compile parameters (e.g. AMIROOS_CFG_DBG), compiles all modules with these settings and evaluates compilation results (success, failure, warning) to match the expected output.<br />Since such a thorough compilation test will probably take quite some time, this should not be executed automatically by some CI tool but only on demand.</p>
<p>Preferably, this script will be included in the ./setup.sh bash script environment.</p> Feature #591 (New): More generic QtCreator project setuphttps://opendata.cit-ec.de/issues/5912019-03-08T12:20:12ZThomas Schöppingtschoepp@techfak.uni-bielefeld.de
<p>Recently, the AMiRo-OS QtCreator project setup script has been enhanced to use the GCC output for generating according project files. This enhancement should be ported to AMiRo-BLT and enhanced, so also AMiRo-OS (as well as any further higher level projects) can take advantage of this script.</p> Feature #589 (New): Enhanced I/O eventshttps://opendata.cit-ec.de/issues/5892019-03-08T12:13:28ZThomas Schöppingtschoepp@techfak.uni-bielefeld.de
<p>Currently I/O interrupts result in I/O events and propagate the causing EXTI line via event flags (e.g. EXTI <a href="https://opendata.cit-ec.de/issues/3" class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="fix colored output in installink target (Closed)">#3</a> propagates (1 << 3) = 0x00000008). Since EXTI lines can aggregate multiple I/O pins (e.g. PA3 and PC3) this method can result in ambiguous events, because only the EXTI line but not the actual pin is specified.</p>
<p>To solve this issue, I/O events should not propagate plain eventflags_t data, but a struct like<br /><pre>
struct {
uint32_t flags : 24; // alternatively 28
uint32_t pin : 8; // alternatively 4
};
</pre>Since there is no EXTI hardware so far which provides more than 24 lines this solution is feasible. Alternatively the ratio can be set to 28:4 assuming that there will not be more than 2^4-1 pins aggregated in a single EXTI line. The -1 is important here, since the value of <code>pin</code> = 0 must be reserved to indicate ambiguity. This was the new method is compatible to plain eventflags_t and there might be cases where the exact pin can not be determined.<br />The determination can be realized within the ISR, which is called by the EXTI driver.</p> Feature #587 (New): Implement I2C bus clear functionhttps://opendata.cit-ec.de/issues/5872019-02-25T16:02:00ZThomas Schöppingtschoepp@techfak.uni-bielefeld.de
<p>Implement the I2C bus clear function as specified by the <a href="https://www.nxp.com/docs/en/user-guide/UM10204.pdf" class="external">I2C standard</a> (Rev. 6; section 3.1.16).<br />This function should also be made available as dedicated unit test command.</p>
<p>Such a procedure has already been implemented for <a href="https://opensource.cit-ec.de/projects/amiro-os/repository/revisions/1.0_stable/entry/boards/DiWheelDrive/board.c" class="external">AMiRo-OS v1</a> as well as a device specific reset for the AT24C01B EEPROM.</p> Feature #586 (New): Configurable shell historyhttps://opendata.cit-ec.de/issues/5862019-02-25T15:53:41ZThomas Schöppingtschoepp@techfak.uni-bielefeld.de
<p>Introduce a configurable buffer for the shell, which holds the N last commands.<br />With N set to 0, the behavior should be like now, with the input buffer acting as a <em>wannabe</em> 1-command history.<br />With N set to 1, the behavior would be very similar, but there would be a <em>true</em> 1-command history.</p>