You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, we have an abstraction called append_topic. It will take the first X CanPoints and append them to the NetField topic. It is limited to the beginning of the message and looks ugly. Further, all of our messages are parsed in a strict order.
Desired Additional Features
I want this to be location agnostic, so instead of topic_append you can use some sort of parsing of the topic.
For example you could have topic: "BMS/Pack/PerCell/Cell-{1}/Temp
The {1} thing will be referring to message number 1 in the CanPoints list. That will be appended in that position of the topic.
This also brings up the issue of nesting it. Therefore I am proposing a new YAML format where there is a message, a list of can points, and then those points are referred to in a list of net fields.
So you can have a netfield with topic BMS/Pack/PerCell/Cell-{1}/Temp and item_id: 2, where message 1 is the cell ID and message 2 is the temperature for that cell. The IDs are in order of message appearance.
Internally this will assign all CanPoints temporary variables, then subsequently push them to various topics as needed.
As you can see, the whole order is scrambed around. Indexed by 1. It is annoying because changes could shift the whole thing but so much more powerful.
Complete list of changes:
CANPoint:
new: parse (bool, default true) (whether to parse the bits or use .skip on them (basically what send used to do, if false and the ID is referenced in the message, fail to compile)
NetField:
name --> topic
points --> X
send --> X
topic_append --> X
new: value (int) (the can point to make the payload of the NetField)
CANMsg:
new: points (list[CANPoint]) (the list of CANPoint objs in order of their decoding)
Screenshots (as needed)
No response
The text was updated successfully, but these errors were encountered:
Current Features
Right now, we have an abstraction called append_topic. It will take the first X CanPoints and append them to the NetField topic. It is limited to the beginning of the message and looks ugly. Further, all of our messages are parsed in a strict order.
Desired Additional Features
I want this to be location agnostic, so instead of topic_append you can use some sort of parsing of the topic.
For example you could have
topic: "BMS/Pack/PerCell/Cell-{1}/Temp
The
{1}
thing will be referring to message number 1 in the CanPoints list. That will be appended in that position of the topic.This also brings up the issue of nesting it. Therefore I am proposing a new YAML format where there is a message, a list of can points, and then those points are referred to in a list of net fields.
So you can have a netfield with topic
BMS/Pack/PerCell/Cell-{1}/Temp
anditem_id: 2
, where message 1 is the cell ID and message 2 is the temperature for that cell. The IDs are in order of message appearance.Internally this will assign all CanPoints temporary variables, then subsequently push them to various topics as needed.
New YAML
And an example of topics
As you can see, the whole order is scrambed around. Indexed by 1. It is annoying because changes could shift the whole thing but so much more powerful.
Complete list of changes:
CANPoint:
new: parse (bool, default true) (whether to parse the bits or use
.skip
on them (basically whatsend
used to do, if false and the ID is referenced in the message, fail to compile)NetField:
name --> topic
points --> X
send --> X
topic_append --> X
new: value (int) (the can point to make the payload of the NetField)
CANMsg:
new: points (list[CANPoint]) (the list of CANPoint objs in order of their decoding)
Screenshots (as needed)
No response
The text was updated successfully, but these errors were encountered: