Hallo,
Wat doe op een verregende Hemelvaartsdag dag? een beetje "pielen"....
Ik had al een tijdje geleden mijn ESU ECoS 50000 voorzien van firmware update V 4.3.3. In deze versie, (en die daarvoor) zit de Booster manager in het protocol ingebouwd.
Hiermee zou het dus mogelijk moeten zijn om de booster metingen naar de PC te halen.
Dit doe ik al voor de Marklin CS 2/3 (al werkt het dat behoorlijk anders).
De gemeten waardes worden onderin op de status balk van JCS getoond.
Het is een leuke feature, vind ik, daar je een indicatie van de load krijgt van je centrale.
Op mijn ECoS zie dat er dus zo uit:

- ecos-stroom-monitor.png (6.51 KiB) 257 keer bekeken
Dus als eerst gezocht naar de Documentatie, helaas is die sinds 2011 niet meer bijgewerkt.
De exacte commando's zijn niet beschreven. Kortom dan maar reverse engineeren (...).
Even een beetje technisch, het ESU ECoS protocol werkt met ASCII commando's.
Ieder object heeft een ID en je kunt aan een object vragen welke attributen deze heeft.
Bij objecten moet je denken aan b.v. locomotieven, accessoires, feedback modules etc. De Ecos heeft voor ieder groep objecten een "Manager", zo ook de "BoosterManager".
Via deze "Managers" kun je de Locomotieven en accessoires uitlezen. De boosters zou het zelfde moeten gaan.
Met behulp van het onvolprezen programma
Packet Sender aan de slag gegaan.
De ECoS heeft een ingebouwde help functie. Deze maar eerst eens geprobeerd.
Als je naar TCP port 15471 het commando help() stuurt dan antwoordt de ECoS met:
Code: Selecteer alles
# Online help for the ECoSNet 0.5 implementation of your ECoS 4.3.3
#
#
# About help:
# help()
# This help.
# help(intro)
# Introduction to the ECoSNet interface.
# help(basic)
# Basic ECoSNet protocol description.
# help(syntax)
# Description of the syntax of ECoSNet.
# help(command)
# Short explanations of the available commands.
# help(error)
# List of implemented errors.
# help(<object>, [<command>, [<option>]])
# Further help to a specific topic.
#
#
# As a general advice, if something seems ambiguous, just give it a try.
# Most things will be obvious afterward.
#
#
# Please visit our website www.esu.eu
# See also there for the licence condition of this specification
#
#
# Implemented objectclasses:
# model
# programmingtrack
# pom
# loco-manager
# accessory[...]
Overigens kan dit ook met het programma telnet.
Uit de documentatie weet ik dat het id voor de booster 27 is dus:
help(27)
Code: Selecteer alles
# Objectclass: booster-manager
# ID: 27 (baseobject)
# Manager: 1 (model)
# Manages: All boosters.
# Description: The booster-manager manages all boosters.
#
# Attributes:
# objectclass
# view
# listview
# control
# list
# size
# objectclass
# name
Dan een query op de booster manager met commando
queryObjects(27):
Ah, 2 id's voor 2 boosters, zoals in het plaatje de in- en externe.
Dan met het commando
get(65000) de details opvragen:
Code: Selecteer alles
<REPLY get(65000)> 65000 objectclass[booster] 65000 view[none] 65000 listview[none] 65000 control[none] 65000 name["Interne booster"] 65000 status[GO] 65000 shutdownreason[NONE] 65000 maxlimit[4000] 65000 limit[4000] 65000 current[46,55] 65000 voltage[17443] 65000 temperature[39] 65000 accessorybooster[0] <END 0 (OK)>
Nu komen de benodigde key-words terug:
- 65000 is de id van de interne booster
- name is de naam, Interne booster
- status is GO, spanning staat aan
- limit: 4000 is de maximale stroom in mA
- current: 45, 55 is de gemiddelde stroom (45) en de piekstroom (55) in mA
- temperature: 39 is de temperatuur in de ECoS
- voltage is de spanning op de booster, 17443 mV of wel 17,443 V
De rest van deze key-words heb ik nog niet geïmplementeerd.
Nu ben ik wel benieuwd wat er gebeurd bij een externe booster (ID 65001). Die heb ik helaas niet dus alle waardes bij mij zijn 0, maar ik hou me aanbevolen als iemand die eens wil proberen
Ik heb nu de BoosterManager in JCS, geïmplementeerd, moet nog e.e.a. grondig door testen maar nu wordt ook bij de ECoS de baan(booster)-spanning en stroom gemeten, wel zo leuk.
Groet,
Frans