Oh, right. I thought you meant the firmware on the photon, on gateway the
I’m not sure how to debug the gateway firmware. I’ve never needed to so
far, sorry. There is one routine in there I would update eventually for the
TCPClient support. But for now, the gateway Photon code just works around
it, and simply enough.
Hmmm. Are you sure you need to be delving into the gateway firmware? The
gateway NRF’ merely shuffles low level BT data packets between DKs and the
gateway’s Photon. All the user data protocol handling is done on those, not
in the gateway NRF at all. Unless you’re planning on implementing bluetooth
protocols on the gateway itself, I cannot imagine why you would need to
make changes in the gateway NRF firmware. Wait … did you mention having
BT audio devices register with the NRF on the gateway? Be aware that these
modules can only handle a maximum of eight BT connections. It one is in use
for, say audio, then that’s one less DK that can connect, for example.
(Assuming I understand things correctly. Pretty sure.)
You should be able to implement anything else you need between the DK
firmware and the Photon sketch on the gateway. For example, I implemented
the entire deep DK firmware TCPClient functionality without touching the
gateway firmware. So again, I really don’t think you want to be dipping
your toes in there.
For things that don’t already have Spark Wiring implementations to
re-implement (like TCPClient did) – that is, completely new protocols for
some kind of custom device, Eric’s idea is to shuffle said custom data back
and forth between DK and Photon on the gateway shield using the custom
data, “channel”, as already implemented in the DK firmware and in the
Gateway Shield Photon sketch.
Do you know about that already – or is this the first you’ve heard of it?
The exact name of the functions elude me just now. But I can look it
tomorrow and point you in the right direction if needed. There are a pair
of functions on the DK end of things for sending and receiving custom data
packets and something similar implemented in the gateway Photon sketch –
the receiving end being an empty function declaration with a comment
something like, “anything send using the CUSTOM_DATA channel will arrive
Sorry, this is all off the top of my head from stuff I haven’t actually
seen for a couple months. Hope it’s all accurate enough!
I’m outta time. Gotta run. Hope it helps some!