I got to play with all this thanks to the Zero To ASIC Analog course beta. UPDATE: the course is now available http://eepurl.com/iSZcFQ
This crash course shows you everything that goes into creating mixed signal and analog ASICs, using free and open source tools, and the open Skywater 130 PDK. I'll cover some background and the entire flow that got me to tape out an ADC, along with impressions, information and tips that are geared towards anyone coming from a digital, or PCB circuit design background.
In the tutorial I touch on some basic theory, cover schematic capture and simulation with xschem, layout using magic, parasitic extraction, more simulation, including digital blobs in your analog circuits for mixed-signal and putting everything in a padring.
These are all things you can do right now, on your home computer, by installing the free tools or thanks to a virtual machine that includes all the tools pre-packaged for you (link below). If you want to actually get a physical chip out of your efforts, TinyTapeout now supports mixed signal and analog designs in addition to digital, for a cost that is orders of magnitude below what it was just a few years ago.
The sky130 process is a bit older, but if you're doing analog these are the sizes you want to be playing in anyway, so it's win-win for us: cheaper and perfect for the task.
Whether you want to start down the path of becoming an analog chip designer, would like a greater understanding of the tradeoffs involved in creating circuits down to the atomic level, or wish to master simulation and up your game when creating PCB-level electronics, these tools and the tinytapeout process and community make it all possible.
I hope to put out focused videos, to really get into the bits I didn't have time to cover, namely on xschem schematic capture and layout with magic. I've done a lot of customizing and scripting and think it'll be worth sharing. Let me know if there are any bits you'd like to see more focus on.
Useful references from the video: Tiny Tapeout: tinytapeout.com
Open Source Analog ASIC design: Entire ProcessPsychogenic Technologies2024-05-27 | To get the scoop on all the stuff that doesn't make it into videos, check out: news.psychogenic.com
I got to play with all this thanks to the Zero To ASIC Analog course beta. UPDATE: the course is now available http://eepurl.com/iSZcFQ
This crash course shows you everything that goes into creating mixed signal and analog ASICs, using free and open source tools, and the open Skywater 130 PDK. I'll cover some background and the entire flow that got me to tape out an ADC, along with impressions, information and tips that are geared towards anyone coming from a digital, or PCB circuit design background.
In the tutorial I touch on some basic theory, cover schematic capture and simulation with xschem, layout using magic, parasitic extraction, more simulation, including digital blobs in your analog circuits for mixed-signal and putting everything in a padring.
These are all things you can do right now, on your home computer, by installing the free tools or thanks to a virtual machine that includes all the tools pre-packaged for you (link below). If you want to actually get a physical chip out of your efforts, TinyTapeout now supports mixed signal and analog designs in addition to digital, for a cost that is orders of magnitude below what it was just a few years ago.
The sky130 process is a bit older, but if you're doing analog these are the sizes you want to be playing in anyway, so it's win-win for us: cheaper and perfect for the task.
Whether you want to start down the path of becoming an analog chip designer, would like a greater understanding of the tradeoffs involved in creating circuits down to the atomic level, or wish to master simulation and up your game when creating PCB-level electronics, these tools and the tinytapeout process and community make it all possible.
I hope to put out focused videos, to really get into the bits I didn't have time to cover, namely on xschem schematic capture and layout with magic. I've done a lot of customizing and scripting and think it'll be worth sharing. Let me know if there are any bits you'd like to see more focus on.
Useful references from the video: Tiny Tapeout: tinytapeout.com
Either way, come on in, enjoy the goods in the course, then let me know how it goes and how I can make it better.
*The Two Tips* In this video, though one of these is just a dumb easy trick and plenty useful but really pretty optional, the other is a fundamental aspect of my entire process and I have found that this one thing changes everything about my experience with KiCad and the level at which I can operate.
It's more than just hotkeys, it's a whole system for effective schematic capture and PCB layout that won't just avoid RSI, but will keep your mind laser focused on the electronics, on the *circuit*, rather than on the mechanics of translating what's in your brain to the schematic sheet or layout.
The tiny slow downs, the micro interruptions, they have very little cost but happen so often that it rapidly accumulates. You can be at a whole new level just by reserving that energy and time for electronics, rather than wasting it all on UI.From PCB to Space: Assembly, Testing, and Coding for Low Earth OrbitPsychogenic Technologies2025-05-17 | Making the module real, and the troubles that ensue! PCBA's the easy part, getting to shipment though...uuf! All the goods get gotten in my mailing list at news.psychogenic.com/spasics -- tips, updates and finds all to your inbox.
Continuing with the pocketqube satellite experiment module design we did in youtube.com/watch?v=I-tqtEzP2bo now it's time to do PCBA, bring-up the circuit, test, program, and debug debug debug as the deadline to launch looms.
There are a few surprises in store in the process that need to be overcome if we hope to get micropython and a custom ASIC running in low Earth orbit.
*** Hunity *** Some details about Hunity, the BME satellite on which we're getting a ride, from Alba Orbital (the launch broker arranging to get us all to LEO): albaorbital.com/bme-hunity
If you want a deeper dive into the platform, Matt and I got to chat with Tibor from BME who's giving us the ride to space and it covers a lot of the specifics of the satellite, pocketqubes in general, the other experiments on board and more: youtube.com/watch?v=SRuBDMZZiI0
*** Experiment Module *** The spASICs repository is at github.com/psychogenic/spasics and that's where you can find the hardware design files, the requirements document (PRD) and stuff like that, including the fully documented I2C protocol/API
*** Customized uPython *** My fork of the micropython rp2 port, with the i2c module: github.com/psychogenic/micropython/tree/rp2-i2cslave/ports/rp2/modulesCan You Design a Space Circuit in Weeks? Watch Me Try!Psychogenic Technologies2025-05-04 | Sending my own design into orbit? Awesome...if I can pull it off! Join me on the adventure as I try to get an experiment board ready for a satellite launch.
Stay it touch with the mailing list if you want more info on the spASICs or the other stuff I'm working on: news.psychogenic.com/spasics
I'll describe the challenge and opportunity I got to design a circuit and firmware to run aboard the HUNITY satellite, a BME (https://www.bme.hu/en) pocketqube mission carrying a number of different experiments into low earth orbit. We'll talk about satellites and then get to business with kicad, actually spinning up a fresh new space-worthy PCB.
We got the call to join at the very last minute, and everything will have to work the first time if we want to be ready for launch, but I'm going to give it all I've got, and learn a lot along the way.
The spASICs repository, with the PRD, will be updated as things progress: github.com/psychogenic/spasicsFPGA Magic: Drag-and-Drop Updates, Slots, Clock Control & Serial in One ComponentPsychogenic Technologies2025-02-08 | This single extra in your BOM will let you shoot bitstreams via a USB drive, get dynamic clocking and a USB serial for your FPGAs, all in a cross platform way.
Riffpga gives you all this, is free and open-source and is designed to be extensible. See how it was made and how you can make the most of it.
*** Resources ***
If you'd like to know when the Anything Pmod or other FPGA boards and projects are available: news.psychogenic.com/fpga
Riffpga is available on github at github.com/psychogenic/riffpgaFrom Sim to Silicon: Reuse Your Testbenches with Hardware-in-the-LoopPsychogenic Technologies2024-12-13 | Real chip verification, out in the wild, for FPGA, ASIC and more: turn your simulation tests into live hardware probes. Deep VCDs from digital designs, in-circuit. These are some of the cool things you can do with microcotb and I'll show them all in this guide to digital IC testing.
** FPGA news and more ** Update: a mailing list is where it's at news.psychogenic.com/fpga -- get FPGA news and more, and stay in touch with my periodic updates (about once a month)
** cocotb course/workshop **
The testbenches used throughout are based on cocotb (v2). I'm preparing material and a workshop specifically on cocotb so, if you are interested in learning more on that, hearing when it's out or helping tailor it to your needs, please see
** cocotb ** Microcotb aims to be compatible with the fresh v2 version of cocotb. Documentation on that is at docs.cocotb.org/en/latestSurprising Tools I use for PCB ProjectsPsychogenic Technologies2024-10-27 | "Secret" circuit board design and assembly tools I reach for when odd shapes, curvy text on silk screen or lots of artwork is on the menu. I reach beyond KiCad, using tools such as Inkscape (vector graphics), Freecad (3D modelling), GIMP (images) and Slic3r (3D printing) in the context of board design and to assist with PCB assembly.
To get the scoop on all the stuff that doesn't make it into videos, check out: news.psychogenic.com where you can sign-up for periodic updates straight from the horse's mouth (I, in this metaphore, am the horse).
Learn about and try out inkscape at inkscape.org Freecad is available at freecad.org KiCad is, of course, at kicad.orgTinyTapeout04: demoboard preview and quickstart guidePsychogenic Technologies2024-05-21 | ASICs and demoboards are shipping: this quick guide will give you a preview of the hardware and how to interact with it. It goes through first powerup, selecting and controlling projects through the browser, using the commander app, touches on the micropython environment, SDK and REPL shell and shows just how easy it is to update the OS and SDK.
My favorite kicad 8 enhancements and optimizations: all the tools and tweaks that keep me in flow and focused on design. I'll show my favorite bits related to net classes, grids, hotkey optimization and more.
This assumes you're already comfortable with Kicad and want to leverage all the bits to get peak performance out of it. If you're new to kicad, Phil's Lab has some great walk-through that cover everything from the start: youtube.com/watch?v=nkHFoxe0mrU
If you have an hacks, tricks or tweaks I haven't covered, please comment and let me know: I'm always eager to get better at this. Also let me know if any of the techniques shown were unclear!
If you think kicad is awesome and want to help make it even betterer, head to donate.kicad.org and give them a hand :-DKicad schematics and PCB Python scriptingPsychogenic Technologies2024-02-07 | Not just for layout anymore! Kicad schems can be easily edited or generated with this open source Python library, and I'll be doing both through the course of this short tutorial, including creating a simple LED grid design generator, to demonstrate some possibilities.
The skip modules are designed to parse the kicad s-expression source files and provide dynamically generated objects to allow full control over the contents of the design. They'll work with any s-expression file, but are optimized to work with those generated by eeschema for kicad projects.
In addition to being a true reflection of the schematic that you can modify programatically, objects are enhanced with tons of utility methods that let you easily move, clone and generate, search and filter.
The full library is available on github.com/psychogenic/kicad-skip and is, I hope, well documented.USB bootloader for custom FPGA: get DFU with no hardware required!Psychogenic Technologies2024-01-26 | A bootloader that lets you update FPGA config using only a USB cable, through DFU, that can even be used from a browser: no programmers, no FTDI chips, nothing on the board but the FPGA and 3 pins to deal with USB. Be sure to sign-up on news.psychogenic.com/fpga-updates for FPGA and other cool electro-news.
At first, I thought I'd be using the TinyFPGA bootloader, and wired it accordingly. That didn't work out so easily, so instead here I describe and demonstrate the use of the Nitro (NO2) bootloader, which uses a similar arrangement to talk USB and provides for standard DFU updates of the firmware: both its own, and the FPGA's.
Dive into FPGA schematic design, moving beyond the comfort of development boards to create our very own custom PCB. OPEN hardware, schematic is online: check links below.
This video is perfect for anyone new to integrating FPGAs into their circuits. I'll guide you through the process as I design and layout a board centered around the iCE40 UP5k, as a drop in replacement for the TinyTapeout ASIC carrier boards.
The goal is to have a PCB with its own FPGA and supporting components, and set it up in a way that we can get a bootloader running that will allow for easy updates through USB, without any extra hardware or external programmers.
The idea here is to provide a means to iterate designs, right on the tinytapeout demoboards, prior to actually taping out. Though this application is very specific, it's easy to go from this circuit to pretty much any board built-around or including an FPGA.
The schematic is open hardware and (a version that's already been improved since this video was recorded) is available now.
and the entire project is available in that repository, at github.com/psychogenic/caravel-breakout-pcb/tree/main/ASIC-simulator/breakout-fpga-ICE40UP5K-TT3Architecture and code an Arduino Project for this Open Hardware Signal GeneratorPsychogenic Technologies2023-12-10 | Delve into the planning and software that animate the LO Guv'nor hardware, an Si5351-based lab bench tool that gives you 3 clock signals from the kiloHertz to hundreds of MegaHertz range, and walk through the process of creating efficient but clean system, code and interface for a space-constrained platform (Arduino Nano).
This isn't just about writing code, it's about understanding the hardware you're working with and the constraints of a tiny device: from limited flash ROM to dealing with the tiny OLED display.
We'll look into the circuitry, but since it's simple glue for the Si5351, I2C OLED and Arduino, our main focus will be on the C++ structure code that brings it all together and allows its behaviour to be modified easily.
So come along to get your own source of high frequency clocking, for RF, FPGA or anything, or just to see if you can pickup so new coding tricks, or maybe share some of your own.
*** LINKS ***
The entire project is open source, and you can get both hardware and software from the repo: github.com/psychogenic/LOGuvnor
Purchase Populated PCBs from me through Tindie: tindie.com/products/psychogenic/lo-guvnor (might still be pending approval by them, I dunno: if you want it and it's not yet available, let me know with a message or comment or @ on twatter or something)
See how I get Python talking SPI and I2C from a computer, to quickly develop and understand chip APIs. This thing can also program flash memory, microcontrollers, and FPGAs, do JTAG and SWD, level-shift to anything between 1.8 and 5 Volts and is all around pretty cool and useful.
If you're curious about the Caravel SoC, you can find out more at caravel-harness.readthedocs.io/en/latest/index.html and the housekeeping SPI stuff is at caravel-harness.readthedocs.io/en/latest/housekeeping-spi.htmlThe Hidden Power of Formal Methods in Hardware Design: Crash CoursePsychogenic Technologies2023-08-10 | Great for verification, formal methods can also supercharge hardware development. In this quick tutorial overview, I'll provide key highlights from my recent talk at the Free Silicon Conference (FSiC2023) focusing on the tools and techniques I use while creating FPGA and ASIC designs: namely cover and BMC.
Cover statements are useful to see the system in action, to do simulations without micromanaging every single signal, and even to find solutions to problems.
Bounded model checks are great for hunting bugs but I also show a neat way to use BMC to do sneak path analysis.
Though the techniques covered here are all pretty independent of the language/toolkits you're using to implement your hardware FPGA/ASIC designs, here I'm using Amaranth (Python): amaranth-lang.org/docs/amaranth/latest/intro.html
And you can have a look at the amaranth_testbench library, which I introduced and used in much of the talk, that includes all the examples I covered and more: github.com/psychogenic/amaranth_testbenchLab Instrument Automation with PythonPsychogenic Technologies2023-06-15 | Remote control and automation of test instruments helps you save time, minimize errors, and increase productivity. Streamline your lab’s workflow, and focus on what matters: research and development.
Here I'll show you how I optimize test and data collection from electronics lab instrumentation, using Python libraries from low-level basic access to the psytestbench instrument driver library I've been building and using internally.
It includes some documentation and many of examples. This library allows for code completion and a unified interface and support a few families of different instruments including oscilloscopes, signal generators, power supplies and multimeters. And thanks to VISA/pyVISA, SCPI, and the existing codebase, adding support for new instruments is very straightforward.
Realized I forgot to show that there's a good deal of documentation in the code itself, so with an object, say, "dso" you can just do help(dso) or help(dso.channel1) etc should give you some good clues as to what's available as well as show all the methods and params.
I did a short "live" demo, and discussed the circuit tested here in greater depth, on the last @TheMakerCast which also featured some cool robot action, tech talk and even a quiz--you can see here: youtube.com/watch?v=jZxsofw2meE
Links of interest: pyvisa: pyvisa.readthedocs.io/en/latest/index.html easy-scpi: pypi.org/project/easy-scpi psytestbench: github.com/psychogenic/psytestbench makercast: youtube.com/@TheMakerCastPnP Vision Boost: Keep the Camera, Upgrade Performance | Simple hardware enhancementPsychogenic Technologies2023-05-20 | See how I raised the performance of my commercial PnP without needing to change the camera and boosted it's accuracy through it's ability to pinpoint fiducials. The circuit is uber simple but the process had a few gotchyas that totally gotchme, and I'll walk through the adventure while providing useful tips.
The PnP works pretty well, but the onboard camera just isn't the best and the lighting was less than optimal.
Though I actually purchased a mini bullet USB camera to upgrade it, I wanted to see how far I could go with the stock hardware. One major issue was in detecting fiducials, RELIABLY. Here I present a solution that took me a little time to get just right but that is a whole lot cheaper and simpler than changing the cam.
Subscribe to the channel for more content on open-source PnP, CAD and ASIC design tools and technologies.Tame the yellow line: Master KiCad 7 Edge.CutsPsychogenic Technologies2023-05-16 | Into that box: guarantee PCBs fit enclosures and speed up the process, with a slew of tricks around getting edge.cuts done fast and well. Updates are gotten through news.psychogenic.com/kicad !
UPDATE: @markusofficial9016 in the comments pointed out an awesome feature I completely missed: in pcbnew, you can now just select all the edges and Right Click + Fillet Lines. So cool!
It isn't the most exciting layer, and I'd rather be routing critical high speed traces, but it sure can become a big deal when you mess it up. So in this little tutorial, I've collected ways I've found to layout a perfect printed circuit board outline while taking less time and less work. We'll be using a couple of my favourite, and libre, CADs--kicad and freecad--to chop & rock and get the job done.
I move pretty quick on the easy parts so I won't bore you but if you're new to this: this is video, feel free to pause, I've tried to include all steps even if at a rapid clip--tell me if I skipped anything non-obvious. If you like these quick tips, let me know and I will take the time to make more :)Python to HDL: full Amaranth walkthrough to FPGA and ASIC GDSPsychogenic Technologies2023-04-16 | We get from design to FPGA/ASIC in this complete walk-through of implementation using the Amaranth language in Python. Part 2 of project Neptune, where a digital logic hardware frequency discriminator is used as a guitar tuner.
The previous video actually describes the project and this one shows how I complete a small but non-trivial project in a single day thanks to the power of Python and Amaranth. The built-in simulation is used to validate modules and inspect traces with gtkwave and the whole thing spits out Verilog that is tested on a Lattice FPGA. Finally, I try and squeeze it into the space afforded by a tinytapeout slot, so it can be produced as a real integrated circuit at low cost.
Amaranth docs: amaranth-lang.org/docs/amaranth/latest/lang.html TinyTapeout (for ASIC production): tinytapeout.comPython design of a hardware digital tuner on FPGA and ASICPsychogenic Technologies2023-04-14 | In this tutorial/walk-through, we'll design a flexible frequency discriminator and use it EXTREME as a digital guitar tuner. FPGA and simulation will be used to dev and test, then an actual integrated circuit will be manufactured by including Neptune in the next TinyTapeout ASIC.
Though here it's the Neptune guitar tuner, it's designed to be simple to reconfigure for use with other instruments or any non-music related context involving telling the difference between--and proximity to--frequencies of interest.
Amaranth (previously known as nMigen), an open-source toolchain for developing hardware based on synchronous digital logic, will be used to create a verilog generator that in turn describes the hardware and can be used to setup an FPGA to prove our circuit. Then an open source toolchain will complete the flow to get it hardened and ready for production in an ASIC.
I'll be submitting the design for inclusion on TinyTapeout before the April 24th deadline, and the link to the source is a the bottom here.
Sidenote: anyone who was at HackadayEurope in Berlin that I haven't been in contact with, hit me up :)
Links of interest Full Walk-through Video: youtube.com/watch?v=yJxAX7gCpvQ Neptune was completed (in the above video) and is available here: github.com/psychogenic/neptune Amaranth: github.com/amaranth-lang/amaranth TinyTapeout: tinytapeout.comCheap Pick and Place + OpenPnP: CHM-T36VA upgrade guidePsychogenic Technologies2023-03-16 | Get a Charmhigh PnP controlled with OpenPnP: convert the inexpensive, yet fast and sturdy, CHM-T36VA pick and place machine to have it controlled by the open-source powerhouse that is OpenPnP. I love my LitePlacer but a need for speed, and for a better feeder system, convinced me to try this commercial pnp. Still, there's no way I'm leaving behind the awesome openpnp, so in this guide/adventure, I'll walk you through the mistakes I made and how I finally got openpnp to play with the machine.From top to Transistors: opensource Verilog to ASIC flowPsychogenic Technologies2023-03-06 | Go from HDL to physical CMOS layout right now with open-source tools, by following this HOWTO guide and demo. When things go well, the design can be converted to GDS for ASIC fabrication in a single step. I also show how we can dig deeper, using yosys, openlane and openroad, when the hardening processes isn't quite as simple.
This is part of my journey through the zero to ASIC course, so I don't have all the answers, but have found some interesting bits already. Let me know if you see mistakes, or have hints! I'll be updating the ASIC playlist with more as I progress.
TinyTapeout: tinytapeout.comAwesome Kicad Routing AssistancePsychogenic Technologies2023-02-16 | Found a great trick that really helps while routing PCBs with Kicad. I didn't know this was possible but you can colour wires by net class, which really rocks. There are a couple of downsides but I think it's a tool well worth leveraging. Check it out and let me know what you think, if you knew about this already (how'd you find out?) and if you have any tips to share!Learn ASIC design with the 1-minute MOSFETPsychogenic Technologies2023-02-14 | You can design integrated circuits, at no cost with opensource tools, and even try out designing MOSFETs, inverters and other nifty bits right now without installing anything.
I'll show you some examples, and talk about the course I'm taking to learn to design ASICs from the ground up using both siliwiz and the cool zero-to-asic course.
The tutorial and lessons are in the lessons button, or you can just see docs.google.com/document/d/1H3jA7guvXT7toEvUObOQ1viQ6Qz_QSGDiJ5OBS2pDEIOpenPnP Feeder Sets: how to make, setup and usePsychogenic Technologies2022-12-14 | How to generate custom pick and place strip feeder sets and all the steps for using them and doing setup with OpenPnP in the context of a small PCB assembly project. I wanted longer feeds for a project that had a whole bunch of components, so this video walks you through the PCBA adventure. Links below.
** OpenSCAD and Tray generation ** OpenSCAD script: download the script ("PnPStripFeeder.scad") and run it locally or use the thingiverse customizer on the site (there's a "Open in Customizer" link on the right) thingiverse.com/thing:5711658
** MeatbagPnP ** MeatbagPnP: if you're doing manual assembly like I did, get yourself a copy of meatbagpnp--it's well worth it github.com/colinoflynn/MeatBagPnPCells and bacteria: playing with a compound microscopePsychogenic Technologies2022-10-02 | Something different today: I played with a light microscope I just got and am rather surprised by how easy it was to see some really cool life and wanted to share some of the neat views. I'm a newbie at this, and don't know most of what I'm seeing (any hints or corrections appreciated!), but it's pretty cool regardless. The scope is a (relatively) cheap Swift SW380T (nothing paid by them, just what I chose to get), and I swapped in the camera from a stereoscope to capture the images. Special thanks to Oliver, the microbehunter (youtube.com/c/Microbehunter), for convincing me to take the plunge and finally get a microscope.Python Control of FeelTech Waveform Gen: How to get it workingPsychogenic Technologies2021-10-13 | Controlling an FY2300 Feeltech arbitrary waveform generator from a computer can be a bit of a challenge, but I got it working and show you how I did it and how you can use Python to control this function generator through USB serial, to automate tasks or just make using the device easier.
Though this adventure is around my FY2300-20M--i.e. 20MHz version FY2300, which the v3.4 firmware identifies as model FY2320--this library also works for a host of FeelTech/FeelElec signal generators from the FY family (like the FY6600, FY6800, FY6900...) and my fork/new functionality should soon be pulled into Matt Wach's fygen project.
Soundtrack: Level Up by Quincas MoreiraAmateur Radio Fast Track: What to focus on and where to find it (part 2)Psychogenic Technologies2021-03-28 | In this leg of the amateur-radio-license-in-a-week project, you'll find everything that isn't electronics that needs attention and the best sources for that info. Links and more details can all be found on: inductive-kickback.com/2021/03/ham-license-fast-track-amateur-radio-resources
First video in this series: youtube.com/watch?v=eLJrnjwJ8x8&list=PLWm3YS7ce87lVyHEBTqt56QXt03RgNK8c&index=1Amateur Radio Fast Track: Why and How (part 1)Psychogenic Technologies2021-03-26 | Get a ham radio licence in a week: that's the project and this short series will document the process and tips, tricks and interesting finds picked up along the way. I'm doing this in Canada, but most of the information is universal because physics and international agreements.OpenPnP Project Setup SimplifiedPsychogenic Technologies2021-01-17 | Get a pick and place machine PCB assembly project setup fast and easy, leveraging the power of OpenPnP and its wonderful scripting engine to use extensions that shrink configuration time down a whole lot. All the scripts used in this walk-through are part of the psypnp system, available through github at: github.com/psychogenic/psypnp
Soundtrack, where used, is Vans in Japan | Tuff Data youtube.com/watch?v=hA6VehONiBgOpenPnP Scripting final! #5: GUI, top level scripts, NV-storagePsychogenic Technologies2020-10-22 | After getting feeder auto-config working in previous videos of the deep dive into OpenPnP scripting series, we create GUI top-level scripts to allow configuration and control by the user, through the OpenPnP menu.
Much of this part applies to all kinds of openpnp scripts you might make, introducing and using utility functions for non-volatile storage, GUI messages and user input etc, and so goes into greater depth on these, with less accelerated coding and more talk/walk-through.
Source for modules (will be evolving rapidly but this is most everything in the videos): github.com/psychogenic/psypnpOpenPnP Scripting #4: Apply Feeder Config and Finish the AlgoPsychogenic Technologies2020-10-21 | Scripting deep dive #4 where we manage to auto-configure the OpenPnP pick and place feeders directly from a source project BOM.
After getting through the complexity and hunting down a few bugs, the basic goal of the project is achieved: PCB assembly project setup should now be a whole lot easier!
Source for modules (will be evolving rapidly but this is most everything in the videos): github.com/psychogenic/psypnpOpenPnP Scripting #3: Feeders, Parts, Sorting and Encapsulating and DebuggingPsychogenic Technologies2020-10-20 | Part 3 of deep dive series walks through figuring out, coding up and debugging the internals of a neat project (auto-config pick and place feeders from a source project BOM) in Python.
In this video, there's a good deal of back-and-forth between the coding and the OpenPnP Python REPL shell, to understand how this system is (mal)functioning and get things sorted out.
This is a longer trek than my usual tutorials: though I speed up some of the coding parts, we do get into the nitty-gritty of coding python for use in openpnp, and have a look at how I explore and debug in this context, and think (and mumble a bit). Note: the sound's still not great but will get better in next vids.
Source for modules (will be evolving rapidly but this is most everything in the videos): github.com/psychogenic/psypnpOpenPnP Scripting #2: Project, Toolkit and getting startedPsychogenic Technologies2020-10-19 | Part 2 of deep dive series showing tools and tips for extending OpenPnP with Python, while working on a cool project (auto-config feeders from BOM). Features my two best tricks for coding with OpenPnP, while elaborating on the problem at hand and going over the python module structure and getting into solving some of the needs of the project.
This is a longer tutorial: though I speed up some of the coding parts, we do get into the nitty-gritty of coding python for use in openpnp, and have a look at how I explore and debug in this context. Note: the sound's not great but I'm working on it!
Source for modules (will be evolving rapidly but this is most everything in the videos): github.com/psychogenic/psypnpOpenPnP Scripting Deep Dive: Extend a pick and place with PythonPsychogenic Technologies2020-10-19 | Intro to series that will show tools and tips for extending openpnp with Python by walking through development of a moderately complex set of scripts and modules to automatically go from BOM to configured feeders.
Source for modules (will be evolving rapidly but this is most everything in the videos): github.com/psychogenic/psypnpHow To EZ Connect TinyG to Pick And PlacePsychogenic Technologies2020-08-26 | How to create/setup your own TinyG "EZ Connect", for LitePlacer or other pick and place/G-code controlled machines. Also: giving away the extra boards I have (while available!).
Its advantages over a straight-up direct connection to the TinyG are mainly that it: * decouples the TinyG from the machine (remove, replace or share the TinyG with other installations with only two cables to muck with); * hosts support components (like vacuum pump and valve FETs); * provides a few configuration jumpers (namely how the Z limits are handled); and * has some extra smoothing caps, so even a “far away” TinyG works flawlesslyOpenPnP Pick and Place run: highlights, problems and fixesPsychogenic Technologies2020-08-07 | A small run of PCBs assembled through OpenPnP controlling a pick and place machine. It's focus is the processes I've developed for assembling small prototype runs, common (or, in any case my) mistakes and ways to solve them efficiently.Get Started with LitePlacer PnP: LP and OpenPnPPsychogenic Technologies2020-07-22 | After assembling the entire Liteplacer pick & place, we finally get to play with it. Here I'll go over the experience of producing 70 PCBs of six different designs, using both the Liteplacer software and OpenPnP, sharing lessons lessons learned along the way. More info will be posted on inductive-kickback.comPick and Place: Interfacing solution and wiring it upPsychogenic Technologies2020-03-03 | In this step, I connected the LitePlacer pick and place to the TinyG control board using a custom "EZ-connect" solution, that handles the FET switches, gives an easy way to switch between LitePlacer and OpenPnP software and allows me to keep the brains separated from the body of the machine. You can learn more about the, now open sourced, EZ connect at: inductive-kickback.com/2020/08/tinyg-ezconnect-for-pick-and-place-machines
I also show how I saved on a bit of wiring with the head limit switches.
The pick and place is finally alive! Next step is to try and actually use it.
Soundtrack: The End Is Near by Gunnar OlsenLitePlacer PnP: Complete Mechanical AssemblyPsychogenic Technologies2020-02-29 | The LitePlacer pick and place is fully assembled and belted. I used a slightly different technique to secure the belts and the machine is prepared for wiring up the electronics.
Soundtrack: We Could Reach by Freedom Trail StudioLitePlacer: kit unbox and mechanical assembly part 1Psychogenic Technologies2020-02-26 | This second installment of the LitePlacer build series gets started on actually building the machine: exciting! Only minor issues encountered, and easily resolved.
Soundtrack: That Part by Diamond OrtizLiteplacer Pick and Place Build: Getting StartedPsychogenic Technologies2020-02-25 | I'm building a liteplacer pick & place machine, huzzah! The Liteplacer is an open hardware/software pick and place system for prototyping and small runs. This series will document the process and any hurdles encountered. Here I go through everything you'll need before getting started and touch on the reasons why Liteplacer was a good choice for my lab. There will be more info and perhaps downloads through the blog, keep an eye on inductive-kickback.com/2020/02/a-pick-and-place-machine-for-prototyping
Result: it's pretty easy to talk with the '9250 and to get the Madgwick AHRS algorithm working things out for us.Touch-Key: FPC Fingerprint scanner + BLE HID keyboard comboPsychogenic Technologies2017-02-14 | Quick demo of the fingerprint-to-text prototype, which implements a bluetooth low energy HID keyboard, triggered by a fingerprint scanner.Winners Adjustable DC Power Supply (from ebay): review and demoPsychogenic Technologies2016-09-24 | A quick review and demonstration of a cheap DC-DC adjustable step down regulator module from ebay (Vin 4.3-23V, up to 2A out, 3A surge).Sanchez Portal BlasterPsychogenic Technologies2015-11-02 | Rick & Morty-inspired portal gun, including a built-in wav file player, LED lighting, a 3d printed enclosure and even a frickin' laser.