Homebrew VoIP server on a PIC

Technology
Homebrew VoIP server on a PIC

diy_webserver.jpg

Ben wrote in to share his latest labor of love, a homebrew VoIP-capable web server running on a… wait a minute, on a PIC? He admits that he isn’t the first to attempt this, but the VoIP routing bit is pretty exceptional.

His system is based around the PIC18F26K20 microcontroller. To cram everything into 4MB of storage and 4k of RAM, the entire system is written in assembler. The example TCP/IP stack provided by Microchip wasn’t up to his standards, so he went and wrote his own. Here are some of the features:

  • Homemade TCP/IP stack
  • supports 4 concurrent HTTP connections
  • various timeouts to keep the board “in line”
  • ~220kBps maximum transfer rate
  • 4MB onboard storage, programmed via TFTP
  • Custom lightweight file system (can open files by name!)
  • PIC18F26K20 microcontroller clocked at 64MHz
  • HTTP, Telnet, and TFTP servers
  • audio input/output, 8-bit @ 8kHz sampling
  • very basic VoIP capability with phonebook and automatic address resolution
  • an alarm clock with separate settings for each day of the week

Project documentation appears to be served by the device itself, which is pretty cool, however there is a tiny capacity problem since it can only handle 4 concurrent HTTP connections. Anyone know of a mirror?

Update: a mirror of the project site is available here

.

What will the next generation of Make: look like? We’re inviting you to shape the future by investing in Make:. By becoming an investor, you help decide what’s next. The future of Make: is in your hands. Learn More.

Tagged
Discuss this article with the rest of the community on our Discord server!

ADVERTISEMENT

Escape to an island of imagination + innovation as Maker Faire Bay Area returns for its 16th iteration!

Prices Increase in....

Days
Hours
Minutes
Seconds
FEEDBACK