Jump to content
IGNORED

Pokeymax v4 bring up thread


Recommended Posts

I’ll answer this one in the coming days, looks you are almost there and I just didn’t automatically build some tools etc.

 

@Mathy I see I just confused you with my reply, happy to explain more but perhaps you could ask again what isn’t clear?

  • Like 1
Link to comment
Share on other sites

5 hours ago, foft said:

@Mathy I see I just confused you with my reply, happy to explain more but perhaps you could ask again what isn’t clear?

 

Not speaking for Mathy, but as an interested observer, it's not totally clear to me what the new featureset will be :) U1MB / Incognito compatibility is also a consideration.

 

FWIW, I've been holding off on installing a PokeyMax for some time because V4 was on the horizon.  With potentially 6 machines that would end up with one in them, I'd really prefer to use a single variant than have multiple versions scattered across the range if possible.

Link to comment
Share on other sites

Changes in v4 (dug out from other thread):

i) Somewhat thinner (headers move inwards)

ii) 2 layer single sided while having v3 like features

iii) Digital ADC

iv) No io expander, so keyboard timing can be perfect

v) No LM339s needed (uses the fpga lvds)

 

ie small form factor changes, cost reduction, keyboard compatibility improvement and digital system audio mixing

 

u1mb has a plugin. I do have a spare io pin that I could dedicate to switch back to mono mode for those who don’t want to use it.

  • Like 1
Link to comment
Share on other sites

Not owning a PokeyMax yet in any form, only interpreting the discussions here and in the other thread, there are no new functional features to speak of (well, there is this DAC that @foft just mentioned, and better keyboard compatibility). The main novelty is that the new design is (a) fully open, (b) DIY-able-ish, (c) hw simplified to reduce costs. The different FPGA options are to further allow cutting costs if not all extensions are needed (myself I will most likely go for M08), but you can still have a M16 based build with all-in.

Edited by woj
Link to comment
Share on other sites

But another big question is: Will the PokeyMax V4 be available to buy anywhere?

For most of us it will be impossible to assemble the board ourselves, even with a little SMD experience these components are far too difficult.

Link to comment
Share on other sites

Hello @foft

 

10 hours ago, foft said:

@Mathy I see I just confused you with my reply, happy to explain more but perhaps you could ask again what isn’t clear?

 

It's nice to read that you are using different components in V4.  But what do we get apart from different components and/or layers?  What features will V4 have?  You've named many, but you didn't tell us how many of those we can have in one pokeyMax V4. Will there be more than one V4, as in V4s with two features (for instance Dual Pokey and Dual SID), V4s with four features (Dual Pokey, Dual SID, Dual Yamaha, ... ), V4s with eight ... , etc.

 

Sincerely

 

Mathy

 

Edit: Software control via U1MB in all V4 versions?  SPDIF in all V4 versions?

 

 

 

 

Edited by Mathy
Link to comment
Share on other sites

I’m not adding any features, I think we have plenty and the software needs to catch up.

 

In terms of what fits, it depends on the fpga size. To me there are three options:

i) 10M02: For people who just want a vanilla mono or stereo pokey replacement and minimal cost.

ii) 10M08: Fits everything if we only include dual pokey.

iii) 10M16: Fits everything with space for more.

 

U1MB software control works on all of them (v1 to v4) with the plugin.


SPDIF requires the external oscillator fitting. I suggest putting this on all of them because it’s cheap enough, though it’s up to whoever builds them.

  • Like 2
Link to comment
Share on other sites

2 hours ago, foft said:

i) 10M02: For people who just want a vanilla mono or stereo pokey replacement and minimal cost.

Just wondering if you plan on designing a version of the PCB for the M153 package.  Although, would it actually allow for a smaller PCB footprint?

Link to comment
Share on other sites

I looked up the specs on the 10M02 chips and found that the I7 version (10M02SCM153I7G) is the industrial version (-40° to +100° C) with a maximum speed of 450 MHz, while the C8 version (10M02SCM153C8G) is the commercial version (0° to +85° C) with a maximum speed of 402.5 MHz.  Does the C8 version meet requirements?  The 10M02SCM153C8G is $8.07 for single piece or $6.46 for 25 pieces (with additional breaks for higher quantities).  Pricing appears to be identical between DigiKey and Mouser.  :P

 

Edit: Oh, it was the 10M02SCM153C8G I suggested earlier, so never mind on that.  Is ADC support at the FPGA required?  The 10M02 doesn't have this.

 

Edited by Panther
Link to comment
Share on other sites

Speed category 8 is fine (7 will also work but costs more)

 

SC is the variant I use. SA will probably work but I didn’t try it. Since I am using SC I do not use the ADC.

 

See page 5/6 of this document for these details:

https://www.mouser.com/datasheet/2/612/m10_overview-2401081.pdf

 

I think M153 + 4 layer could be narrower, maybe. A different option is keeping this fpga, going to 4 layer and putting the resistors in the bottom. Do you have another case where the footprint is an issue or are you thinking of the NUC?

Link to comment
Share on other sites

29 minutes ago, foft said:

putting the resistors in the bottom

Please don't do the board two-SMD-sided, will make home DIY soldering much more difficult (for me at least 😉).

Link to comment
Share on other sites

53 minutes ago, foft said:

Speed category 8 is fine (7 will also work but costs more)

 

SC is the variant I use. SA will probably work but I didn’t try it. Since I am using SC I do not use the ADC.

 

See page 5/6 of this document for these details:

https://www.mouser.com/datasheet/2/612/m10_overview-2401081.pdf

 

I think M153 + 4 layer could be narrower, maybe. A different option is keeping this fpga, going to 4 layer and putting the resistors in the bottom. Do you have another case where the footprint is an issue or are you thinking of the NUC?

NUC and an 800.  The 800 is too a tight fit to use connectors to attack to the 90° header.  It would be nice to be able to use a connector.  I've not found any reason to use Quad POKEYs or any of the other goodies with the 800.  If I want to run modern demos I can use my 1088XEL or NUC.

Link to comment
Share on other sites

26 minutes ago, woj said:

Please don't do the board two-SMD-sided, will make home DIY soldering much more difficult (for me at least 😉).

I'm not sure I see how soldering SMD components on two sides is any more difficult than just using one side.  That BGA chip is the tricky one in my opinion.

 

Link to comment
Share on other sites

8 minutes ago, Panther said:

I'm not sure I see how soldering SMD components on two sides is any more difficult than just using one side.  That BGA chip is the tricky one in my opinion.

Because on the other side I can’t use the hot plate anymore, I am not planning on doing it fully by hand one by one.

Link to comment
Share on other sites

Posted (edited)
49 minutes ago, Panther said:

to the 90° header.

Do you mean on the right or vertical clearance? I’ve moved the headers inside the board now so if it’s space to the right rather than vertical that will work.

Edited by foft
Link to comment
Share on other sites

5 hours ago, foft said:

Do you mean on the right or vertical clearance? I’ve moved the headers inside the board now so if it’s space to the right rather than vertical that will work.

I see, I didn't pay attention to what you did with the header, you now have the 2x5-pin header at one end.  I believe there should be plenty of vertical clearance under the shielding there for an angled header, and that would certainly work better.

Link to comment
Share on other sites

1 hour ago, Panther said:

I believe there should be plenty of vertical clearance under the shielding there for an angled header, and that would certainly work better.

I picked up some of these recently for another project, but it should work for this as well. They are break-away right angle pin headers that can be reduced down to whatever number of pins is required. This style is slightly raised off the PCB, thus better clearing surrounding chips and components.

 

image.thumb.png.2484bab9c425d236b7dbb897470cbfa8.png

eBay LINK

Link to comment
Share on other sites

On 4/20/2024 at 7:18 AM, mytek said:

I picked up some of these recently for another project, but it should work for this as well. They are break-away right angle pin headers that can be reduced down to whatever number of pins is required. This style is slightly raised off the PCB, thus better clearing surrounding chips and components.

It's a dual row header, but I suppose you could just point them opposite directions and use two connectors, but if there's enough vertical space then a single connector is better.  I've purchased assortment kits, so I'm sure I've plenty.  Still not sure about attempting to build one of these, but what the heck, should be interesting.  I'll certainly order multiple of each component.  I wonder how foft's build and testing is going.

Link to comment
Share on other sites

Posted (edited)
1 hour ago, Panther said:

I wonder how foft's build and testing is going.

I was away for a few days.

 

Good news:

sio works

break works!

 

Bad news:

Think my bga soldering was not quite good. So one keyboard line was stuck low. This was also the cause of sio not working. Anyway I took off the chip and cleaned it up. I’ll put another one on and add that chip to my ‘to reball’ pile (not tried yet but looks doable!)

Edited by foft
  • Like 4
Link to comment
Share on other sites

Well, I am also watching this space carefully, and getting all lubed up for this, my USB blaster arrived, seems that my Quartus installation recognizes it, I ordered parts and PCBs to make my own Ultimate Cart as a practice for this, I will work on my 130XE to get the A5+ lines out on cables, I have my custom shopping list ready at DigiKey, read up on BGA soldering, the only two things that are still in the way is to get a confirmation that there are no fatal mistakes in the design, and figuring out why I can't synthesize the PokeyMax4 core (see above).

Edited by woj
Link to comment
Share on other sites

On 4/19/2024 at 11:38 AM, foft said:

I’ll answer this one in the coming days, looks you are almost there and I just didn’t automatically build some tools etc.

 

So, about my my Quartus synthesis errors, I looked a bit more into this and tried some things. The initial problem is this:

 

Error (12006): Node instance "\adc_on:lvds_tx0" instantiates undefined entity "lvds_tx". Ensure that required library paths are specified correctly, define the specified entity, or change the instantiation. If this entity represents Intel FPGA or third-party IP, generate the synthesis files for the IP. File: /home/woj/repos/atari_800xl/atari_chips/pokeyv2/build_10M08_fullv4_stereo/pokeymax.vhd Line: 1986
Error (12006): Node instance "\adc_on:lvds_rx0" instantiates undefined entity "lvds_rx". Ensure that required library paths are specified correctly, define the specified entity, or change the instantiation. If this entity represents Intel FPGA or third-party IP, generate the synthesis files for the IP. File: /home/woj/repos/atari_800xl/atari_chips/pokeyv2/build_10M08_fullv4_stereo/pokeymax.vhd Line: 1993

 

I can see there are component definitions in pokeymax.vhd for lvds_tx and lvds_rx, but for whatever reason these are not acknowledged? The other thing I noticed is this message from the build script:

 

cp: cannot stat 'lvds*': No such file or directory

 

and also: 

 

cp: cannot stat 'iox_gluev4.vhdl': No such file or directory
cp: cannot stat 'pokeymaxv4.vhd': No such file or directory

 

but I think it might be the first one that is causing the trouble.

 

In any case, what does work, is to set "enable_adc" to 0 in the 10M08_fullv4_stereo section of the build script, and then I do get a full set of output files for V4 (how correct or usable these are - I have no idea). 

 

As I said earlier, the amount of "can't find stuff" messages during building does not raise confidence in the build process correctness. This is where I ended up, in the meantime I googled for several things trying to learn a bit more about all this, the only thing I got out of this is that the FPGA/Intel guys "out there" (so not you guys here ;)) exhibit a certain kind of attitude... 😕

Link to comment
Share on other sites

I committed the missing lvds files now.

 

These being missing is normal though, I should probably clean that up...

cp: cannot stat 'iox_gluev4.vhdl': No such file or directory
cp: cannot stat 'pokeymaxv4.vhd': No such file or directory

 

I also soldered a new FPGA. Similar results on this with some shorted keyboard lines. I think in both cases its because I made a mistake when cleaning the board prior to soldering it on with some braid. I dragged the braid slightly which took off some solder mask. It didn't look too bad on the microscope but I guess it is enough for these shorts to happen each time since there isn't much clearance between the solder balls! So I will start again on another new board next week.

 

I bought one of these to try reballing these few chips, I now have 3 chips to reball so think this is worth learning how to do:

https://www.aliexpress.com/item/1005005959551085.html

 

I'll order some new FPGAs from digikey to try out the other boards so I can remove the reballing skill variable though!

 

In the meantime I think this is soldered enough to proceed with a few further tests. e.g. I can solder the audio output components and at least play some audio with it.

Link to comment
Share on other sites

@foft no point in quoting the post just above:

 

1. Synthesis now works

 

2. I am probably much much less experienced in soldering than you, and doing this in stages requires "very manual" soldering, and I am not sure you ordered the stencil with the boards, but I would most certainly start with the BGA chip and use paste and a hot plate to have less result variability here. (Easier said than done, I know, will see how I get through this when the time comes...)

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...