Skip to content

jeffective/gatorcat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gatorcat

gatorcat is an EtherCAT maindevice written in the Zig programming language.

Warning

gatorcat is alpha software. Using it today means participating in its development. You may find bugs or need features implemented before you can use gatorcat effectively.

gatorcat provides the following:

  • CLI: a pre-built executable for running and scanning ethercat networks.
  • module: zig module for writing applications that interact with ethercat networks.

Documentation

See doc.

Notably Working Features

  • automatic configuration via SII and CoE
  • process data published on zenoh
  • network operation and topology verification against a config file
  • multi-OS support (Linux and Windows)

Notably Missing Features

  • distributed clocks
  • cable redundancy
  • Ethernet Over EtherCAT (EoE), also AoE, FoE, SoE, VoE
  • user configurable processing of CoE emergency messages
  • mapping the mailbox status into the process data
  • async / event loop frames, multi-threading friendly API
  • linux XDP, mac-os, embedded support
  • Segmented SDO transfer
  • EEPROM write access
  • Network diagnosis in the CLI (CRC counters etc.)

TODO

  • delete everything in stdx
  • change deserialization of embedded protocols to do zero backtracking

Sponsors

GitHub Sponsors

Please consider ❤️ Sponsoring if you depend on this project or just want to see it succeed.

Release Procedure

  1. roll version in build.zig.zon
  2. commit
  3. tag commit
  4. push commit, push tags
  5. wait for CI pass
  6. click release in github

Contributing

Please open an issue before contributing so we can discuss.

tests

About

An EtherCAT MainDevice for Zig

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors 2

  •  
  •  

Languages