Hi
I would like to know a bit more of the state-machines RTnet has been built. Going through the codes, I am not sure whether what i have realised it correctly or not, but please do direct me as i go along. btw this is TDMA v1 i am referring to (to start with).
Well, don't expect that V1 is necessarily easier to understand than V2. E.g. there is a lot redundant stuff both in the protocol and the implementation of the current TDMA.
for the master
what is it that the SOF (start-of-frame) is built up of?, and is suppose to do. To my understanding of Master/slave real-time networking, it is for the global synchronisation event of a new cycle (round). Another purpose is for some sort of current configuration acknowledgement, though this part should have been noted in stage 2 configuration does it have any more other purposes ?
The SOF (or the "Synchronisation frame", as it is now called in V2) has the purpose to synchronise the clocks of all stations within a network segment to allow a collision-free media access according to the assigned time slots. Another purpose in both versions is to create a global time base also for other events than the beginning of a transmission slot (the latter would only require relative times).
Note: "stage 2" is a term of the RTcfg protocol which must not be confused with the TDMA protocol. RTcfg is designed to support TDMA as well as any other future MAC discipline. It was developed after TDMA V1, therefore many configuration features are currently available in both protocols. This will change with TDMA-V2.
In tdma_task_master function of tdma_task.c file, it shows, after sending the SOF packet it performs a sem_broadcast, what is this
Check tdma_dev.c and examples which uses this interface: it allows you to synchronise your cyclic application on the SOF transmission/reception.
intended for ? the kind of RT task required to be unblocked ? followed by dequeue client skb. what kind of packet are their to dequeue ?
"client" is unfortunately the wrong term. These are application data packets to be sent in the master's payload time slot right after the SOF. Note: In V2, you don't have this implicit slot assignment for masters anymore.
for client..
upon on calling of the function
ioctl_rt(tdma, RTMAC_RTIOC_WAITONCYCLE, ..), does this wait till the next fresh cycle before it releases the lock or the closest available cycle?
See above.
what is the meaning of heartbeat? for synchronisation purposes?
No, heartbeat - and now we are talking again about RTcfg, not TDMA - is used for station monitoring. It is more a soft-real-time mechanism which is running at lowest real-time priority. See RTcfg.spec.
in the tdma_task_client function of tdma_task.c file, the loop performs a
rtos_event_wait, which blocks until some process release the lock. How does this process relate to the sending of heart beat and ioctl_rt for RTMAC_RTIOC_WAITONCYCLE ? I am assuming it also calculates the next tdma->wakeup time so it may wait till its time to transmit packet across the network after unblock.
The only purpose of tdma_task_client is sending the payload data in the correct time slot. Waking up application which called RTMAC_RTIOC_WAITONCYCLE is handled by the SOF reception routine (http://www.rts.uni-hannover.de/rtnet/lxr/source/rtmac/tdma/tdma_event.c#L1281), heartbeats are sent by the RTcfg service.
Sorry about all these stupid questions, but I am just rather curious how RTnet manages its protocols
No problem. Maybe others already ask themselves the same questions but just didn't post them to the list. RTnet has grown a lot and still needs further restructuring to become more understandable, modular, and extensible - nevertheless, it already works! :)
Jan
------------------------------------------------------- This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more http://productguide.itmanagersjournal.com/guidepromo.tmpl _______________________________________________ RTnet-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/rtnet-users

