QT Py with CH552 Ultra Low cost microcontroller?

CH552board

We were looking at WCH @Patrick_RISCV for a USB to serial chip to replace the CP210x, when we remembered a lot of chatter a few years ago about the CH552 series of ultra-low-cost 8051 microcontrollers with native USB. you can kinda sorta code these with Arduino https://hackaday.io/project/172143-ch55xduino and we thought it could be an interesting QT Py since it has so few pins but does cover the basic use cases: 4 ADC, UART, SPI and maybe even I2C with a bitbang connection? Still, for very very basic USB projects maybe it would be useful, particularly since it has a ROM USB bootloader. Here’s a simple design we whipped together. Since there isn’t a lot of muxing or IO available, MISO and A2 share the same pin. Some interesting unusual things to watch for: reset is backwards from how we’d expect, and bootloader mode is entered by pulling D+ to 3V? Any CH55x experts out there who want to take a look and see if we got it all wired right? Anything we missed?

CH552schem


Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Join 32,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


Maker Business — A development to watch: Intel in Ohio

Wearables — Solderable, sewable snaps

Electronics — Don’t resist – organize those resistors!

Python for Microcontrollers — Python on Microcontrollers Newsletter: 300 CircuitPython Boards, MicroPython Sponsorship Targets, CircuitPython 7.3 & more! #Python #CircuitPython @micropython @ThePSF

Adafruit IoT Monthly — Detecting Water Pollution, Smart Girder, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — New Products 5/25/2022 Feat. Pogo Pin Probe Clip – 2×5 1.27mm Pitch SWD! @adafruit #adafruit #newproducts

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !



2 Comments

  1. Author of ch55xduino here.

    The ch552 uses vcc for USB IO, and it has internal regulator to generate 3.3V for core. If you want a 5V board, ldo is not needed and neopixel should be connected to 5V. If you want a 3.3V board, I need to check how the 3.3v pin should be connected. But VCC should definitely be connected to 3.3V

    For ch552, 3.3V voltage limit code speed to 16M

  2. Finally get to access to internet and laptop.

    RESET can be repurposed as IO by setting the configuration bit. So the resistors and capacitors may not be needed, there is internal pull-down on reset anyway.

    It seems you do want the board to run on 3.3V, then you need to connect 3.3V to VCC. In this way there is no risk to break the external boards. However, I think it is also OK to keep the LDO for external 3.3V boards, and add pull-up resistors to 3.3V. Then the chip can work at 24M with 5V power, and the IO can be configured to open drain and work with 3.3V I2C.

Sorry, the comment form is closed at this time.