Projekt

Allgemein

Profil

Wiki » Historie » Version 52

Maximilian Seesslen, 05.11.2024 16:03

1 40 Maximilian Seesslen
[[Schematics]]
2
3 1 Maximilian Seesslen
h1. Wiki
4
5
There are some issues that can only be tested via power resets.
6
7
* SPI has an issue that it needs retries
8
* Looks like configuration I2C EEPROM gets reset to defaults
9 3 Maximilian Seesslen
* RTC-offline-test (Wie lange haelt die RTC Batterie)
10 1 Maximilian Seesslen
11 3 Maximilian Seesslen
The device has an CANBus in and an CANBus out. The testsoftware is on the DUT. The DUT sends the command to toggle power line to Awaria via CAN.
12
The switch-off time has to be an parameter. The RTC-Tests will be complex, the Awaria software shall be simple and generic.
13 2 Maximilian Seesslen
14
An data multiplexer can be used along with a mosfet for power line.
15 13 Maximilian Seesslen
Data lines for CAN and UART have to be cut. 
16
In order to cut UART, an Debug-Adapter chaining would be needed. Or Uart is available via Host-USB.
17 2 Maximilian Seesslen
18 15 Maximilian Seesslen
Optionally controll it via USB from PC, not MCU. Optically isolated GPIOs.
19 12 Maximilian Seesslen
20 14 Maximilian Seesslen
h1. Problem
21
22
Circuit does not help at all when power is injected into device via Pullup of RS232. Lines can be disabled too. But whole
23 1 Maximilian Seesslen
debug connector can cause issues: No debug connection at all.
24 15 Maximilian Seesslen
FPC with UART only? All signals disconnectable?
25 14 Maximilian Seesslen
26 37 Maximilian Seesslen
A problem is the debug adapter. Switching the signals from one MCU to another is not nice. 
27
Flashing the MCU that controlls the lines may result in dead board. Fixed lines are better; always able to flash a device.
28
29 38 Maximilian Seesslen
-Usually a reset is enough. The total off test is quite special. But there is no output available.-
30
31
The periphery tests need a complete disconnect, even when for some problems a reset was enough.
32
33
Uart of Awira? optional when main tests are running on PC.
34
DUT is connected to Awira via debug connector and canbus or power line.
35
Awira is connected to CAN bus.
36
PC is connected via debug board to Awira, signal routed to DUT.
37 39 Maximilian Seesslen
Flip-Flop for debug routing would be nice. A big button to route the debug port is nice.
38
SN74LVC1G80DCKR
39
2xUart
40 38 Maximilian Seesslen
2xSWD
41 1 Maximilian Seesslen
2xBoot/Reset
42
VDD Target
43 39 Maximilian Seesslen
-Jumperresistor to connect the uart of the DUT to awaria.-
44
45 24 Maximilian Seesslen
h1. Usecases
46 1 Maximilian Seesslen
47
* Devices have their own test-software and ask awaria to perform an power-cycle for them. Result is stored in option Bytes.
48 41 Maximilian Seesslen
** Because the software is running on DUT, debug can stay routed to DUT.
49
50 24 Maximilian Seesslen
* PC performs test. DUT has to send Log-Events when errors show up and when device is up and running. DUT firmware can be the productive firmware.
51
** Tester-Firmware on PC is quite generic
52 1 Maximilian Seesslen
** CAN may not be available yet (CANDis). That was one intention of repeated log code
53 24 Maximilian Seesslen
** CANDis may be configured to use USB. No UART output here. USB does also not help then.
54 41 Maximilian Seesslen
55 30 Maximilian Seesslen
* Long time tests. Device can be in a permanent reboot loop with alternating writing/reading EEPROM. Awaria can persist status and result. Cordyceps can readout values at any time.
56 24 Maximilian Seesslen
57 28 Maximilian Seesslen
h2. Usecases with products
58 1 Maximilian Seesslen
59 36 Maximilian Seesslen
* I2C has an issue that some times the board has to wait at bootup quite long time till i2c eeprom is functional.
60 42 Maximilian Seesslen
** How much time can it take till i2c is functional
61
** Is fix working 100%; device will boot 100 times
62 36 Maximilian Seesslen
63
* CANDis looses touch calibration; SPI has an issue that some times the board has to wait at bootup quite long time till spi flash is functional.
64 42 Maximilian Seesslen
** How much time can it take till i2c is functional
65
** Is fix working 100%; device will boot 100 times
66 36 Maximilian Seesslen
67 1 Maximilian Seesslen
* CANDis; measure RTC durability
68 46 Maximilian Seesslen
** Can be done via Awaria in case the test has to run over months
69 43 Maximilian Seesslen
70 1 Maximilian Seesslen
* CANSwitch; check I2C-EEPROM-Config reliability
71 36 Maximilian Seesslen
72
* Long time boot tests
73 43 Maximilian Seesslen
74
* Miniminutnik
75
** redirected Uart would make sense here
76 25 Maximilian Seesslen
77 28 Maximilian Seesslen
h2. Problems:
78
79
* RTC: Cant check if there was an I2C problem or RTC was actually not valid. CI2cSlace-Class needs better status handling besides "isPresent". DeviceError or ContentError
80
* Waste biwak with TDT-Specific values? Use own error code range. LogEvents support custom data types.
81 25 Maximilian Seesslen
82 2 Maximilian Seesslen
h1. Parts
83
84
* MCU: The smallest thing
85 34 Maximilian Seesslen
* Multiplexer: "Link":https://www.tme.eu/de/katalog/analoge-multiplexer-und-schalter_100222/?params=383:1443902,1474454_anzahl-kanale:4,16&activeView=parameter&onlyInStock=1&productListOrderBy=1000015
86 3 Maximilian Seesslen
** MC14551BDG bis zu 1K RON: 1050
87
** TS5A23166DCUR cool, 2 channels, up to 100mA, 1,8-6,5V
88 6 Maximilian Seesslen
** Habe:
89 7 Maximilian Seesslen
*** DG408LEDQ-T1-GE3; .#273;  1:8
90 20 Maximilian Seesslen
*** DG409LEDQ-T1-GE3; .#321;  2x 1:4
91 8 Maximilian Seesslen
*** ADG736; .#315; 2x1:2
92 20 Maximilian Seesslen
*** *RS2102XN ADG836YRMZ* Das ist er; 2x
93 21 Maximilian Seesslen
** MAX4760; 8 Channels; Paarweise schalten
94
** TMUX1574 4xSPDT; 1 Schalter
95
** PI5C3257QE; 4xSPDT; 1 Schalter; 0.229€
96 6 Maximilian Seesslen
97 32 Maximilian Seesslen
* Big EEPROM, device can store test info from DUT. Maybe a second EEPROM just for costom data persisting. Can hold data in RAM.
98 4 Maximilian Seesslen
99
Spannungs/Strom zu umstaendlich.
100 10 Maximilian Seesslen
101 35 Maximilian Seesslen
"Cables":https://www.tme.eu/de/katalog/ffc-fpc-bander_113269/?params=673:1451575;425:1478584;1184:1479746&activeView=parameter&queryPhrase=fpc&onlyInStock=1&productListOrderBy=1000015
102
103 10 Maximilian Seesslen
h1. RTC-Tests
104
105
Can have a region in SPI-Flash.
106 11 Maximilian Seesslen
If the Settings are not ok, just have an terminal.
107
The test can only be started from terminal.
108
rebootTest <startTime>
109
110 10 Maximilian Seesslen
Start. 
111
* Cut 2 Seconds. Time OK?
112
* Cut 4 Seconds. Time OK?
113 1 Maximilian Seesslen
* Cut 8 Seconds. Time OK?
114 11 Maximilian Seesslen
115
When it fails, "destroy" test-config in spi flash
116 12 Maximilian Seesslen
117 48 Maximilian Seesslen
h1. Off-Desk tests 
118
119
* Awaria can toggle an CANDis till RTC is not valid any more.
120
* The test could run for month
121
* An eeprom is enough to store the result. The device can be connected to PC and data can be read via UART or CAN.
122
* Only CAN may be connected when debug is not accessible on device. Target Node-ID has to be configured. This can be done via CAN.
123
* Progress LEDs needed
124
* This is the 99,9% solution.
125
* Broken EEPROM-Config can not be detected because ID does not match any more; result is timeout. But reboot can be stoped, problem can be seen.
126 49 Maximilian Seesslen
*
127 48 Maximilian Seesslen
128 12 Maximilian Seesslen
h1. Connectors
129
130
* CANBus-In
131
* CANBus.Out
132 45 Maximilian Seesslen
* -Power in, 5V, 3V-
133 31 Maximilian Seesslen
* Power out, 5V, 3V
134 17 Maximilian Seesslen
* -USB PC to MCU-
135 1 Maximilian Seesslen
* -USB PC to DUT-
136 45 Maximilian Seesslen
* Debug in
137
* Debug out
138 17 Maximilian Seesslen
139
Debug, CAN, power only?
140 18 Maximilian Seesslen
CAN-Geraete koennten auch standalone laufen, Testsoftware auf PC.
141
142
2x Uart
143
2x SWD
144
1x Reset
145 19 Maximilian Seesslen
1x Boot0
146
2x CAN
147 22 Maximilian Seesslen
(DEBUG: VDD_5VIN, GND, VDD_TGT, SWO)
148 23 Maximilian Seesslen
149
USB schalten is overkill, andere Platine.
150 47 Maximilian Seesslen
151
* Battery lifetime checks.
152
153 1 Maximilian Seesslen
* How long does minutnik-eink run with one charge?
154 47 Maximilian Seesslen
** It has to send pings via Uart.
155 51 Maximilian Seesslen
** Printing uptime periodically would do the job. -> Avoid power injection?
156 52 Maximilian Seesslen
157
h1. Further examples
158
159
* Toggle miniminutnik till eeprom error. Instead of an battery, the 3V connector has to be feeded.
160
Strange setup; PC reads UART output of DUT and controls Awaria via CAN.