I am not familiar with the process for purchasing development. I am a software developer (not android) but want to short cut time to get something to work with what I already have.
Requirement for an android app
1. Suitable for Nexus 4 Jelly Bean
2. Suitable for Nexus 7 Jelly Bean
3. To begin with create TCP (or accept UDP from it if easier) connection to an address given through the UI (probably on the LAN - but if not then could assume through put through router to LAN for a known port)
At later point could improve 3 roughly like...
3a. Broadcast (UDP?) binary "tab"
3b. receive a tcp connection request, which is accepted
3c. then this binary"tba" (or possibly just UDP response)
3c. This means ...
4. Receive asynchronously from the TCP connection data packets of this form
byte 1: 0x02 (value 2 indicates environmental data)
byte 2: 0x02 (value 2 indicates demand data)
byte 3-5: XXX (3 ascii character indicating an appliance, eg KET (Kettle))
byte 6-7: a two byte integer (short?) indicating change in watts consumption TO this value
5. Display graph or graphs of the watts against time...
...such that one can include and exclude appliances (seen so far) from the graph(s)
...and can equally view this/these graph(s) for the preceding 15 mins, hour, half day, day week etc...
...perhaps also enable the graph(s) to show "now" in the middle of the graph, so we can watch the graph actually happening
Later extensions might include:
Requirement for an android app
1. Suitable for Nexus 4 Jelly Bean
2. Suitable for Nexus 7 Jelly Bean
3. To begin with create TCP (or accept UDP from it if easier) connection to an address given through the UI (probably on the LAN - but if not then could assume through put through router to LAN for a known port)
At later point could improve 3 roughly like...
3a. Broadcast (UDP?) binary "tab"
3b. receive a tcp connection request, which is accepted
3c. then this binary"tba" (or possibly just UDP response)
3c. This means ...
4. Receive asynchronously from the TCP connection data packets of this form
byte 1: 0x02 (value 2 indicates environmental data)
byte 2: 0x02 (value 2 indicates demand data)
byte 3-5: XXX (3 ascii character indicating an appliance, eg KET (Kettle))
byte 6-7: a two byte integer (short?) indicating change in watts consumption TO this value
5. Display graph or graphs of the watts against time...
...such that one can include and exclude appliances (seen so far) from the graph(s)
...and can equally view this/these graph(s) for the preceding 15 mins, hour, half day, day week etc...
...perhaps also enable the graph(s) to show "now" in the middle of the graph, so we can watch the graph actually happening
Later extensions might include: