Jump to content
IGNORED

PlusCart (an inexpensive DIY WiFi multicart)


Al_Nafuur

Recommended Posts

I re-checked each connection from gold-fingers to cpu pins: they are all ok and I found no shortcircuit, but it still does not work.

 

Hoping to be able to debug something, I started to read the code and, if I understood correctly, with no esp 01s connected the code on the STM32 should be stuck in "emulate cartridge firmware".  So I modified it like this hoping to see a blinking led, but the led just stays on (I tried several max values for the counter, I also tried removing the call to `HAL_GPIO_TogglePin`, the leds stays ON). There were an option to choose if I wanted to build the wifi or sdcard version, but when I used STM32CubeMX to set the PE0 as OUPUT I lost this option.

 

Should this modification make the LED blink when it is not even connected to the 2600 (just powered via usb) ? If not, can you guide me in finding where I should try to put the code ?

 

(once it works, I want to modify the code so it alway return the opcode for `NOP` on DATA, so I can check with the oscilloscop that Ax lines are going from 0 to 13^2-1 and Dx lines give the opcode)

Edited by Windless
Link to comment
Share on other sites

1 hour ago, Windless said:

I re-checked each connection from gold-fingers to cpu pins: they are all ok and I found no shortcircuit, but it still does not work.

👍

1 hour ago, Windless said:

Hoping to be able to debug something, I started to read the code and, if I understood correctly, with no esp 01s connected the code on the STM32 should be stuck in "emulate cartridge firmware".  So I modified it like this hoping to see a blinking led, but the led just stays on (I tried several max values for the counter, I also tried removing the call to `HAL_GPIO_TogglePin`, the leds stays ON). There were an option to choose if I wanted to build the wifi or sdcard version, but when I used STM32CubeMX to set the PE0 as OUPUT I lost this option.

 

Should this modification make the LED blink when it is not even connected to the 2600 (just powered via usb) ? If not, can you guide me in finding where I should try to put the code ?

It might work, but it will not help you to debug anything on a running 2600 (see my comment to your further plans below).

 

It would be easier to use the factory blink firmware to test your STM32 board, but this test will only confirm that the MCU is working.

 

1 hour ago, Windless said:

(once it works, I want to modify the code so it alway return the opcode for `NOP` on DATA, so I can check with the oscilloscop that Ax lines are going from 0 to 13^2-1 and Dx lines give the opcode)

This will not work. Setting the DATA port to NOP ($EA) will will make the 6502 program counter jumping at startup to the address $EAEA, which is in one of the Zeropage mirrors. The peripherals there will response to the requested addresses and the 6507 will get illegal instructions and crash.

 

Anyhow there is no single data port value that can be set from the ROM port that will hold the 2600 in an "stable" none crashed condition.

 

This means you will always need a working emulation, thus no changes to the firmware will get you any further here. The system will crash before you see any clues on your oscilloscope. And if you have a stable running firmware loop that is correctly serving the 2600 you will see the "result" on the TV and there is no need for a blinking LED to confirm this.

 

 

Link to comment
Share on other sites

Ok, last update :

 

The boot selection jumper was faulty. After replacing it with another one, the image displays on the 2600 \o/.

The ESP-S01, even with the shorted capacitor removed, does not work : no answer on serial port with a PC, and the PlusCart keep showing (+) if it is connected. I noticed it has a missing component. I've order new ones that I should recive in a few weeks.

 

Since I have neither wifi nor sdcard reader for now, is there a way to build a firmware that could get the rom via USB / UART, or to build the firmware with an "offline rom" of mine ? (currently the "offline rom" menu only dhow one garbage rom with garbage name)

Edited by Windless
Link to comment
Share on other sites

18 minutes ago, Windless said:

Ok, last update :

 

The boot selection jumper was faulty. After replacing it with another one, the image displays on the 2600 \o/.

The ESP-S01, even with the shorted capacitor removed, does not work : no answer on serial port with a PC, and the PlusCart keep showing (+) if it is connected. I noticed it has a missing component. I've order new ones that I should recive in a few weeks.

 

Since I have neither wifi nor sdcard reader for now, is there a way to build a firmware that could get the rom via USB / UART, or to build the firmware with an "offline rom" of mine ? (currently the "offline rom" menu only dhow one garbage rom with garbage name)

You can flash the offline ROMs tar file to sector 5. See PlusCart manual:

https://pluscart.firmaplus.de/pico/?Manual#offlineROMS

 

Link to comment
Share on other sites

Thank you! So nice to see the code running on real hardware and not an emulator!

 

w.

 

PS : I modified the formware so the `Detect Offline ROMs` is always avaible. This allows to not erase the sector 5 before flashing and keep the settings (else, the pluscart resets to ntsc each time I flashed :) )

Edited by Windless
Link to comment
Share on other sites

5 hours ago, Windless said:

Thank you! So nice to see the code running on real hardware and not an emulator!

👍

5 hours ago, Windless said:

w.

 

PS : I modified the formware so the `Detect Offline ROMs` is always avaible. This allows to not erase the sector 5 before flashing and keep the settings (else, the pluscart resets to ntsc each time I flashed :) )

You might also use the PlusCart Zero firmware, so you don't have to wait at boot for the firmware searching the ESP8266 and a WiFi connection.

https://github.com/Al-Nafuur/United-Carts-of-Atari/tree/main/firmware

 

You can keep the settings if you erase sector 1,3,4 (and skip 2) before flashing the new firmware and then flash the new firmware with "Skip flash erase before programming" active.

 

When "Offline ROMs" are already detected and the flag is set in the settings in sector 2, you don't need to erase and detect offline ROMs again in the menu when you flash a new tar file to sector 5 to 11

Link to comment
Share on other sites

New PlusCarts returned yesterday from my soldering service. The ones I have already checked are now in stock and can be ordered in my PlusCart Online Shop.

 

 

  • Like 2
Link to comment
Share on other sites

  • 1 month later...

I just ordered the boards using the gerbers, and parts from aliexpress.   After soldering and connecting to pc, I can hear the usb 'connect', but when I go into device manager, it reads, Unknown USB device (Device Descriptor Request Failed).  Thus it doesn't get detected from the programmer.

 

What should device manager show as the device name?

 

Has anyone encountered this? 

Link to comment
Share on other sites

On 6/23/2023 at 6:03 PM, OriginalJohn said:

I just ordered the boards using the gerbers, and parts from aliexpress.   After soldering and connecting to pc, I can hear the usb 'connect', but when I go into device manager, it reads, Unknown USB device (Device Descriptor Request Failed).

Hearing the USB 'connect'-ping is a very good sign.

Some boards from some aliexpress sellers don't connect via USB and have to be programmed via the ST-LINK2. From which seller did you buy the boards?

 

On 6/23/2023 at 6:03 PM, OriginalJohn said:

Thus it doesn't get detected from the programmer.

Are you using the STM32CubeProgrammer? As far as I remember the programmer installs the USB driver too. Maybe a reinstall or trying on a different PC will help?

 

You can find the flashing instructions here: https://pluscart.firmaplus.de/pico/?flashing

IMPORTANT: boot0 jumper has to be removed and boot1 has to be set.

 

On 6/23/2023 at 6:03 PM, OriginalJohn said:

What should device manager show as the device name?

Windows 10 should look like this:

image.png.2f5ec5c78b5a81a4ca74411fd5e5f132.png

 

 

Link to comment
Share on other sites

  • 2 weeks later...
7 hours ago, ZilchSr said:

Hi, Al. I just purchased a PlusCart. How do I register my name on the site?

https://highscore.firmaplus.de/

You need a PlusStore account and connect your PlusCart to this account.

More information can be found in the user manual

 

To upload your (top 10) screenshots to the PlusROM HSC see this post here:
https://forums.atariage.com/topic/324848-plusrom-high-score-club/?do=findComment&comment=5204498

 

  • Thanks 1
Link to comment
Share on other sites

  • 3 weeks later...
On 6/25/2023 at 6:57 AM, Al_Nafuur said:

Hearing the USB 'connect'-ping is a very good sign.

Some boards from some aliexpress sellers don't connect via USB and have to be programmed via the ST-LINK2. From which seller did you buy the boards?

 

Are you using the STM32CubeProgrammer? As far as I remember the programmer installs the USB driver too. Maybe a reinstall or trying on a different PC will help?

 

You can find the flashing instructions here: https://pluscart.firmaplus.de/pico/?flashing

IMPORTANT: boot0 jumper has to be removed and boot1 has to be set.

 

Windows 10 should look like this:

image.png.2f5ec5c78b5a81a4ca74411fd5e5f132.png

 

 

I bought from ElectronicFans at https://www.aliexpress.us/item/2251832571182555.html

I did use the CubeProgrammer.  While it did install drivers, I was unable to manually change the driver to the STM32 Bootloader.  It didn't appear in the list.

I will try a different pc at some point - thanks for your response.   Other than that, I will probably need to buy the ST-LINK2, but at $80.   Kind of puts DIY on this out of reach...

Link to comment
Share on other sites

 

11 minutes ago, OriginalJohn said:

 Other than that, I will probably need to buy the ST-LINK2, but at $80.   Kind of puts DIY on this out of reach...

🤔

The colorful mini USB variant costs around $3

https://www.aliexpress.com/w/wholesale-st%25252dlink-v2.html

 

Link to comment
Share on other sites

  • 3 weeks later...

I am on holiday from 14.08.2023 to the 28.08.2023. All orders and requests to the PlusCart webshop will be processed after I returned.

 

I only have a few PlusCarts left anyway and would also need to reorder labels and some parts for shipping and packaging.

 

The prices for the STM32 boards are down again to about €13, but I am afraid that the quality is still very poor. I still have to decide when and how many I want to order.

Link to comment
Share on other sites

If there is a more specific thread for this question, then I apologize ahead of time. But I was using my plus cart yesterday while working on a 2600 (Testing actually), and I noticed that the final score when you beat Ninjish Guy doesn't seem to get recorded to the online high score site? Is there something specific that needs to be done when I finish the game for that final score to get sent and uploaded?

 

Link to comment
Share on other sites

2 hours ago, -^CrossBow^- said:

Se houver um tópico mais específico para esta pergunta, peço desculpas antecipadamente. Mas eu estava usando meu carrinho de plus ontem enquanto trabalhava em um 2600 (na verdade, testando), e notei que a pontuação final quando você venceu Ninjish Guy não parece ser registrada no site de pontuação online? Existe algo específico que precisa ser feito quando eu terminar o jogo para que a pontuação final seja enviada e carregada?

 

you need to be logged in with your account. You are?
Link to comment
Share on other sites

3 minutes ago, Capellão said:
you need to be logged in with your account. You are?

Except that my other scores just prior where I didn't beat the game, were showing up just fine. My cart logs in automatically when powered one since I have several scores from yesterday that were all getting up dating and showing up without issue. It was only when finishing Ninjish Guy that I noticed the final score doesn't seem to get uploaded.

 

Link to comment
Share on other sites

On 8/14/2023 at 3:06 PM, -^CrossBow^- said:

But I was using my plus cart yesterday while working on a 2600 (Testing actually), and I noticed that the final score when you beat Ninjish Guy doesn't seem to get recorded to the online high score site? Is there something specific that needs to be done when I finish the game for that final score to get sent and uploaded?

I haven't tested the sending the final score when beating the game. But it looks like it is not covered by my hack.

 

I am currently on vacation and away from my development machine, so it might take some days to fix the bug.

 

@-^CrossBow^- if you like, you can PM me a screenshot or post it in the PlusROM HSC thread and I can upload your score to the HSC.

 

Link to comment
Share on other sites

  • 1 month later...

@Al_Nafuur Any progress on outlining an alternate way of flashing the firmware on the STM when simply connecting a USB cable doesn't work (connections, pins etc to connect to)?

I purchased the $3 programmer and was unsuccessful flashing an already assembled board.   I was able to connect to 2 out of 4 remaining STM boards I purchased, but only 1/2 the code gets flashed to the board as confirmed by doing a file vs mem comparison.

 

Anyone else experience this?

Link to comment
Share on other sites

There is the possibility of using a ST-LINK2 cable as shown. It uses the SWDIO, SWCLK and GND signals from the STLINK2, which go to I believe PA3 and PA4 on the STM32 board. Then use STLINK software to flash the firmware.

image.thumb.png.6a652880dabc24c9ecc4fa5573dc4aca.png

I have also soldered thin wires directly to pins 70 and 71 (PA10/PA11) of the STM32 IC for broken USB connectors. It is also possible to solder to trackwork but generally if a USB connector has been ripped off, the trackwork is toast too. 

 

I believe these are the two options available. I have found cases where some STM32 ICs have dead USB, but still work with ST-LINK. 

 

Best of luck!

 

 

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Hi,
I've been through the thread pages, but there were 40 of them so... here are my questions!
- What is the main drawback of the "PlusCart No USB" version? Can it still be flashed to update versions, what is the use for the USB exactly?
- Are these cartridge a good choice to try some homebrew development on the VCS (mostly demoscene stuff, not really games), or is the update/deploy/test cycle not optimal compared to other options?
- Would this cartridge run on the new "Atari 2600+" system, or would it not be recognized/work at all?

Thanks in advanced, this thing looks awesome :)

Link to comment
Share on other sites

11 hours ago, Dbug said:

Are these cartridge a good choice to try some homebrew development on the VCS (mostly demoscene stuff, not really games), or is the update/deploy/test cycle not optimal compared to other options?

I love the PlusCart for development. Personally, I think uploading a ROM to the server then loading it into the PlusCart over wifi is far more convenient than removing an SD card from a cart, inserting the SD card into my computer, adding the ROM to the SD card, removing the SD card from the computer and re-inserting it into the cartridge.

 

11 hours ago, Dbug said:

Would this cartridge run on the new "Atari 2600+" system, or would it not be recognized/work at all?

None of the multicarts (PlusCart, Harmony Cart, etc.) will work with the 2600+.

  • Like 1
Link to comment
Share on other sites

18 hours ago, Dbug said:

Hi,
I've been through the thread pages, but there were 40 of them so... here are my questions!
- What is the main drawback of the "PlusCart No USB" version? Can it still be flashed to update versions, what is the use for the USB exactly?

The PlusCart comes with the latest firmware already flashed and all firmware updates are via WiFi and the PlusStore, so usually no manual update is needed.

 

The device can also be manually flashed via a normal USB cable or via a ST-LINK II (costs about $2 - $6). The "PlusCart No USB" has only the second option.

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...