Jump to content



Photo
- - - - -

Preview release: Pinscape Pico


  • Please log in to reply
180 replies to this topic

#141 MartCS

MartCS

    Neophyte

  • Members
  • Pip
  • 4 posts

  • Flag: Netherlands

  • Favorite Pinball: Back to the future

Posted 19 September 2025 - 03:59 PM

I created a custom PCB as an update to my "Basic Pinscape Pico" project, naming the resulting controller the "Pinscape Pico Lite".

 

I also documented this project at https://github.com/m...scape-pico-lite

 

The first PCBs have arrived, and I just built the first controller for the cabinet I am working on. Initial tests with the config tool look good, both the accelerometer and plunger are working. This first build revealed a small fix needed in the PCB design, which I have already updated in the documentation.

 

Thank you, mjr, for the tips you gave me; I use one I2C bus now which results in 2 extra available inputs. I also added a voltage divider with a double-ended input for the ADS1115 based on your thorough documentation.



#142 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 22 September 2025 - 02:09 PM

I created a custom PCB as an update to my "Basic Pinscape Pico" project, naming the resulting controller the "Pinscape Pico Lite".

 

I also documented this project at https://github.com/m...scape-pico-lite

 

The first PCBs have arrived, and I just built the first controller for the cabinet I am working on. Initial tests with the config tool look good, both the accelerometer and plunger are working. This first build revealed a small fix needed in the PCB design, which I have already updated in the documentation.

 

Thank you, mjr, for the tips you gave me; I use one I2C bus now which results in 2 extra available inputs. I also added a voltage divider with a double-ended input for the ADS1115 based on your thorough documentation.

MartCS,

If you could provide an additional 6mm distance between the MMA8451 and the ADS115, it would allow you to use the generic LIS3DSH module (higher performance than the MMA8451) as an option.  Both modules appear to be pin to pin compatible, but the generic LIS3DSH module has a couple of extra pins (labeled ADC).  

 

My bad!  I realized that the MMA8451 has a built in 3.3V regulator and an output pin, hence not pin to pin compatible.  

 

Sorry,

 

Rick 


Edited by rickh, 23 September 2025 - 01:16 AM.

Rickey

Intense Arcade

http://www.intensearcade.com

 


#143 Suikazz

Suikazz

    Enthusiast

  • Members
  • PipPipPip
  • 133 posts

  • Flag: Hungary

  • Favorite Pinball: GoT

Posted 22 September 2025 - 02:57 PM

MartCS,

If you could provide an additional 6mm distance between the MMA8451 and the ADS115, it would allow you to use the generic LIS3DSH module (higher performance than the MMA8451) as an option.  Both modules appear to be pin to pin compatible, but the generic LIS3DSH module has a couple of extra pins (labeled ADC).  

 

Rick 

 

 

Which one exactly? the adafruit ada2809 module has the I2 on the other side of the board ;)



#144 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 22 September 2025 - 04:07 PM

 

MartCS,

If you could provide an additional 6mm distance between the MMA8451 and the ADS115, it would allow you to use the generic LIS3DSH module (higher performance than the MMA8451) as an option.  Both modules appear to be pin to pin compatible, but the generic LIS3DSH module has a couple of extra pins (labeled ADC).  

 

Rick 

 

 

Which one exactly? the adafruit ada2809 module has the I2 on the other side of the board ;)

 

https://www.aliexpre..._p_origin_prod:

 

There is a substantial difference between the LIS3DH and the improved LIS3DSH.  The LIS3DH module might be able to work, but it appears the Int1 and int2 are swapped.  BTW- I suspect the ADC pins mentioned are for changing the device I2C address. Update- You can purchase these modules for ~$2.00 USD each.  I have also discovered that Aliexpress sells a variant of the ADS1115 modules for under $2 USD, but the pinout is not compatible with the Adafruit version.


Edited by rickh, 22 September 2025 - 05:05 PM.

Rickey

Intense Arcade

http://www.intensearcade.com

 


#145 mjr

mjr

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 3,332 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness

Posted 22 September 2025 - 08:26 PM

Rick - if you haven’t already looked at physical instances of the LIS3DSH boards on AliExpress, you might want to check to make sure they’re really selling LIS3DSH.  The -SH has been out of production for a long time, and all of the Amazon sellers that are claiming to sell them seem to really be selling the newer (and lower performance) LIS3DH.  The chips are roughly pin-compatible (although the breakout boards need not be, obviously), so it’s hard to be sure which you have from just looking at the board - the board might have “LIS3DSH” silkscreened on it but really have a LIS3DH installed.  You can’t really be sure until you interrogate its WHO_AM_I register via I2C.  The Pinscape software will do that during startup and report what it finds in the log, so that’s an easy way to check.

 

I bought one of those claimed -SH boards on Amazon a few months back and got not only an -H, but a defective -H at that. It would start up and generate erratic readings for a minute or two and then just stop responding to I2C.  I’d guess it was either a counterfeit or from a factory batch that failed QA testing and got thrown in the trash, and someone decided it would be clever to “recycle” them instead by selling them to Amazon customers.  Adafruit only has the -H boards, but at least they’re legit.


Edited by mjr, 22 September 2025 - 08:31 PM.


#146 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 23 September 2025 - 12:49 AM

MJR,

 

Thanks for the correction. I now recall we had this conversation back in February.   The markings on these tiny chips are almost illegible.  On these LIS3DSH module there are four digits on top row 2141, 2nd row C3H, 3rd row QD0CV.  On the real LIS3DH Adafruit module the top row 8117, 2nd row C3H, 3rd row 0QXMB.  Now here is the real kicker, both of these chips are EOL.  The LIS3DH is now called the LIS3DHTR and the difference appears to be the packaging options.  I forgot all about this until I pulled up my old schematic and board layout.  So I will need to look at the 0F register (WHOAMI) to see what are these modules really are, but I bet the are all LIS3DHTR.

Anyway, the LIS3DH is roughly on par with MMA4512 (the later having better resolution), and having provisions for both modules on a PCB would only make it better. 

 

 

 

Rick


Rickey

Intense Arcade

http://www.intensearcade.com

 


#147 mjr

mjr

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 3,332 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness

Posted 23 September 2025 - 02:00 AM

The current EAGLE plans on github have an additional slot for MMA8451Q, which is definitely a much nicer chip than LIS3DH - the specs for noise are much better, and the difference is pretty noticeable just watching it in the nudge viewer.  But LIS3DH works; it’s just a lot noisier.  It’s nice that Adafruit still has MMA8451Q boards available, since that part being long out of production is why the new KL25Z boards are shipped sans accelerometer.

 

As far as I can tell, LIS3DHTR is just an ordering code variation for LIS3DH (I believe the TR suffix is for “Tape & Reel”), and is the identical chip that they ship in different packaging from the base LIS3DH.


Edited by mjr, 23 September 2025 - 02:01 AM.


#148 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 23 September 2025 - 11:15 AM

MJR,

 

Thank you for your detailed tutorial.  I have never played with a MMA8451, I only compared the specs of each and read a few comments I found on a couple sites comparing the two.  I did read that the MMA8451 has superior noise filtering, but it is not switchable.  The LIS3DH has switchable filtering, but is not as effective as the MMA8451.  Honestly, this is way beyond my pay grade, but please correct me if I am wrong.  BTW- after looking at the pinout of the MMA8451 module in detail, I determined that LIS3DH generic module is not pin to pin compatible, but I will make accommodations for both modules on my board.

 

Thanks again,

 

Rick


Rickey

Intense Arcade

http://www.intensearcade.com

 


#149 mjr

mjr

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 3,332 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness

Posted 23 September 2025 - 05:45 PM

I have never played with a MMA8451, I only compared the specs of each and read a few comments I found on a couple sites comparing the two.  I did read that the MMA8451 has superior noise filtering, but it is not switchable.  The LIS3DH has switchable filtering, but is not as effective as the MMA8451.

 

I'm not sure where you're finding that, but it's not really consistent with what's in the datasheets.  I think the noise differences are a little more fundamental - if you could get the same performance out of the two devices by applying filtering, you could just apply more filtering to the LIS3DH data on the MCU side and call it even, but you can't do that because filtering comes with an inherent reduction in resolution and signal fidelity. I'm pretty convinced based on observed performance that the noise differences are either inherent in the engineering of the physical MEMS sensor and/or ADC embedded in the chips, or they're coming from a higher internal oversampling rate on the MMA8451.  I suspect it's the latter, because they actually document the OS rate on the MMA8451Q. That fits with the generally higher noise levels of the newer-generation devices, since oversampling costs power, and if you look at any newer device's data sheet, they ALWAYS lead with "Ultra Low Power" in the bullet list of virtues - that seems to be what sells these devices these days.  Cranking down the OS rate at the expense of higher noise is the right trade-off if the main thing you care about is reducing power.

 

 

BTW- after looking at the pinout of the MMA8451 module in detail, I determined that LIS3DH generic module is not pin to pin compatible, but I will make accommodations for both modules on my board.

 

Yeah, there's unfortunately no standard layout for these breakout boards.  Every one has its own peculiar pin layout.  Makes it hard to provide a generic plug-in slot for different chips on a main board.  Adafruit has adopted a fairly uniform pin layout that they use with nearly all of their STEMMA boards, so a main board with a slot for the Adafruit LIS3DH module will likely be compatible with future Adafruit accelerometer breakouts.  But that doesn't work with their own MMA8451Q board, because that pre-dates the uniform STEMMA layout and has its own unique footprint.  For the DIY board, I just added two headers side-by-side, one for the STEMMA layout and one for the Adafruit MMA8451Q layout.


Edited by mjr, 23 September 2025 - 05:49 PM.


#150 MartCS

MartCS

    Neophyte

  • Members
  • Pip
  • 4 posts

  • Flag: Netherlands

  • Favorite Pinball: Back to the future

Posted 24 September 2025 - 06:02 PM

I created a custom PCB as an update to my "Basic Pinscape Pico" project, naming the resulting controller the "Pinscape Pico Lite". I also documented this project at https://github.com/m...scape-pico-lite

The first PCBs have arrived, and I just built the first controller for the cabinet I am working on. Initial tests with the config tool look good, both the accelerometer and plunger are working. 

[...]

 

Yesterday I setup the Pinscape Pico Lite in my new cabinet project. Buttons worked fine but nudging did not. I did not have enough time to look into it more but today I had another look. First of all, the joystick view was buggy. Luckily I found the menu in the Pinscape Pico Config Tool under Device > Repair JOY.CPL display which fixed this.

 

Then I didn't get the nudging to work through the joystick. Switching the X axis (L/R) and Y axis (U/D) to OpenPinDev fixed the issue. I still have to play with gain, I have to push really hard to make the ball move in play (but it works!).

 

Next up is the plunger, I already set the Position Axis to OpenPinDev, but I need to move over the plunger from my tabletop cabinet first  :lol:

 

But so far, so good!

 

This is my first PCB design and I am not very proficient with electronics (I am a computer science nerd that does a little electronics on the side as a hobby). I'm quite proud of what I achieved so far but I'm not sure if I have the skill or the time to adjust the PCB design to other breakout boards. If someone wants to pick up on that they can use my design as a starting point, hence the BSD 3-clause license. I am also more than happy to accept Pull Requests for any non breaking changes.



#151 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 25 September 2025 - 02:46 PM

 

This is my first PCB design and I am not very proficient with electronics (I am a computer science nerd that does a little electronics on the side as a hobby). I'm quite proud of what I achieved so far but I'm not sure if I have the skill or the time to adjust the PCB design to other breakout boards. If someone wants to pick up on that they can use my design as a starting point, hence the BSD 3-clause license. I am also more than happy to accept Pull Requests for any non breaking changes.

The PCB looks great and since it is through hole technology it should be very forgiving.  


Rickey

Intense Arcade

http://www.intensearcade.com

 


#152 thainglo

thainglo

    Hobbyist

  • Members
  • PipPip
  • 38 posts

  • Flag: United States of America

  • Favorite Pinball: Indiana Jones

Posted 12 October 2025 - 10:47 PM

I am about to place my order with Mouser to populate my Pinscape boards and ran into a question right away on the parts required, hoping someone here can provide clarity.   The version I received is Revision 20250203 - I've read on the github the issues in these early production boards, looks primarily to be with the Power Board and things I can rectify.

 

However, the BOM posted on the Github doesn't  seem to match my board.  I haven't looked at all the discrete components, only the ICs.  In the BOM, IC14, IC15, IC16 and IC17 are listed as the same part number (SN74HC165N), but on my board IC14 is 8 pins, IC15 is 3 pins, IC16 is 16 pins and I cannot locate IC17.  Also, my board has IC18 which doesn't show up in the BOM posted on Github.

 

Are the components the same and only the silk screening changed?  Is there an older BOM that links to these boards?

 

I tried uploading an image of my board but I've forgotten how the image host works and gave up after several attempts.

 

Any guidance will be greatly appreciated.


Mini cab with 24" PF, 19" BG and small DMD. Raspberry Pi Pico controller.

#153 mjr

mjr

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 3,332 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness

Posted 13 October 2025 - 02:10 AM

Right - the BOM can change across revisions, so you must use the BOM version that matches the board version.  You can find that by viewing the github file history for the BOM files.  To make the information easier to find, I added a link to the README for the BOM corresponding to the board version that RickH made.

 

https://github.com/m...ds/DIY-Friendly

 

See BOM Versions.



#154 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 13 October 2025 - 02:31 AM

Matt,

 

IC11, IC12, IC16, and IC18 are all SN74HC165N.  IC15 is a S-80833CLY-B2-UTO92.

 

Rick


Rickey

Intense Arcade

http://www.intensearcade.com

 


#155 DDH69

DDH69

    Pinball Wizard

  • Platinum Supporter
  • 3,605 posts
  • Location:DOFLinx HQ, Adelaide

  • Flag: Australia

  • Favorite Pinball: Monster Bash

Posted 13 October 2025 - 03:54 AM

@mjr it took me a while (because I went away for nearly 5 months) but I've just "gone live" with my first LARGE PSPico and DOFLinx

 

13-Oct-25 08:11:01.444 - DOFLinx device: 1 Initializing as PSPico #1 with name=Arcade Dreams
13-Oct-25 08:11:01.473 - DOFLinx device:1 PSPico setup with 134 outputs
 
134 outputs, 32 inputs, IR In and Out, 6x Pico's
 
Now onto my next PSPico build for a Linux based arcade setup.

DOFLinx
Contributions for equipment to help with ongoing DOFLinx development can be made here

#156 thainglo

thainglo

    Hobbyist

  • Members
  • PipPip
  • 38 posts

  • Flag: United States of America

  • Favorite Pinball: Indiana Jones

Posted 13 October 2025 - 04:22 PM

Right - the BOM can change across revisions, so you must use the BOM version that matches the board version.  You can find that by viewing the github file history for the BOM files.  To make the information easier to find, I added a link to the README for the BOM corresponding to the board version that RickH made.

 

https://github.com/m...ds/DIY-Friendly

 

See BOM Versions.

Thank you for adding the link to the BOM.  Not being super familiar with Github, I know enough to view and sometimes download, but was completely unaware of the history aspect for older revisions.  What feature that might assist others who need the older BOMs - is there a way to make a note or comment on the file that this BOM is for Revision XXX?  Aside from you including the direct link to Rev 20250203, I'm not sure I'd be able to identify it from the other files in the History section.


Mini cab with 24" PF, 19" BG and small DMD. Raspberry Pi Pico controller.

#157 bandicoot

bandicoot

    Hobbyist

  • Silver Supporter
  • 40 posts

  • Flag: ---------

  • Favorite Pinball: RiverBoat

Posted 24 October 2025 - 05:51 PM

New update code on github , thanks a lot to Mjr , resolve for me a small problem with IR sending , but for me it was a big problem ;)

really good job , Thanks a lot ;)



#158 DeKay

DeKay

    Hobbyist

  • Members
  • PipPip
  • 12 posts
  • Location:Canada

  • Flag: ---------

  • Favorite Pinball: Addam's Family

Posted 07 December 2025 - 03:54 AM

Hi folks. I'm looking at getting main and power boards fabricated and was planning to use JLPCB. However, they don't take Eagle board file uploads directly. And it looks like the free version of Eagle won't permit use with boards this size. I've also tried to import the Eagle files into Kicad but I don't trust that that completely works. For example, the power board shows 111 unrouted nets and the main board 150 unrouted nets after import. Unfortunately I don't know enough about Kicad yet to know why it happens or how to fix it.

 

Is there a workaround for this problem? Perhaps someone can share appropriate gerbers for JLPCB's process? Or maybe there's an online tool that I can use for this that lets me use JLPCB's CAM files? Or will I have to find another vendor to use like PCBWay that does accept Eagle board files directly?

 

Edit: the issue with Kicad having so many unrouted nets seems to be that the planes are not importing properly so there's piles of ground vias not connected to anything.

Edit #2KiCad zones must be manually filled or refilled after changes (unlike EAGLE's automatic ratsnest). I clicked where the plane should be and used the "B" hotkey to refill all the zones. Now all nets show as routed. So maybe I'm back in business but I'm still somewhat leary of other errors that might have crept in on the import.

Edit #3: Yeah, that would have been too easy. I ran a Design Rules check on the main board and got 16 errors and 220 warnings. A lot of errors are like "Thermal relief connection to zone incomplete (layer F.Cu; zone min spoke count 2; actual 1). I know what this error means and I see what it is complaining about, but I don't know if this is a real problem or not without having Eagle or the Gerbers to check against. Maybe this is actually acceptable and mjr adjusted the Eagle DRC rules to let it by, or maybe it is an error on the Kicad import. Can't tell.


Edited by DeKay, 07 December 2025 - 02:53 PM.


#159 rickh

rickh

    Enthusiast

  • Gold Supporter
  • 435 posts
  • Location:Raleigh

  • Flag: United States of America

  • Favorite Pinball: I love them all

Posted 07 December 2025 - 01:21 PM

When I had these boards fabricated last year, I used the gerber files that MJR provided me for fabrication.  BTW- How does JLPCB prices compare to PCWay? 

 

Regards,

 

Rick  


Rickey

Intense Arcade

http://www.intensearcade.com

 


#160 DeKay

DeKay

    Hobbyist

  • Members
  • PipPip
  • 12 posts
  • Location:Canada

  • Flag: ---------

  • Favorite Pinball: Addam's Family

Posted 07 December 2025 - 07:01 PM

BTW- How does JLPCB prices compare to PCWay? 

Good question. I uploaded the Eagle board directly to PCBWay and then did a quick and dirty generation of Gerber / Drill files for JLPCB from my suspect Kicad import as a trial run. JLPCB is so cheap I have a hard time believing it is correct, even without the $6 off coupon they are giving me. The image file in my cart certainly looks correct on first glance.

 

jlpcbvspcbwayv20.jpg