Cosa: An Object-Oriented Platform for Arduino programming

Some more updates to the Cosa Socket/Ethernet Controller (WIZnet W5100) support:

  1. Integration of DHCP with the W5100 device driver.
    A new W5100 device driver member function is introduced to allow DHCP based network address assignment and other network information (subnet mask, gateway and DNS network address).
    Interface: https://github.com/mikaelpatel/Cosa/blob/master/cores/cosa/Cosa/Socket/Driver/W5100.hh#L605
    Example: https://github.com/mikaelpatel/Cosa/blob/master/examples/Ethernet/CosaNTP/CosaNTP.ino#L52

  2. Network Time Protocol (NTP) client.
    Client access to network time server. Integrated with the Cosa time_t data type to allow synchronization/setting of RTC such as DS1307 and DS3231.
    Interface: https://github.com/mikaelpatel/Cosa/blob/master/cores/cosa/Cosa/INET/NTP.hh
    Example: As above.

  3. Cosa Time support class update
    New data type clock_t introduced. This data type is seconds from NTP Epoch. New time_t constructor to allow conversion from clock_t to time_t and easy update of RTC/print out.
    Interface Cosa/Time.hh at master · mikaelpatel/Cosa · GitHub
    Example: As above.

Cheers!