NES/SNES 240p dejitter mod

The place for all discussion on gaming hardware
Post Reply
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

I believe NoAffinity did this same thing earlier, so check out his thread over on VGP: https://www.videogameperfection.com/for ... itter-mod/

Hopefully that will prove helpful.
xthechar
Posts: 11
Joined: Tue Jun 26, 2018 10:02 am

Re: NES/SNES 240p dejitter mod

Post by xthechar »

Looks like there will be no need: the mod Just Works (TM) with my capture card. Didn't reroute composite at all. WOO HOO!!
mdd45
Posts: 26
Joined: Sun Feb 28, 2016 10:15 pm

Re: NES/SNES 240p dejitter mod

Post by mdd45 »

I got confused….

I have a Snes 2-chip pal console (that can do 60htz also). I use it on my scart CRT tv’s and also on my ossc. I use an RGB scart cable with sync on Luma to avoid checkerboarding on ossc (I also have an rgb scart cable with sync on composite – not csync). If I mod it using the dejjiter mod with the default installation diagrams at github, without buying an extra csync cable I will be able to use my snes on crt tv and on my lg OLED through ossc?
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

My NES-101 has started having some issues. At first it was working great, but I went to test a game out today and I was getting really unstable sync. I popped in another game in case the game was the issue, but same problem. It's like wavy lines going horizontally across the screen, causing pixels to be displaced. Audio cuts in and out, too. This happens with all modes from 2x to 5x, so in that sense it's actually worse now than before the mod. What's weird is that it was working fine before. This board was updated with the latest update. The only thing I can think of is that I leave my systems plugged in at all times, so maybe the oscillator is just slightly off and over time it drifts enough to cause problems? I've had it in for maybe 2 weeks now. Though unplugging it for a few minutes and plugging it back in yields no change. Any ideas?
User avatar
marqs
Posts: 1030
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: NES/SNES 240p dejitter mod

Post by marqs »

mdd45 wrote:I got confused….

I have a Snes 2-chip pal console (that can do 60htz also). I use it on my scart CRT tv’s and also on my ossc. I use an RGB scart cable with sync on Luma to avoid checkerboarding on ossc (I also have an rgb scart cable with sync on composite – not csync). If I mod it using the dejjiter mod with the default installation diagrams at github, without buying an extra csync cable I will be able to use my snes on crt tv and on my lg OLED through ossc?
As in xthechar's case, you can leave CSYNC_o disconnected and continue using sync-on-luma cable. On OSSC, you'll then need to set HPLL post-coast to 2 or higher. It's worth noting that this method only works with SNES - with NES CSYNC_o must be used. I probably should add a FAQ on the instructions to cover these installation options.
thebigcheese wrote:My NES-101 has started having some issues. At first it was working great, but I went to test a game out today and I was getting really unstable sync. I popped in another game in case the game was the issue, but same problem. It's like wavy lines going horizontally across the screen, causing pixels to be displaced. Audio cuts in and out, too. This happens with all modes from 2x to 5x, so in that sense it's actually worse now than before the mod. What's weird is that it was working fine before. This board was updated with the latest update. The only thing I can think of is that I leave my systems plugged in at all times, so maybe the oscillator is just slightly off and over time it drifts enough to cause problems? I've had it in for maybe 2 weeks now. Though unplugging it for a few minutes and plugging it back in yields no change. Any ideas?
It's probably due to CPLD sampling CSYNC_i too close to its transition. I had similar issues with previous fw on Famicom, but got it fixed by "MC reduce power" option which slighly increased delay through the CPLD. A more robust option might be changing sampling to falling edge as it currently might stlil be too close to CSYNC_i transition, potentially resulting to timing violation if delays vary slightly by e.g. temperature (which could explain your case if it has been on for 2 weeks). I can compile a new SVF for testing soon.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

Two follow-ups then. I have this going to a multi-out connector and using a standard SNES cable (wired for RGB with c-sync) to connect it. I have left J8 on the NESRGB open as you advised. This is also how it was set up before I installed the dejitter, but could anything there be causing issues?

Second, what is the easiest way to update? The instructions are very confusing to me as I have basically zero coding/programming knowledge. You talk about converting some files to a SVF, but you also offer an SVF as a download, so is it still necessary to do the conversion? Once I have the files, how do I get them on the board? I have a Altera USB Blaster and the Quartus Programmer used to update the NESRGB. I also have a Raspberry Pi, which I see some people have used, but I am confused about what is needed to make that happen. Last update I just sent it back to the guy I bought it from to update, but now it's all soldered in place so that seems kind of annoying to do again...
User avatar
marqs
Posts: 1030
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: NES/SNES 240p dejitter mod

Post by marqs »

thebigcheese wrote:Two follow-ups then. I have this going to a multi-out connector and using a standard SNES cable (wired for RGB with c-sync) to connect it. I have left J8 on the NESRGB open as you advised. This is also how it was set up before I installed the dejitter, but could anything there be causing issues?
Sounds like you have all wired up correctly.
thebigcheese wrote:Second, what is the easiest way to update? The instructions are very confusing to me as I have basically zero coding/programming knowledge. You talk about converting some files to a SVF, but you also offer an SVF as a download, so is it still necessary to do the conversion? Once I have the files, how do I get them on the board? I have a Altera USB Blaster and the Quartus Programmer used to update the NESRGB. I also have a Raspberry Pi, which I see some people have used, but I am confused about what is needed to make that happen. Last update I just sent it back to the guy I bought it from to update, but now it's all soldered in place so that seems kind of annoying to do again...
Build proceduce chapter describes how to do the whole POF->JED->SVF conversion chain, but pre-built files are also available under output_files for convenience. To flash the board, you'll need a software that can program a SVF file, and a programmer supported by that software. OpenOCD is given as an example of such software, but there are also others like UrJTAG. Quartus programmer works only with Altera chips and doesn't support SVF so you can forget that. USB Blaster itself and RPi are supported by OpenOCD, but you'll need to figure out how to set them up correctly. Check NoAffinity's post on previous page for some instructions for RPi.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

Thanks. RPi looks like the way to go for me, I'll give that a go once there is an update. Thanks for looking into this. It's working great on my SNES, so NES is the last thing to need some fiddling.
User avatar
marqs
Posts: 1030
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: NES/SNES 240p dejitter mod

Post by marqs »

thebigcheese wrote:Thanks. RPi looks like the way to go for me, I'll give that a go once there is an update. Thanks for looking into this. It's working great on my SNES, so NES is the last thing to need some fiddling.
You can download an updated SVF here. I'll try that in my Famicom setup soon as well.
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

thebigcheese wrote:Thanks. RPi looks like the way to go for me, I'll give that a go once there is an update. Thanks for looking into this. It's working great on my SNES, so NES is the last thing to need some fiddling.
If you would find it useful, I posted a pre-assembled pi image. Openocd is already installed, the svf was compiled from pof, and has worked on 2 boards I've built. More info and hopefully seamless instructions here, if you'd like to test it out: viewtopic.php?p=1322502#p1322502

At a minimum, it will cut down on your time spent installing openocd and probably some other stuff with gpio that had to be done before being at a point that the cpld could simply be programmed.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

Reading it over again, doesn't seem so bad. I'll give it a go. Thanks to both of you!

Edit: NoAffinity, is the OS image meant to have .img on the end of it? It downloads with no extension, just want to make sure.
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

thebigcheese wrote:Reading it over again, doesn't seem so bad. I'll give it a go. Thanks to both of you!

Edit: NoAffinity, is the OS image meant to have .img on the end of it? It downloads with no extension, just want to make sure.

Yes it is. I ripped it with win32 disk imager. I recommend writing it to your micro sd using win32di also.

:edit: i mis-spelled dejitter as "jejitter" when I initially uploaded it. I might have accidentally deleted the extension when I renamed it. :? If it's not writeable for any reason, let me know, I'll re-check my source file.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

NoAffinity wrote:Yes it is. I ripped it with win32 disk imager. I recommend writing it to your micro sd using win32di also.

:edit: i mis-spelled dejitter as "jejitter" when I initially uploaded it. I might have accidentally deleted the extension when I renamed it. :? If it's not writeable for any reason, let me know, I'll re-check my source file.
Nope, it works fine. Though I guess I wasn't expected command line only. Oops. Is there a simple version of the config? It doesn't make a whole lot of sense to me. I think it is saying that I need to connect TCK to pin 23, TMS to pin 22, TDI to pin 19, and TDO to pin 21. Is that correct? From there it seems pretty straightforward, just not sure how to wire it up.
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

Okay, good news!

Sorry, I guess my intent was more quick functionality as opposed to user friendliness. You could probably get a gui working, but I'm not necessarily an expert to offer advice on that.

Is that pinout that you typed out what it says in openocd-pi.conf? If so, just connect up per the gpio pinout and the labeling on the dejitter board. openocd-pi.conf provide the gpio (logical, I guess?) pin numbers and the physical pin numbers, and what the correspond to on the dejitter board. See below for reference of the gpio logical and physical pinout:

https://cdn.sparkfun.com/assets/learn_t ... pinout.jpg

If you didn't read openocd-pi.conf, you can open it as follows:

login to pi
> cd /home/pi
> sudo nano /home/pi/openocd-pi.conf

use arrow keys to scroll through the file if needed. It's not long.

To close it, press ctrl+x. If you didn't change anything (and please don't), it should close and return you to the command prompt.

If it still doesn't make sense, take a picture of the screen displaying this information from openocd-pi.conf and post it. I don't have my pi hooked up at the moment, and it's a bit of a hassle because I don't have dedicated peripherals for it.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

I don't mind command line, per se, just wasn't expecting it. Had to do some Googling to figure out how to get the new SVF off my flash drive :p It's here that has me a bit confused: https://photos.app.goo.gl/9gdAkgd4GM2iNqT18

It says:

Code: Select all

JTAT lines in order: tck tms tdi tdo
Header pin numbers: 23 22 19 21
So I think that's saying that tck goes to pin 23 etc, just want to verify.

Edit: If I do connect it that way, this is what I get: https://photos.app.goo.gl/NB51zgb4J8nrZ77y8
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

thebigcheese wrote:I don't mind command line, per se, just wasn't expecting it. Had to do some Googling to figure out how to get the new SVF off my flash drive :p It's here that has me a bit confused: https://photos.app.goo.gl/9gdAkgd4GM2iNqT18

It says:

Code: Select all

JTAT lines in order: tck tms tdi tdo
Header pin numbers: 23 22 19 21
So I think that's saying that tck goes to pin 23 etc, just want to verify.

Edit: If I do connect it that way, this is what I get: https://photos.app.goo.gl/NB51zgb4J8nrZ77y8
did you uncomment something? you shouldn't be getting any responses about gbd services.

And to confirm, you're in /home/pi and running the command:

> openocd –f openocd-pi.conf

What pi do you have? If it's model 3, you may need to change the gpio address to 0x30000000, in openocd-pi.conf (this is noted in the comments).

Also, I wasn't able to get the latest svf to program successfully. The svf included in /home/pi was tested and worked on 2 boards. Once you get to that point, following the instructions on marqs' github page, and have a second terminal open below will use the svf included in the image:

telnet localhost 4444
> svf /home/pi/snes_dejitter.svf
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

I didn't change anything. I'm using a Pi 2 model B. I have to use the latest SVF as that's the whole point of me trying to update it in the first place :p I was in home/pi running the command exactly as you described. I also tried connecting the wires to the GPIO pins described below those lines, 11, 25, 10, and 9, but same results.

I don't have ground connected between the Pi and the dejitter, does that matter? It's still wired into the NES, so I've just been powering it that way.

Once this is all working, how does one open a new terminal to run the commands? I wasn't aware that you can have multiple terminals in a single console instance. And then how do I exit Openocd after? How does anyone ever learn how to do any of this? Every step requires knowledge of like 5 specific things I have no other reason to know...
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

correction on the gpio base address for model 3 - it should be 0x3f000000. But I don't think that's your issue.

You can comment out the last line of openocd-pi.conf, and it should return the address of 0x0150203f for the device that openocd finds. If it doesn't then there's possibly an issue preventing your pi from communicating with the cpld.

you do have 5v connected from gpio to jtag header and have confirmed presence of 5v power at the jtag connector?

You can test that the the pi is lighting up the pins correctly, with a simple led wired with one lead connected to the pin you want to test and one pin connected to gpio ground.

If you want to test pin 22, then run the commands:
> cd /sys/class/gpio
> echo 22 > export
> cd gpio22
> echo out > direction
> echo 1 > value

:edit: just tested with nothing connected to the gpio, and getting the exact same response. Check power and ground from gpio to dejitter board. Double and triple check your signal connections. I remember I had one connection off by a pin, and of course it wouldn't work.

:edit edit: And of course double check your actual pins with multimeter to confirm the positions of 1, 2, etc, but this is how its laid out on my pi.

Image
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

Marqs says not to connect 5v when the board is already wired in place, so no I did not connect that. I'm getting 5v from the NES. It looks like your GPIO pins are on different header pins, so the second way that I connected it was correct. But still got the same message. I checked connections with a multimeter this morning and all was well, but I will try commenting that part out tonight and see how it goes. Might also update the conf file description of the header pins so as not to confuse myself :D
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

Well, I'm sorry it hasn't been quite as plug'n'play as I was hoping it would be for others. But good job troubleshooting and being tenacious! :D

And basically everything I've suggested in the troubleshooting steps so far are all hurdles I also worked through. It was a tedious process, but hopefully some of that tedium is ultimately eliminated for you. So, as for powering the dejitter board, yes you are correct, as long as its powered, it doesn't matter where it's powered from and definitely don't provide parallel 5V sources. :)

Here's some more info on the GPIO header, if you're interested for your own understanding: https://www.raspberrypi.org/documentation/usage/gpio/. Basically, as long as your connected on any i/o pin (not power or ground), you should be good - i/o pins are completely assignable/configurable....and what is assigned in the config file aligns with what you are connected to. But, it won't hurt to align where you physically connect to, with the logical assignments of your actual header. I would also be interested to see what the assignments are, if you can find a pinout that matches yours. That might be helpful to others in the future.

:edit: I see your point. The config file may be telling the pi to operate on certain pins, but you are not connected on the physical pins associated with those gpio logical pins. I think LED test would help to sort that out, if nothing else.

Did you test the pins with an LED bulb? I used one off of a busted PS2 DS2 controller - the bulb that lights up the Analog indicator. Desoldered it from the DS2 PCB, soldered a dupont female connect to each lead, and was able to confirm the gpio header functioning properly that way.

Lastly, you can also confirm continuity at the dejitter board, if you haven't already - from JTAG header to CPLD's appropriate pins. It is a direct connection from header to CPLD. Just one more thing to cross off as "verified".
Last edited by NoAffinity on Wed Jul 11, 2018 2:30 pm, edited 2 times in total.
User avatar
Arthrimus
Posts: 106
Joined: Mon Apr 02, 2018 5:49 pm
Location: Arkansas

Re: NES/SNES 240p dejitter mod

Post by Arthrimus »

Also, make sure that your leads between the Pi GPIO and the dejitter board are as short as possible. I had issues with anything longer than 3 inches when I programmed my boards.
plus ça change,
plus c'est la même chose,
The more that things change,
The more they stay the same.- RUSH- Circumstances

I install and sell mods at arthrimus.com | SNES RGB Bypass+Dejitter available now! | Watch me live stream my work on YouTube
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

I'm not sure how I would even connect LEDs. I'm repurposing the wires that come with this kit: http://www.emgpickups.com/accessories/w ... g-kit.html. I cut off the plastic connector from one side and soldered it to the dejitter board. Other side is plugged onto the header pins of the RPi. I don't have anything else to use and am trying to avoid spending money as it seems silly to me to have to spend more money to fix something I already spent money on. I realize this is a mod and not meant to be purchased as a final product, but considering that VGP is now selling these in a semi-official capacity, I imagine there will be many other customers installing these in their NES-101 only to find that it doesn't do the one thing it is supposed to do (and, in fact, makes it worse). Anyone paying VGP for the mod services is gonna be real annoyed to have to send it back for rework and I imagine VGP is gonna get annoyed at having to rework them. Really ought to have been some more testing or at least made a more user-friendly way to update them for us non-programmers. Soldering and modding I can do no problem, but this flashing business is just so complicated. For comparison, I have updated the NESRGB several times. It requires a $10 programmer and some free (and way more user-friendly) software. Just plug it in, load up the file and go. Super easy.

Not trying to hate on Marqs or NoAffinity or anything. This is working perfect with my SNES and I'm grateful that you've done all this work. Just seems like it was rushed out and now NoAffinity has had to do all this work to try to make it easier for people to get it working properly.

Re: wires: might not be clear in the pictures, but they are like 3-4" long. The Rpi is, out of necessity, right next to the NES.

Sorry, rant over. Just frustrated. Hopefully better luck tonight.

Edit: Like seriously, nowhere does anyone even have a recommended programmer to get. OpenOCD just says "we don't favor any particular one" which apparently means they won't list even a single one someone might choose. Real helpful. On separate digging, it looks like this would let me connect to a breadboard, which would solve a lot of the issues: https://www.adafruit.com/product/2028. I've ordered one to come tomorrow, so I might just put off further testing until then so that I can verify with LEDs and swap stuff around much easier.
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

No hate taken here. The dejitter board isnt my project. I am just hoping to provide something additive to the project, that is helpful for programming them, for those who already own a pi with 2x20 gpio header. It worked for others (separate from my effort) and worked for me, so should be a universal solution. I'm also no programmer. This is my 3rd linux project in 15 years or so. Maybe I just got lucky. :)

To test gpio pins with an led, connect one led lead to the physical gpio pin you want to test. Connect the other led lead to one of the gpio grounds. Run the commands I provided above for the logical pin associated with the physical pin you connected to. I.e. connect to physical pin 23, run the command for gpio logical pin 11. Once you've typed all commands, the led should light up. You may need to run the commands as superuser (sudo) . I dont remember if that was necessary or not.

Dupont cables (male to female) might be equally helpful, in lieu of that t cobbler, but maybe the t cobbler gives you a test environment you're more comfortable with.

Sent from my SM-G955U using Tapatalk
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

At some point I will have to update my GCDual, so I suspect the cobbler will help me with getting this set up for that, too. Anyway, I really do appreciate all you've done for this. It's probably just me not understanding something. I ran a game server with Ubuntu for a while, but once it gets to real hardware communication and programming I am lost. Plus most of my knowledge just comes from a ton of Googling. I'll give this all a go tomorrow night and report back, hopefully with good results. Thanks again.
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

thebigcheese wrote:Plus most of my knowledge just comes from a ton of Googling
I am a self-proclaimed expert thanks to google as well. :)

I just picked up a pi model 3. Going to test with that. Would be nice to be able to add a model and start a compatibility list for this OS image I've prodcued. I will also report back on that.
User avatar
marqs
Posts: 1030
Joined: Sat Dec 15, 2012 12:11 pm
Location: Finland

Re: NES/SNES 240p dejitter mod

Post by marqs »

thebigcheese wrote:I don't have ground connected between the Pi and the dejitter, does that matter? It's still wired into the NES, so I've just been powering it that way.
You should definitely have ground connected between programmer and board regardless whether it is installed on NES or not.
thebigcheese wrote: I don't have anything else to use and am trying to avoid spending money as it seems silly to me to have to spend more money to fix something I already spent money on. I realize this is a mod and not meant to be purchased as a final product, but considering that VGP is now selling these in a semi-official capacity, I imagine there will be many other customers installing these in their NES-101 only to find that it doesn't do the one thing it is supposed to do (and, in fact, makes it worse). Anyone paying VGP for the mod services is gonna be real annoyed to have to send it back for rework and I imagine VGP is gonna get annoyed at having to rework them.
It's unfortunate for someone ending up being the guinea pig, but it would have been hard for us to verify the mod in every system revision, possibly running each for a long time to uncover the issue. The manufacturing was already deliberately delayed until we got enough confirmations that it worked on most SNES models, and if you closely check VGP's store page for the mod, it says that fitting service for the NES is in the works.
thebigcheese wrote:Really ought to have been some more testing or at least made a more user-friendly way to update them for us non-programmers. Soldering and modding I can do no problem, but this flashing business is just so complicated. For comparison, I have updated the NESRGB several times. It requires a $10 programmer and some free (and way more user-friendly) software. Just plug it in, load up the file and go. Super easy.
The biggest obstacle probably is the CPLD which, despite having good availability, is around 20 years old so the official "easy-to-use" tools are legacy and likely only work with Atmel's own $50 programmer. Usage of more modern CPLD would have make DIY assembly harder in another sense (e.g. smaller footprint, regulators & level shiftters for voltage conversion), so tradeoffs were unavoidable.
thebigcheese wrote:For comparison, I have updated the NESRGB several times. It requires a $10 programmer and some free (and way more user-friendly) software. Just plug it in, load up the file and go. Super easy.
You should be able to use the same programmer. As for OpenOCD, it can be certainly more daunting initially but Quartus is not without its own issues either (just search for the horror stories of people having trouble to get their unofficial programmers to work with recent versions).
thebigcheese wrote:Edit: Like seriously, nowhere does anyone even have a recommended programmer to get. OpenOCD just says "we don't favor any particular one" which apparently means they won't list even a single one someone might choose. Real helpful. On separate digging, it looks like this would let me connect to a breadboard, which would solve a lot of the issues: https://www.adafruit.com/product/2028. I've ordered one to come tomorrow, so I might just put off further testing until then so that I can verify with LEDs and swap stuff around much easier.
The point of OpenOCD is to have wide support for different programmers and targets so it doesn't make sense for the developers to promote any single one even though everyone probably has their own favourite. I'm not sure if RPi is the most straightforward method for flashing the board but at least it's something many people own nowadays (and thanks to NoAffinity we have instructions and readymade image also).

One thing to note which might affect some programmers is R5 value, which like R10, results to a bit too low level from voltage divider (this has been fixed on pre-assembled v1.2 batch). I haven't had issues programming the boards as-is with FT2232 programmer, but anyone having reliability issues while flashing should try replacing the resistor with something around 8.2k.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

Thanks Marqs. Again, I don't mean to be a jerk, just frustrated. Most mods have been so straightforward and "just work," but I know that is usually after years of development and this is a brand new thing. Anyway, I think that ultimately the RPi solution isn't really that difficult, I am just obtuse and having trouble getting it.

I have the adapter coming tomorrow, which should help, and also found some spare headers lying around I could solder to the dejitter to make plugging and unplugging things far simpler. Can just use my little jumper wires now. Good to know about ground, I will make sure to connect that next time!
User avatar
NoAffinity
Posts: 1013
Joined: Mon May 07, 2018 5:27 pm
Location: Escondido, CA, USA

Re: NES/SNES 240p dejitter mod

Post by NoAffinity »

I just tested with Pi 3 Model B V2.1, and after a bit of hassle, got it to program successfully. I was initially trying to program with the dejitter board powering off of the SNES, and it failed every time. I think I might have benefitted if I had seen marqs comment above sooner, about grounding pi to dejitter board regardless of power source. :oops: I'm not going back to test that at this point, though, cuz it programmed successfully and the SNES is confirmed working.

One other note - when running openocd the command needs to be run as superuser:

> sudo openocd -f openocd-pi.conf

Image

I programmed at 16khz on this run, and it worked fine. Not sure what the threshhold is. The pi gpio I believe would be the bottleneck at around 25mhz. ATF1502AS data sheet indicates it is capable of operating at round 50mhz. Not sure how all that correlates to programming, but I had failures around 100khz via openocd. Just some sidebar info/observations there.

:edit: I figured out what I was doing wrong with the latest svf file (1 -month old svf, in github output_files). I have now programmed it successfully as well, using Pi 3 Model B. :D I will update the uploaded image file, so it will include both svf versions.
thebigcheese
Posts: 707
Joined: Sun Aug 21, 2016 5:18 pm

Re: NES/SNES 240p dejitter mod

Post by thebigcheese »

I'm a little confused about the usage of OpenOCD. So after I start it up with this:

Code: Select all

sudo openocd –f openocd-pi.conf
It starts a server, as I understand it. In Marqs's directions, he says to open another terminal. Do I need to do that? And, if so, how?
With that part out of the way, do I need to type

Code: Select all

telnet localhost 4444
? Or is that just displayed by OpenOCD and I just need to type

Code: Select all

svf /home/pi/snes_dejitter.svf
?
Once it's done flashing the board, then what? How do I exit OpenOCD? Or do I just unplug the Pi? I am mostly asking all this because when I have so far tried it and it wasn't working, it just kinda sits there and does nothing. Seems like nothing I type does anything and I've just had to unplug the Pi to get out of it.
nmalinoski
Posts: 1974
Joined: Wed Jul 19, 2017 1:52 pm

Re: NES/SNES 240p dejitter mod

Post by nmalinoski »

thebigcheese wrote:

Code: Select all

sudo openocd –f openocd-pi.conf
It starts a server, as I understand it. In Marqs's directions, he says to open another terminal. Do I need to do that? And, if so, how?
Depends on how you're connected to the Pi. If you're SSH'd in from a different machine, simply open another SSH session. If you're working with the RasPi locally (keyboard/monitor directly on the Pi), and you're using the GUI, open another instance of the Terminal application (Or hold Ctrl+Alt and hit F1-F6); and, if you're local and not using the GUI, then you can switch by holding Alt and pressing F1-F6.
thebigcheese wrote:With that part out of the way, do I need to type

Code: Select all

telnet localhost 4444
? Or is that just displayed by OpenOCD and I just need to type

Code: Select all

svf /home/pi/snes_dejitter.svf
?
Admittedly, I don't have any experience with this application, but it sounds like the intent is to start an OpenOCD server in the foreground on one terminal, then switch to a different terminal to run that telnet command and connect to said server.
thebigcheese wrote:Once it's done flashing the board, then what? How do I exit OpenOCD? Or do I just unplug the Pi? I am mostly asking all this because when I have so far tried it and it wasn't working, it just kinda sits there and does nothing. Seems like nothing I type does anything and I've just had to unplug the Pi to get out of it.
You probably don't want to directly unplug the Pi if you plan to continue using the OS on the SD card. It'll probably be fine, but it would be akin to turning your desktop PC off by unplugging it.

Since you're telnetting into the server application, there might be a command to shut it down that you can run via the telnet session, or, failing that, you can exit the telnet session (probably with

Code: Select all

exit
), then switch back to the first terminal and kill the server with Ctrl+C. Then you can

Code: Select all

sudo poweroff
to shut down the Pi.
Post Reply