Comments (4)
The KNX bus has no idea about which GA uses which DPT. You have to tell calimero the DPT, then you can convert it accordingly.
For the most common types, you find the converters here: https://github.com/calimero-project/calimero-core/tree/master/src/tuwien/auto/calimero/dptxlator
from calimero-core.
As i mentioned my problem is not the conversion from KNX encoded to human read able data.
I already used the DPTXlator to get the according Data right. My question was if i there is a way to "map" the human readable the DPTXlator returns to boolean values (true/false).
At the moment i made a workaround for the 1.xxx DPT's
private void print(final String svc, final ProcessEvent e) {
try {
System.out.println( e.getSourceAddr() + "->"
+ e.getDestination() + " " + svc + ": "
+ DataUnitBuilder.toHex(e.getASDU(), ""));
String id=DPM.get(e.getDestination()).getDPT();
DPTXlator t;
t = TranslatorTypes.createTranslator(0,id);
t.setAppendUnit(false);
t.setData(e.getASDU());
String s=t.getValue();
System.out.println("translation complete DPID:"+id+"Value:"+s);
Boolean b=true;
Float f=(float) -1;
if(id.startsWith("1")){
Integer val=Integer.valueOf(DataUnitBuilder.toHex(e.getASDU(), ""));
b=Integer.valueOf(val).equals(1);
System.out.println("bool");
}
else{
f=Float.valueOf(s);
System.out.println("float");
}
System.out.println("DPT ID:"+id+"B:"+b+"||F:"+f);
} catch (KNXException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
from calimero-core.
Use can use DPTXlatorBoolean::getValueBoolean
. Also note, that in cases a numeric representation makes sense (including booleans), you can use DPTXlator::getNumericValue
.
from calimero-core.
Thank you very much, this did the magic.
from calimero-core.
Related Issues (20)
- [Feature Request] Add support for security proxy
- Datapoint type discovery HOT 1
- DPT8 missing in README.md HOT 1
- Mangamementclient no basic restart anymore with v2.5? HOT 3
- [Feature Request] "protected" for some fields and methods of ManagementClientImpl HOT 6
- Warnings from Calimero HOT 13
- Receiving a GroupValueResponse with DPT 1.001 fails due to missing data in the asdu HOT 2
- DPT 251.600 format should be consistent across platforms and locales HOT 3
- readBool maxASDULen should be ‘1’ ?,now is ‘0’ HOT 1
- Android project runtime FATAL EXCEPTION. HOT 5
- GO Diagnostics: Improve selection of surrogate HOT 10
- DPT 10.001 is wrongly parsed when "no day" is present HOT 2
- Throws Exception when EventListener catch one HOT 2
- KNXNetworkLinkFT12: detect status, CEMI setting.... HOT 2
- Implement Transport Layer Connection-Oriented State Machine Style 3 HOT 2
- Throws `KNXTimeoutException` due to missing confirmation although the confirmation was received HOT 2
- Calimero GUI and KNX Virtual HOT 2
- Data Secure - Read Group Request management HOT 2
- Not able to connect to KNX USB RF module HOT 1
- Can not connect to serial port in tpuart monitor on Android HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from calimero-core.