I discovered a way to send 1-bit of data from the Commodore 64 to the Joysticks. And I use this one-bit of data to turn on/off the rumble in the gamepads through the Unijoysticle.Continue reading “Gamepad rumble support for the Commodore 64”
Unijoysticle 2 A500 is a device that enables Bluetooth gamepads and mice on the Commodore Amiga.
It is similar in functionality to the Unijoysticle 2+, but with some additional features tailored for the Amiga, like:
- Fits in the Amiga 500 / 1200 joystick port without additional cables
- New buttons:
- “mode” button: To easily cycle between “normal”, “mouse” and “enhanced” modes
- “swap” button: To easily swap joystick ports. Useful in many scenarios, specially in the Amiga 4000 where the joystick ports are swapped.
- Additional LED for status: Tells whether Bluetooth pair is enabled, and in which gamepad mode is selected.
In addition to that, the firmware (Bluepad32) was updated to support:
- Mouse support: this was #1 feature request!
- Console support: useful to change settings in runtime like:
- change mouse resolution
- change autofire clicks-per-second
- debug commands
- and other useful settings
- Improved re-connection on PlayStation and Switch gamepads.
See all the new Bluepad32 v3.5 features here: Bluepad32 v3.5 released
And last, but not least, the User Guide has been updated with new content, photos and videos to make it easier to read for the user:Continue reading “Introducing Unijoysticle 2 A500”
TL;DR: Support for Amiga and Atari ST mice, USB console, and re-connect improvements.
I ‘m happy to announce that Bluepad32 v3.5 has been released. It contains two new big features:
- Mouse support
and many fixes & improvements here and there.
Mouse support has been added both at the “core” level, and at a “platform” level.
By “core” level, I mean that all platforms (Unijoysticle, NINA/AirLift, Arduino, etc.) receive the mouse information: x & y movement and the Left, Middle and Right buttons.
And by “platform” level, I mean that the Unijoysticle platform transforms the mouse data into quadrature events that both Amiga and Atari ST computers can understand.
See the complete list of supported mice here: supported miceContinue reading “Bluepad32 v3.5 released!”
For those not familiar with Unijoysticle 2, it is a device that allows you to use modern Bluetooth gamepads like Sony DualSense or Nintendo Switch controllers (to name just a few) on old computers like the Commodore 64 or Amiga.
What’s new in version 2+:
- Case friendly: lower profile, LEDs & buttons are close the border and has mounting holes.
- Looks nicer: Uses SMD components for almost everything
- Supports buttons 2 & 3 in port #2. Some Amiga games might use them.
- Cheaper to manufacture. I reduced the price from $60 to $35
“Amor para Dos” is a multi-platform 256-byte intro. The binary, without any kind of modification, can run both on:
- a 80386 (or better) + DOS
- and on a Commodore 64.
It is now possible to use Bluetooth gamepads both in Arduino and CircuitPython projects.
This means that you can use your PlayStation (PS3, PS4, PS5), Nintendo (Wii, Wii U, Switch) and Xbox One S gamepads in your electronics project: control a robot, home-automation, video games, etc… everything controlled from your favorite gamepad.
The catch is that not every Arduino or CircuitPython boards are supported. In fact, only a few of them are supported.
For Arduino, the boards that have the NINA-W10x (ESP32) co-processor are supported, like:
- Arduino Nano RP2040 Connect (great board, get one if you haven’t already)
- Arduino Nano 33 IoT
- Arduino MKR WiFi 1010
- Arduino MKR VIDOR 4000 WiFi
- Arduino Uno WiFi Rev 2
- …and probably a few more. If it has the NINA-W10x co-processor, it is supported.
And similar for CircuitPython, the boards that have the AirLift (ESP32) co-processor are supported, like:
- Adafruit MatrixPortal M4 (great to create a video-game console)
- Adafruit Metro M4 Express AirLift
- Adafruit PyPortal
- Adafruit PyBadge
With the additional benefit that you can use any CircuitPython board by attaching the stand-alone AirLift module:Continue reading “Bluepad32 support for Arduino and CircuitPython”
We have name: Quico. From now on, I’ll refer to this project as “Quico”:
- Quico (/ˈkiko/), short for Kids Console (or Kids Computer)
- Also, one of the main characters of El Chavo del Ocho
- Headphones: Audio jack
- or Speaker: 5V/GND/AudioOut pins
- Fits perfectly on top of the MatrixPortal M4
- Sturdy connection: 8 pins + 2 screws
- Easy to solder: All components are through-hole, except audio-jack (SMD) but it is as easy to solder as the rest.
- Open source / open hardware (docs, schematics, layout)
The ideal modern-retro video game console
My goal is to build a video game console for (my) kids. I want to teach them programming in a fun way: fun for them… and also fun for me. The video-game console features are:
- Modern components, with a retro “spirit”.
- Easy to program, a must.
- Chosen: Python, in particular CircuitPython
- Gamepad support: Multiple gamepads at the same time (multiplayer is a must).
- “Retro” sound:
- Chosen: SN76489 (more info down below)
- “Retro” screen:
- Chosen: 64×32 LED matrix. Let’s see what we can do in this extremely low-resolution screen.
- A powerful enough micro-controller:
- Chosen: Matrix Portal M4, mostly for convenience since it comes with an ARM Cortex M4, ESP32, “expansion port” + header to connect to the matrix LED. It already supports CircuitPython. As a bonus it has an accelerometer.
- Portability: It should be portable, no need to use an external power supply.
In other words, I’m building a Nintendo Switch killer. What will happen next is that Nintendo will run out of business. If this happens, my 7-year-old kid will kill me, since his dream is to be a video game designer at Nintendo… so probably I shouldn’t be that aggressive in my marketing campaign.Continue reading “Designing a modern retro console for (my) kids: Adding chiptune music”
I’m happy to announce the release of Bluepad32: gamepad support for the ESP32.
Bluepad32 is a firmware that runs in the ESP32 microcontroller. It supports all the modern Bluetooth gamepads like Sony (PS5, PS4, PS3), Microsoft (Xbox One S) and Nintendo (Switch, Wii) gamepads.
Who is this for?
This is for:
- …tinkers / makers / electronic hobbyist
- …that want to add gamepad support into their projects
- …in a maintainable and easy way
For further info, read: Adding new platforms.
Real world examples
- Unijoysticle 2: Gamepad support for the Commodore 64 / Amiga / etc.
- MatrixPortal M4: Gamepad support for the Adafruit AirLift family of boards
- ULX3S: An FPGA-based computer
Just add an ESP32 to your project, and control it with a gamepad!Continue reading “Bluepad32: Gamepad support for ESP32”
Unijoysticle 2 Christmas 2019 update, with support for:
- Nintendo Wii Remote
- Nintendo Wii U Pro Controller
- Nintendo Wii Remote + Nunchuk extension
- Nintendo Wii Remote + Classic Controller extension
- Nintendo Switch Pro controller
- 8BitDo family: all modes supported (Switch, Windows, Mac, Android).
- iCade 8-bitty
It also supports:
- Amiga / Atari-St 3-buttons joystick
And it is self-powered!
For further info see: