{"id":20716303,"url":"https://github.com/wfd3/hayes","last_synced_at":"2025-04-23T13:21:11.920Z","repository":{"id":57620003,"uuid":"90888384","full_name":"wfd3/hayes","owner":"wfd3","description":"Hayes Modem emulator for Raspberry Pi","archived":false,"fork":false,"pushed_at":"2022-06-14T23:59:57.000Z","size":1492,"stargazers_count":26,"open_issues_count":1,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-30T00:03:49.790Z","etag":null,"topics":["hayes","modem","raspberry-pi","vintage"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wfd3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-10T17:00:31.000Z","updated_at":"2024-10-28T06:39:12.000Z","dependencies_parsed_at":"2022-09-16T19:12:12.006Z","dependency_job_id":null,"html_url":"https://github.com/wfd3/hayes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wfd3%2Fhayes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wfd3%2Fhayes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wfd3%2Fhayes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wfd3%2Fhayes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wfd3","download_url":"https://codeload.github.com/wfd3/hayes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250439371,"owners_count":21430839,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hayes","modem","raspberry-pi","vintage"],"created_at":"2024-11-17T03:05:25.429Z","updated_at":"2025-04-23T13:21:11.892Z","avatar_url":"https://github.com/wfd3.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hayes\nConnect vintage computers to the Internet.  Turn a Raspberry Pi 3, some associated hardware bits, and some Go into a fully functional and RS-232 compliant Hayes Smartmodem.\n\n```\nCommand line options:\n  -addressbook file\n    \tAddress Book file (default \"./addressbook.json\")\n  -keyfile file\n    \tSSH Private Key file (default \"./id_rsa\")\n  -logfile file\n    \tDefault log file (default stderr)\n  -nossh\n    \tDon't start SSH server (default false)\n  -notelnet\n    \tDon't start telnet server (default false)\n  -serial device\n    \tSerial device (eg, /dev/ttyS0)\n  -speed speed\n    \tSerial Port speed (bps) between DTE and DCE (default 115200)\n  -sshport port\n    \tNetwork port number for inbound sshd sessions (default 22000)\n  -syslog\n    \tLog to syslog (default false)\n  -telnetport port\n    \tNetwork port number for inbound telnet sessions (default 20000)\n```\n\nModem commands supported:\n* ATA - Answer\n* ATD - Dial\n*\tATE - Command state echo\n*\tATH - Hook command \n*\tATL - Speaker volume\n*\tATM - Speaker on/off\n*\tATO - On-line command\n*\tATQ - Result code options\n*\tATS - Register commands \n*\tATV - Result code fomat\n*\tATW - Negoitation Progress message selection\n*\tATX - Call progress options\n*\tATZ - Soft reset\n*\tAT\u0026C - Carrier Data Detect (CDC) options\n*\tAT\u0026D - Data Terminal Read (DTR) options\n*\tAT\u0026F - Recall factory profile (factory reset)\n*\tAT\u0026S - Data Set Ready (DSR) options\n*\tAT\u0026V - View Configuration Profiles\n*\tAT\u0026W - Write active profile to memory\n*\tAT\u0026Y - Select stored profile for hard reset\n*\tAT\u0026Z - Store telephone number\n\nModem Command Extensions:\n*\tAT* - Show internal state\n* AT*network - Show network status\n* AT*ledtest - Run the LED test\n* AT*help - debug comamnd help\n* ATDH*host:port* - Dial *host:port*\n* ATDE*host:port|username|password* - Dial *host:port|username|password* using an SSH tunnel\n* AT\u0026Z*n*=D - Delete phone book entry *n*\n   * NOTE: The addressbook configuration file allows phone number:\u003chost, port, protocol, ... \u003e mapping to enables traditional number based dialing.\n\n \n\"Faked\" Modem Commands (perform no action but return OK):\n* ATB\n* ATC\n* ATF\n*\tATI - Internal tests (just parrots a Hayes Smartmodem 96)\n* ATN\n* ATP\n* ATT\n* ATY\n* AT\u0026A\n* AT\u0026B\n* AT\u0026G\n* AT\u0026J\n* AT\u0026K\n* AT\u0026L\n* AT\u0026M\n* AT\u0026O\n* AT\u0026Q\n* AT\u0026R\n* AT\u0026T\n* AT\u0026U\n* AT\u0026X\n\nRS232 compliance:\n* SD/TX, RD/RX, DSR, DTR, RI, DCD pins are supported.\n* RTS/CTS flow control is not (AT\u0026K0 is set), alhough the pins are active.\n\nParts needed:\n\n* Raspberry Pi 3\n* MAX3232 IC's (3)\n* DB9\n* Some jumpers\n* Some LEDs and resistors\n\nThe docs/ directory has some basic pin mappings and a crude Fritzing diagram (https://github.com/wfd3/hayes/blob/master/docs/Modem%201.fzz).  \n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwfd3%2Fhayes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwfd3%2Fhayes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwfd3%2Fhayes/lists"}