I figured it out. The manual doesn't explicitly mention SDOs but it does say whether an index can be assigned to a PDO and I ignored that information the first time around.
260B, 260C, and 260D cannot be assigned to a PDO.
Is there another way of getting this information into HAL, or do I need to write a custom component?
There is no way to read an SDO value into hal as far as I know.
But as you say it wouldn't be too hard to write a user-space hal component in python
the runs the command "ethercat -p n upload 0x2608 0", parses the output and returns a value.
I mean, in principle.