Ok, duh! I couldn't extrapolate from the demo's that the "Grid" part of the .Read option should be the name of the controller. I assumed it was the name of the grid.
Beginner's luck I guess :)
It is working by doing:
.DataSource(dataSource => dataSource
.Read(read => read.Action("Index", "TypeCode"))
TypeCode is the name of my controller.