New Open Source Hardware design is verified: ESP32-SBC-FabGL single board computer based on FabGL library with PS2 keyboard, mouse and VGA display with many retro computer emulators

I learned about the FabGL library when we started manufacturing AgonLight2. The ESP32 was used as a graphics, sound, and IO keyboard co-processor for Bernardo’s Z80 design.

Upon checking the library, I discovered that the author, Fabrizio Di Vittorio, had already created several emulators for Altair8080, VIC20, and even old DOS PCs!

This is how the idea for ESP32-SBC-FabGL was born. I wanted to create a board that could be used as a graphics/sound/IO co-processor for other retro computers based on different processors.

Here is the ESP32-SBC-FabGL layout 105 x 65 mm board:

ESP32-SBC-FabGL uses ESP32-WROVER with 4MB Flash and 8MB PSRAM.

As you may guess, this will be very convenient platform to create Retro Computers based on same principle as AgonLight2, so some Retro Computers based on this platform will follow, but do not ask when 😉

The Access bus will provide interface to retro processors hats for Graphics, Sound, Keyboard and Mouse.

The LCD hat will allow handheld Game consoles to be created easily.

The LiPo battery charger and connector provide stand alone operation without USB connection.

Today we build the first prototypes and they work as expected.

All FabGL demos works!

Altair8080 with CP/M:

IBM-PC with DOS:

It was quite blast from the past to see Turbo Pascal 3.0 running

Boy it took me a while to remember how to quit the editor 🙂

ESP32-SBC-FabGL will be ready for sale in June.

We will put it on the web with pre-order state this week.

The price will be EUR 15.00.

In this price is included royalties for the Author of FabGL, so by buying this board you will support Fabrizio and his further developments.

Tsvetan

ESP32-POE and ESP32-POE-ISO now can be ordered with WROVER module with 8MB PSRAM

ESP32-POE and ESP32-POE-ISO are the most popular ESP32 boards with Power over Ethernet features. They are supported by ESPhome, Arduino, MicroPython, PlatformIO and of course Espressif SDK.

Some customers need more than the WROOM module 520KB of RAM and asked for revision with more RAM and we released WROVER version with 8MB of PSRAM.

The tradeoff is that WROVER module uses some ports to access the PSRAM and GPIO16 becomes non available on the EXT2 connector. Beside this everything is same as with the WROOM modules.

AgonLight Open Source Hardware Retro Computer Running BBC Basic was captured in KiCad and updated by Olimex

AgonLight is a well-documented small computer based on the Z80 family and running BBC BASIC.

With a VGA output and a PS2 Keyboard this is a stand alone retro style computer.

The project is open source hardware and software.

AgonLight may be also seen as an embedded BASIC computer as it has plenty of GPIOs available to interact with other components and modules.

The AgonLight was designed by Bernardo Kastrup and the Quark firmware is developed by Dean Belfield.

The project has an active Facebook group https://www.facebook.com/groups/agoncomputer/

We got a few inquiries from customers asking if Olimex is interested in making this project and we hesitated at first due to having the bad experience in the past with Maximite pseudo open source project.

After exchanging a few words with Bernardo via Twitter, we became confident that this is a true open source hardware project.

We checked the schematic and decided to do some small changes.

  • We decided to re-capture the design in KiCad instead of EasyEDA
  • The power of the original AgonLight is delivered by a USB-A connector which is quite odd and USB-A to USB-A cables are less popular. We decided to replace it with USB-C connector which is used in all new phones, tablets and devices due to the new EU directive. Usually everyone has such a cable at home to charge and transfer files to their cell phone.
  • We replaced the Linear voltage regulator with DCDC which delivers up to 2A current.
  • We added a battery LiPo charger and step-up converter which allows operations even if external power supply is interrupted.
  • The original design had a PS2 connector for a keyboard and required a USB to PS2 adapter to operate with the more available USB keyboards. We replaced the PS2 connector with a USB-A connector so a normal USB keyboard (which supports PS2) can be directly plugged-in to AgonLight
  • We routed the AS7C34096A-10TCTR SRAM with 40 ohm impedance lines as per the datasheet
  • Fixed a wrong signal naming in the ESP32-PICO-D4, which now is updated in the original AgonLight documentation.
  • Replaced the bare header 32-pin connector with a plastic boxed 34-pin connector following the same layout and adding two additional signals Vbat and Vin which allow AgonLight to be powered by this connector too.
  • Added a UEXT connector (https://www.olimex.com/Products/Modules/) which allows AgonLight to be connected to: temperature sensors, environmental air quality sensors, pressure, humidity, gyroscope, light, RS485, LCDs, LED matrix, relays, Bluettooth, Zigbee, Lora, GSM, RFID reader, GPS, Pulse, EKG, RTC etc.

We changed most of the components to our component base, which we source and stock in large quantities and allow us to bring the cost down.

The design was completed 1 week ago:

Today the first blank PCBs arrived:

Next week we will assemble 5 pcs to test by ourselves and then send to the original AgonLight developers.


AgonLight will be put on our web and available for pre-order next week with a special Christmas price of EUR 50 for a completely assembled, programmed and tested computer.


If the prottotypes are good mass production will follow and all pre-orders taken to 23.12.2022 will be shipped by the end of January.

We plan to make metal case and other accessories in the near future.

ESP32-POE and ESP32-POE-ISO back in stock

Silicon Labs stopped selling Si3204 POE controllers which were inside our very popular ESP32-POE and ESP32-POE-ISO boards. There is no stock anywhere neither information when they will be back in stock. So back in August we start searching for alternative and we evaluated several other solutions. We liked most Texas Instruments and made some prototypes and verified that they works fine.

Then we run blank PCBs in production but unfortunately we hit two major Chinese Holidays, so instead the blank PCBs to arrive in the normal 2 weeks we had to wait 5 weeks to produce our order then another week to arrive here.

Meantime we sold out all our stock of ESP32-POE and POE-ISO and created solid backlog before we stop the sales on the web.

We are glad that this week we shipped all backlog orders and now the boards are again for sale!

The new revisions of the boards are REV.G and the PCB info will be updated on GitHub tomorrow. From user point of view nothing changes – the new revision operates exactly the same and have same functionality as the previous Silicon Labs based solution.

New Open Source Hardware OSHW board with ESP32-S2 have native USB-OTG allowing USB host and device functionality with ESP32-S2 low power modes down to 20uA are possible

ESP32-S2 is new SOC from Espressif, compared to ESP32 it has no Bluetooth and Ethernet connectivity, but offers plenty of GPIOs and has native USB-OTG interface.

Our first version uses USB to Serial converter as Espressif IDE at that time didn’t support programming via the native USB interface, but now their SDK supports USB programming, so we released new version without the not necessary USB-Serial converter.

To the best of our knowledge this is the first board to the market where USB-OTG is implemented and the board can work both in device and host mode ( at least as hardware 🙂 )

The hardware now is ahead of software as USB host functionality in SDK is missing yet, but at least we provide hardware platform for the future.

ESP32-S2-DevKit-Lipo-USB is OSHW so the CAD files are available on GitHub if someone want to see how we implement the USB-OTG. It’s really complicated as we wanted to keep the handheld battery operation and keep the LiPo charger and battery circuit. This leads to quite some over engineering around the power supply as the battery should charge when USB-OTG works in Device mode, and source 5V to the USB-OTG when it’s in Host mode!

It took us 2 revisions until we made it right, so thanks for your patience, now the board is in stock and orderable.

ESP32-S2-WROVER-DevKit-Lipo-USB with WROVER module with 2MB RAM is also available for these who want to write big applications.

New Board with ESP32-S2 with LiPo charger unleash the native USB-OTG functionality

We recently released our ESP32-S2-DevKit-Lipo development board with ESP32-S2 SOC. It has the same functionality and pinout as Espressif ESP32-S2-Saola-1, but in addition it has a LiPo charger and battery management and is designed for Ultra low power – only 30uA consumption when on battery and deep sleep. This allows handheld battery operated applications. The LiPo part can power external sensors/circuits. This board has a built-in programmer with a CH340T USB-Serial convertor.

Many have noticed that ESP32-S2 has a native USB-OTG. Then why did we put the CH340T on it? The reason is that the Espressif SDK didn’t support USB back when we designed this board.

Now Espressif SDK adds support for a USB bootloader and the programming of the ESP32-S2 can be done by the native USB interface, we decided to make a new revision where the native USB-OTG interface is used.

We wanted to keep the LiPo battery functionality and this created an interesting technical challenge: the USB-OTG port can be used both as device and host. When used as a device, the board is powered by the USB and LiPo battery is charging. When used as a USB host (i.e. you can attach USB devices to the port) the USB port must supply 5V to the USB devices connected. Our first prototype had a power supply problem: when the ESP32-S2 works as a host the battery is powering the USB-OTG port with 5V, but there is attached also the LiPo charger circuit, so infinite loop is made: battery -> step up to 5V -> USB -> LiPo chgarger -> battery 🙂

This issue was preventing us from releasing this board earlier, but now on Rev.B all of these issues are fixed so we are about to run production.

Needless to say we kept the ultra low power design and the new board also consumes as low as 30uA in deep sleep.

Searching on the net it seems that no one else has implemented a USB-OTG functionality to the ESP32-S2 yet so this one will be the first. Also to the best of our knowledge there is still no software support for a USB host on the ESP32-S2 but we hope after our hardware is released this will push and accelerate the software development further.

ESP32-S2-DevKit-LiPo-USB is going to be released as Open Source Hardware like other IoT solutions we have.

Implementation of OPC UA on ESP32-EVB

OPC Unified Architecture (OPC UA) is an open, implemented under GPL 2.0 license, machine to machine communication protocol for industrial automation developed by the OPC Foundation.

The OPC UA protocol specification consists of 14 documents for a total of 1250 pages. Due to this complexity, existing implementations are usually incomplete.

This is why we were puzzled to see on Twitter post by Selftronics that they made OPC UA server running on ESP32-EVB!

Here are the details of the implementation, the sources are at GitHub.

New Open Source Hardware IoT ESP32-S2 development boards with LiPo Battery Charger and consumption of only 30uA in deep sleep target handheld WiFi apps

ESP32-S2 is new SOC from Espressif which fills the gap between ESP32 and ESP8266.

It has the same memory model as ESP32 but has cut the Ethernet and Bluetooth parts, so only WiFi connection is possible – same as ESP8266, but offers more power, secure boot and encrypted firmware. Also support of decent SSL connection, something which lacks in ESP8266.

Pricewise now S2 is a bit lower cost than ESP32 and more expensive than ESP8266, but there is very strong competition in this niche coming from the new Bouffalo BL6XX chips, so my prediction is that to stay ahead Espressif will further lower the prices of ESP32-S2 to match ESP8266 very soon.

For comparison with ESP32 and ESP8266 the new ESP32-S2 has plenty of GPIOs up to 43!

Initially Espressif has announced that their ESP32-S2-WROVER modules will have as low as 2-4uA consumption, but later they increased this value to 20uA. Not quite well as their target but still very good achievement.

Our ESP32-S2-DevKit-Lipo is pin to pin compatible with ESP32-S2-Saola-1:

To keep compatibility with SAOLA-1 we add RGB LED, but also add LiPo battery charger and ESP32-S2-DevKit-Lipo can operate even without external power supply only on LiPo battery, there is battery level monitoring and external power supply sense. ESP32-S2-DevKit-Lipo can power external circuits with 3.3V up to 200mA when operate on battery.

ESP32-S2-DevKit-Lipo has build in programmer with CH340T. There is possibility the programmer part to be excluded and to use ESP32-S2 directy USB connection.

When operating on battery if the RGB LED is enabled the power consumption is ridiculous 700uA as the RGB LED appear to use lot of current even when not in operation, but there is RGB disable solder jumper which if opened you will not be able to operate the RGB LED on battery but will decrease the power consumption to total less 30uA in deep sleep.

For these who need more memory there is variant ESP32-S2-WROVER-DevKit-Lipo with 2MB of PSRAM.

The prices start from EUR 5.56 for ESP32-S2-DevKit-Lipo and EUR 6.36 for ESP32-S2-WROVER-DevKit-Lipo .

PWR-SWITCH is optically isolated EU style power load switch for up to 3500W, 230VAC/16A and can be driven with any microcontroller, Arduino, EPS32, or Linux computers directly with 3-24V

PWR-SWITCH hides the high voltage problems from the Arduino, ESP32, Raspberry Pi, Beaglebone, OLinuXino developers. It has 1500VAC optically isolation and can drive high voltage up to 230VAC / 16A loads safely.

To switch On or Off the loads from 3 to 24VDC can be used, so you can drive the loads with any microcontroller only 1mA is necessary to trigger the switch.

PWR-SWITCH is with EU stype plug and receptacle, so to use it in US or in UK you will need some of these:US to EU adapter, EU to US adapter or UK to EU adapter.

 PWR-SWITCH has CE-EMC and LVD certification.

Green LED show the switch status.

Open Source Software OpenMQTTGateway got initial support for Open Source Hardware ESP32-GATEWAY

OpenMQTTGateway project aims to concentrate in one Gateway different technologies like Bluetooth, LoRa, IR, lagacy RF 433/315, GSM/GPRS based devices and connect them with OpenHAB, Home Assistant, Jeedom, FHEM, Domotic etc platforms via MQTT protocol.

The list of the supported devices is long.

With recent PR initial support for ESP32-GATEWAY is add.

Previous Older Entries