FujiNet: Difference between revisions

From RetroWikipedia
Jump to navigation Jump to search
Created page with "== FujiNet == '''FujiNet''' is a modern hardware peripheral designed primarily to enhance the connectivity and functionality of 8-bit home computers. Initially developed for the Atari 8-bit computer line, FujiNet has since expanded to support other classic platforms, including the Apple II, Coleco ADAM, Commodore 64, Tandy Color Computer, and others. The device provides networking capabilities via Wi-Fi and emulates a wide range of legacy peripherals such as disk drives..."
 
No edit summary
Line 1: Line 1:
== FujiNet ==
== FujiNet ==


'''FujiNet''' is a modern hardware peripheral designed primarily to enhance the connectivity and functionality of 8-bit home computers. Initially developed for the Atari 8-bit computer line, FujiNet has since expanded to support other classic platforms, including the Apple II, Coleco ADAM, Commodore 64, Tandy Color Computer, and others. The device provides networking capabilities via Wi-Fi and emulates a wide range of legacy peripherals such as disk drives, modems, and printers.
'''FujiNet''' is a multi-peripheral emulator and Wi-Fi network adapter for vintage 8-bit computers. Originally developed for the Atari 8-bit line, it allows classic systems to interface with modern networks and virtual devices. The FujiNet hardware connects via standard peripheral ports, such as Atari's SIO, and supports functions such as disk emulation, modem communication, and printer output. Development has since expanded to support other platforms, including the Coleco ADAM, Apple II, Commodore 64, Atari Lynx, ZX Spectrum, and more.
 
What distinguishes FujiNet from other network solutions is its unique '''N: device'''—a network abstraction layer that allows systems without native TCP/IP capabilities to access the Internet via Wi-Fi. This network device enables communication with modern internet protocols without requiring the host system to handle complex processing.
 
FujiNet supports a wide range of network protocols and services, including:
* TCP
* UDP
* HTTP / HTTPS (SSL/TLS)
* FTP
* TNFS (Trivial Network File System)
* SSH
* TELNET
* WebDAV
* JSON parsing
 
The FujiNet project is fully [[open-source]], with all hardware schematics and firmware released under permissive licenses. Source code, documentation, and hardware files are available on GitHub.<ref name="github">[https://github.com/FujiNetWIFI FujiNet GitHub Repository]</ref>


=== History ===
=== History ===


FujiNet originated in late 2019 as a community-driven initiative aimed at building a network interface for the Atari 8-bit family via the SIO (Serial Input/Output) port. The project quickly evolved into a comprehensive SIO peripheral emulator, offering support for both virtual devices and Internet-based functions. Its name pays homage to the Japanese electronics manufacturer Fujitsu, though the project has no official affiliation.
FujiNet began in late 2019 as an initiative to provide Atari 8-bit computers with Wi-Fi connectivity and virtual peripheral support. Originally envisioned as a network-only adapter, it evolved into a general-purpose peripheral emulator. The name "FujiNet" is a nod to the Fuji symbol used by Atari and a play on network functionality.
 
Development is open-source and hosted primarily on GitHub, where the hardware schematics, firmware, and documentation are maintained by a growing community of contributors.


=== Hardware ===
=== Hardware ===


The hardware is based on the '''ESP32-WROVER''' module, a powerful microcontroller with integrated Wi-Fi and Bluetooth capabilities. FujiNet includes a microSD card slot for local storage, and a custom-designed 3D-printed SIO plug/receptacle for physical interfacing with supported computers.
The current hardware is based on the '''ESP32-WROVER''' microcontroller, which integrates Wi-Fi, Bluetooth, and sufficient processing power to offload modern internet tasks. The design includes a microSD card slot, custom 3D-printed connectors (especially for the Atari SIO port), and firmware flash memory. Hardware versions are regularly revised and released as open-source designs.
 
Multiple form factors have been developed to match different platforms and aesthetic styles (e.g., 400/800 and XL/XE form factors for Atari computers). As of version 1.5, hardware revisions are produced in small batches with files released under open licenses for home assembly.


=== Supported Platforms ===
=== Supported Platforms ===


FujiNet now supports the following platforms, in various stages of implementation:
FujiNet supports multiple 8-bit computing systems, including:


* '''Atari 8-bit family''' – Complete and stable   
* '''Atari 8-bit computers''' – Complete and stable   
* '''Coleco ADAM''' – Complete and stable   
* '''Coleco ADAM''' – Complete and stable   
* '''Apple II & III''' – Near complete (supports both DISK II and SmartPort protocols)   
* '''Apple II & III''' – Near complete (supports DISK II and SmartPort)   
* '''Commodore 64''' – Functioning (in conjunction with “Meatloaf” project)   
* '''Commodore 64''' – Partial support (via Meatloaf interface)   
* '''Tandy Color Computer''' – In progress  
* '''Tandy Color Computer''' – In development  
* '''Atari Lynx''' – Limited, but complete  
* '''Atari Lynx''' – Limited functionality  
* '''RC2014 (Z80)''' – Software complete; hardware in development  
* '''RC2014 (Z80)''' – Software stable; hardware in design  
* '''ZX Spectrum''' – Bus hardware nearing completion  
* '''ZX Spectrum''' – Hardware interface in progress  


=== Functional Overview ===
=== Functional Overview ===


FujiNet emulates several standard devices for Atari systems and equivalents for other platforms. Each emulated device has a corresponding identifier:
FujiNet virtualizes several peripheral devices, each identified with legacy-style device names:


{| class="wikitable"
{| class="wikitable"
! Device !! Description !! Status !! Notes
! Device !! Function !! Status !! Notes
|-
|-
| C: || Cassette Emulator || Working || Load/save .CAS files from SD or TNFS
| C: || Cassette || Working || Load/save CAS files from SD or network
|-
|-
| D: || Disk Drive || Working || Supports .ATR, .ATX, .XEX from SD or TNFS
| D: || Disk drive || Working || Supports ATR, ATX, XEX via SD or TNFS
|-
|-
| R: || Modem || Working || 850 modem emulation with BBS and terminal compatibility
| R: || Modem || Working || Emulates 850 modem; supports Telnet and BBS programs
|-
|-
| P: || Printer || Working || Outputs to downloadable PDFs or HTML
| P: || Printer || Working || Saves print output as PDF or HTML
|-
|-
| N: || Network Device || In Progress || Handles TCP/UDP, Wi-Fi config, HTTP, NTP, etc.
| N: || Network || In Progress || Manages TCP/UDP, TLS/SSL, protocol translation
|-
|-
| Other || Misc. Devices || Varies || Bluetooth (SIO2BT), RTC, Text-to-Speech (SAM), MIDI
| Other || Misc || Varies || Bluetooth (SIO2BT), NTP clock, SAM voice, MIDIMaze
|}
|}


FujiNet handles these virtual devices through the Central I/O (CIO) system of the Atari OS, allowing software written in most languages (including Atari BASIC) to utilize networked resources transparently.
Example of FujiNet being used in Atari BASIC to access an HTTP resource:
 
==== Example BASIC Code ====


<syntaxhighlight lang="basic">
<syntaxhighlight lang="basic">
Line 58: Line 67:
100 CLOSE #1
100 CLOSE #1
</syntaxhighlight>
</syntaxhighlight>
This example demonstrates loading content via HTTP directly from an Atari BASIC program.


=== Features ===
=== Features ===


* '''Wi-Fi Configuration GUI''' directly accessible from host system 
* Emulates multiple peripherals (disk, printer, modem, cassette)
* '''TNFS protocol support''' for loading remote disk images 
* Supports remote disk access via TNFS
* '''Printer emulation''', including classic Atari printers and PDF output 
* Integrates a graphical Wi-Fi configuration tool
* '''Modem support''' for Telnet and legacy BBS connections 
* Enables network programming in legacy environments
* '''Time sync''' with network time protocol (NTP) 
* Offloads cryptographic and networking protocols
* '''Bluetooth SIO bridge''' and MIDI multiplayer (MIDIMaze) experiments 
* Customizable firmware updated over Wi-Fi
* '''TLS/DTLS cryptographic support''' via offloading to ESP32 
* JSON parsing support for modern APIs
 
=== Development and Community ===
 
The FujiNet project is developed in the open, with firmware development now using PlatformIO instead of Arduino IDE. Community involvement spans Discord chat, AtariAge forums, GitHub repositories, and a growing collection of instructional videos on YouTube.


Official firmware, source files, and documentation are hosted at:
=== Community and Development ===


* [https://github.com/FujiNetWIFI FujiNet GitHub Repository]
FujiNet is developed collaboratively by retrocomputing enthusiasts. Communication occurs via GitHub, Discord, and forums such as AtariAge. Firmware development transitioned from Arduino IDE to PlatformIO for improved modularity and scalability. Community-created videos, wikis, and documentation support users in building and using their own FujiNet devices.
* [https://fujinet.online FujiNet Official Website]


=== Reception and Legacy ===
=== Reception ===


FujiNet has been widely praised in the retrocomputing community for revitalizing legacy systems with modern capabilities. It is seen as a model of how hardware adapters can enable old systems to remain usable in a contemporary context without extensive modification. The project's open nature has inspired similar initiatives for other computing platforms.
The retrocomputing community has widely adopted FujiNet, appreciating its ability to modernize classic systems without requiring invasive hardware changes. It has revitalized interest in 8-bit computing, especially through its robust network support and peripheral emulation.


== See Also ==
== See Also ==
Line 91: Line 93:
* [[Retrocomputing]]   
* [[Retrocomputing]]   
* [[Peripheral]]   
* [[Peripheral]]   
* [[Open-source hardware]]


== References ==
== References ==


<references>
<references>
<ref name="github">[https://github.com/FujiNetWIFI/fujinet-platformio FujiNet GitHub Repository]</ref>
<ref name="github">[https://github.com/FujiNetWIFI FujiNet GitHub Repository]</ref>
<ref name="site">[https://fujinet.online FujiNet Official Website]</ref>
<ref name="site">[https://fujinet.online FujiNet Official Website]</ref>
<ref name="atariage">[https://atariage.com/forums/topic/298575-fujinet #FujiNet - a WIP SIO Network Adapter for the Atari 8-bit], AtariAge Forums</ref>
<ref name="atariage">[https://atariage.com/forums/topic/298575-fujinet #FujiNet - a WIP SIO Network Adapter for the Atari 8-bit], AtariAge Forums</ref>

Revision as of 18:28, 3 August 2025

FujiNet

FujiNet is a multi-peripheral emulator and Wi-Fi network adapter for vintage 8-bit computers. Originally developed for the Atari 8-bit line, it allows classic systems to interface with modern networks and virtual devices. The FujiNet hardware connects via standard peripheral ports, such as Atari's SIO, and supports functions such as disk emulation, modem communication, and printer output. Development has since expanded to support other platforms, including the Coleco ADAM, Apple II, Commodore 64, Atari Lynx, ZX Spectrum, and more.

What distinguishes FujiNet from other network solutions is its unique N: device—a network abstraction layer that allows systems without native TCP/IP capabilities to access the Internet via Wi-Fi. This network device enables communication with modern internet protocols without requiring the host system to handle complex processing.

FujiNet supports a wide range of network protocols and services, including:

  • TCP
  • UDP
  • HTTP / HTTPS (SSL/TLS)
  • FTP
  • TNFS (Trivial Network File System)
  • SSH
  • TELNET
  • WebDAV
  • JSON parsing

The FujiNet project is fully open-source, with all hardware schematics and firmware released under permissive licenses. Source code, documentation, and hardware files are available on GitHub.[1]

History

FujiNet began in late 2019 as an initiative to provide Atari 8-bit computers with Wi-Fi connectivity and virtual peripheral support. Originally envisioned as a network-only adapter, it evolved into a general-purpose peripheral emulator. The name "FujiNet" is a nod to the Fuji symbol used by Atari and a play on network functionality.

Hardware

The current hardware is based on the ESP32-WROVER microcontroller, which integrates Wi-Fi, Bluetooth, and sufficient processing power to offload modern internet tasks. The design includes a microSD card slot, custom 3D-printed connectors (especially for the Atari SIO port), and firmware flash memory. Hardware versions are regularly revised and released as open-source designs.

Supported Platforms

FujiNet supports multiple 8-bit computing systems, including:

  • Atari 8-bit computers – Complete and stable
  • Coleco ADAM – Complete and stable
  • Apple II & III – Near complete (supports DISK II and SmartPort)
  • Commodore 64 – Partial support (via Meatloaf interface)
  • Tandy Color Computer – In development
  • Atari Lynx – Limited functionality
  • RC2014 (Z80) – Software stable; hardware in design
  • ZX Spectrum – Hardware interface in progress

Functional Overview

FujiNet virtualizes several peripheral devices, each identified with legacy-style device names:

Device Function Status Notes
C: Cassette Working Load/save CAS files from SD or network
D: Disk drive Working Supports ATR, ATX, XEX via SD or TNFS
R: Modem Working Emulates 850 modem; supports Telnet and BBS programs
P: Printer Working Saves print output as PDF or HTML
N: Network In Progress Manages TCP/UDP, TLS/SSL, protocol translation
Other Misc Varies Bluetooth (SIO2BT), NTP clock, SAM voice, MIDIMaze

Example of FujiNet being used in Atari BASIC to access an HTTP resource:

10 OPEN #1,12,0,"N:HTTP://WWW.GOOGLE.COM/"
20 DIM A$(1024):TRAP 100
30 INPUT #1,A$:PRINT A$:GOTO 30
100 CLOSE #1

Features

  • Emulates multiple peripherals (disk, printer, modem, cassette)
  • Supports remote disk access via TNFS
  • Integrates a graphical Wi-Fi configuration tool
  • Enables network programming in legacy environments
  • Offloads cryptographic and networking protocols
  • Customizable firmware updated over Wi-Fi
  • JSON parsing support for modern APIs

Community and Development

FujiNet is developed collaboratively by retrocomputing enthusiasts. Communication occurs via GitHub, Discord, and forums such as AtariAge. Firmware development transitioned from Arduino IDE to PlatformIO for improved modularity and scalability. Community-created videos, wikis, and documentation support users in building and using their own FujiNet devices.

Reception

The retrocomputing community has widely adopted FujiNet, appreciating its ability to modernize classic systems without requiring invasive hardware changes. It has revitalized interest in 8-bit computing, especially through its robust network support and peripheral emulation.

See Also

References

Cite error: A list-defined reference named "site" is not used in the content (see the help page).
Cite error: A list-defined reference named "atariage" is not used in the content (see the help page).
Cite error: A list-defined reference named "citing" is not used in the content (see the help page).
Cite error: A list-defined reference named "perfect" is not used in the content (see the help page).