Git Product home page Git Product logo

glowing-potato's Introduction

glowing-potato's People

Contributors

bmar345 avatar rrbutani avatar sameermithani avatar spendharkar avatar

Stargazers

 avatar

Watchers

 avatar

glowing-potato's Issues

VS1053 Prototype

Getting the VS1053 to play an MP3 file (from flash is fine) on any kind of microcontroller is probably a good first step.

Next is doing the same but on an ESP32.

Finally, on an ESP32 with an SD Card.

  • 🎶
  • VS1053 + esp-idf
  • + an SD Card

Pick a battery!

Unfortunately, this involves figuring out how everything is laid out and possibly CAD.

Display's VDD voltage isn't right

It's currently 3.3V (which is the rated maximum acceptable voltage) while the nominal voltage is 2.8V.

We can fix this by putting a diode with roughly a 0.4V or 0.5V drop in series with the display's VDD. The diodes we're using for the buttons might be appropriate.

We need to ensure that:

  • the chosen diode can handle the display's current draw
  • the voltage drop yields a voltage that's comfortably within the display's acceptable range

microSD Card prototype

The concern here is pin mapping; the ESP32 has a lot of restrictions about what pins can and can't be used depending on the specific variant used and other hardware factors.

Running the example SD Card program with the pin map in Board V0 successfully is all we're looking for here. The only thing to watch for is that we ensure that we're using the 4 line SD Card interface and not just SPI.

Button circuit prototype

Before we manufacture board V0, we should build and test the ADC/digital in button circuit.

Since we're mostly concerned about the electrical soundness of the design, we can test this on a breadboard with a TM4C.

We should check that:

  • each button yields a different ADC reading (the ESP32 and the TM4C both have 12-bit ADCs but really we shouldn't need nearly that much resolution for this)
  • all combinations of the five buttons yield discernible readings (not required but this should be possible if the design works)
  • single or multiple buttons being pressed result in the digital input going high
  • the digital input is adequately de-bounced
  • the circuit never draws excessive amounts of current (<1mA)

CAD for the case

This is a lot for a single issue.

It's hard to make a comprehensive list so far out, but here's a quick brain dump of the things I can think of now. This is split into the top and bottom parts.

Bottom:

  • spots for the magnets (need to wait for #14)
  • lip for the PCB
  • side hole (left?) for the LED
  • groove for the battery
  • notches for the headphone jack, USB connector, and microSD card slot

Top:

  • matching magnets spots
  • aligned cutout for the display + lips for the plastic housing
  • aligned cutout for the clickwheel PCB + nubs for the holes
  • slightly smaller inner diameter on the acrylic wheel for support for the inner button
  • inner button piece; aligned to the acrylic wheel's inner diameter + with a lip aligned to the PCB's inner diameter

Misc:

  • export the board files as CAD
  • touch up the Eagle parts we're using; add CAD where possible
  • rounded corners, a chamfer
  • pattern on the bottom?
  • labels, logos, writing on the bottom?
  • a texture, bumpy style?

AT42QT2120 prototype

This is again mostly about the hardware; particularly the actual wheel geometry.

Things to check for:

  • verify that MODE and RESET work as expected; neither is connected to the ESP32 in Board V0
  • that we can get read readings from the wheel!
  • how thick we can make the thing sitting on top of the wheel
  • guard channel?
  • that CHANGE works as expected

Pick magnets

they have to be small and strong and narrow and thin

and also cheap

Pico revA makes use of capacitors that do not exist

We settled on 0402 caps for layout reasons, but some of the higher capacitance parts we're using (>2.2 μF) aren't actually available in this size.

Since revision A has already been ordered, we'll have to push off physical changes to the board until revision B (i.e. switching to larger package sizes where we need to). To salvage revision A, we'll use smaller capacitance capacitors where we must and physically larger capacitors where we are able to.

These appear to be the affected capacitors:

  • C1
  • C3
  • C4
  • C5
  • C22
  • C24
  • C26
  • C27
  • C28
  • C29
  • C32
  • C37
  • C43

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.