Code Monkey home page Code Monkey logo

upduino-v2.1's Introduction

UPduino v2.1

UPduino v2.1 Front

UPDuino v2.1: PCB Design Files, Designs, Documentation

The UPDuino v2.1 is a small, low cost FPGA board, built with license from Lattice Semiconductor. The board features an on-board FPGA programmer, flash and LED with all pins brought out to easy to use 0.1" header pins for fast prototyping.

The tinyVision.ai UPduino v2.1 Board Features:

  • Lattice UltraPlus ICE40UP5K FPGA with 5.3K LUTs, 1Mb SPRAM, 120Kb DPRAM, 8 Multipliers
  • FTDI FT232H USB to SPI Device
  • 30 GPIO on 0.1โ€ headers
  • 4MB SPI Flash
  • RGB LED
  • On board 3.3V and 1.2V Regulators, can supply 3.3V to your project
  • Open source schematic and layout using Eagle PCB design tools
  • Integrated into the open source APIO toolchain
  • Improved USB footprint to minimize connectors ripping off the board

Please fill out the next generation survey to suggest improvements to this board. We really appreciate the feedback and will make improvements as business permits!

You can buy the board here:I sell on Tindie

Useful links

Differences between the v2.0 and v2.1 hardware

The original design for the UPduino v2.0 was from GnarlyGrey. The design for the UPduino was transferred to tinyVision.ai by Lattice Semiconductor recently. The board is already in use for a variety of projects but some improvements were necessary to make this more production friendly. Note that this exercise was a minimal change only!

  • Changed soldermask to black to make it easy to identify the v2.0 from v2.1 and also for branding purposes. Added tinyVision logo to silkscreen.
  • Replaced micro USB surface mount connector with through hole parts. This reduces the probability of the USB connector ripping off from the PWB.
  • Unified resistor and capacitor sizes to 0603 from a mix of 0603/0805 footprints
  • Added fiducials to the board for manufacturability
  • LED and resonator went end of life. Replaced the LED with this one and the resonator with this one.
  • Flash used is the Winbond W25Q32JVSNIM
  • Boards are built in Carlsbad, CA from parts sourced from Digikey/Mouser so known good, non-recycled parts are used. We use a cool vapor phase reflow!
  • Testing: Each board is inspected using AOI to ensure all parts are placed properly. Each board is programmed with a blinking LED to ensure the parts come up and the LED is alive. Also the FTDI EEPROM is programmed with some details.

Summary of community feedback

Thank you for the continued feedback! The implementation of any of these ideas will depend on extent of the changes and ROI. Changes are in no particular order (yet)!

DO NOT CHANGE

Things that shouldnt change as the community seems to like these:

  • Open source
  • Low cost
  • 0.1" headers/breadboard friendly

Board related

  • 4 layer board, redo routing, decoupling, ground and power distribution
  • Move micro USB connector inboard to improve panelization
  • Clean up the silkscreen
  • Change design to KiCAD for open source (might cause some heartache for people used to Eagle!)
  • Make it easier to switch voltages: a solder bridge is tough to form on an 0805 resistor! Think about using solder jumper type patterns on the board.

Flash related

  • Bring out all pins to a header including the flash pins
  • Ability to disconnect the flash completely to get full access to all the FPGA pins
  • qSPI (dual transaction?) flash
  • CRAM (FPGA RAM) direct programming vs Flash using a less intrusive scheme

Improvements to current features

  • Change IO voltage programming to 1.8V from the current 1.2V as the 1.8V is more common.

New Stuff

  • Connect 12MHz clock from FTDI to the FPGA to get a more stable clock.
  • Consider going back to the UPduino 1.0 version where there was no on-board programmer but improving the design with all the above items.
    • This could take the form of a tiny FPGA board with a connector on it.

Documentation & Examples

  • Add a lot more documentation & examples!
  • Ship with a RISCV port and examples on how to extend that further with some examples
    • Is there an Arduino like IDE for an embedded RISCV? This would make it very easy to work with and continue work on the processor.

upduino-v2.1's People

Contributors

vr2045 avatar

Stargazers

 avatar Timothy avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.