- 8B PDO config: ULINT-sized payload, no 0x1A01 diag PDO on SM3 (device rejected SM3=8 with diag assigned: 'size not allowed, min/max 0xa') - twin_layout_blob_sized(): single 64-bit mapping entry for 8B payloads - Ticker: per-byte XOR 0x5A transform in 8B mode so TwinCAT can verify every byte individually (1KB path unchanged, const-guarded) - TwinCAT automation scripts: deploy with RPC retry, LinkVariables-based whole-array relink (element links only carry 1 byte), ADS watch, diag - Docs: 8B design, verification methodology, test report
13 lines
1008 B
PowerShell
13 lines
1008 B
PowerShell
#Requires -Version 5.1
|
|
Write-Host "=== TwinCAT Events (last 30 min) ===" -ForegroundColor Cyan
|
|
Get-WinEvent -FilterHashtable @{LogName='Application','System'; StartTime=(Get-Date).AddMinutes(-30)} -ErrorAction SilentlyContinue |
|
|
Where-Object { $_.Message -like '*TwinCAT*' -or $_.ProviderName -like '*TwinCAT*' } |
|
|
Select-Object TimeCreated, ProviderName, Id, LevelDisplayName, @{N='Message';E={$_.Message -replace "`r`n",' ' -replace "`n",' ' | ForEach-Object { $_.Substring(0,[Math]::Min(200,$_.Length)) }} } |
|
|
Format-Table -AutoSize
|
|
|
|
Write-Host "=== TwinCAT Services ===" -ForegroundColor Cyan
|
|
Get-Service | Where-Object { $_.Name -like '*TwinCAT*' -or $_.DisplayName -like '*TwinCAT*' } | Select-Object Name, DisplayName, Status, StartType | Format-Table -AutoSize
|
|
|
|
Write-Host "=== TwinCAT Processes ===" -ForegroundColor Cyan
|
|
Get-Process | Where-Object { $_.ProcessName -like '*Tc*' -or $_.ProcessName -like '*TwinCAT*' } | Select-Object ProcessName, Id, StartTime | Format-Table -AutoSize
|