element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Bluetooth Unleashed Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Bluetooth Unleashed Design Challenge
  • More
  • Cancel
Bluetooth Unleashed Design Challenge
Blog Stirling Blue - micro:bit TXTR - Blog 3
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: dougw
  • Date Created: 14 May 2018 12:03 AM Date Created
  • Views 923 views
  • Likes 14 likes
  • Comments 4 comments
  • micro:bit
  • stirling blue
  • doug wong
  • bbc micro:bit
  • bbc microbit
  • qwerty keyboard
  • bluetooth unleashed
  • bluetooth unleashed design challenge
Related
Recommended

Stirling Blue - micro:bit TXTR - Blog 3

dougw
dougw
14 May 2018

The Stirling Blue project will be using 4 hero modules plus a couple of PSoC modules which total up to at least 8 ARM chips, and at least 3 different integrated development environments (IDEs) to handle all the software. It will also have 5 custom PCBs, which need to be designed early, to ensure delivery within the project schedule. This blog covers the PCBs that will be used with the BBC micro:bit. I want to use the micro:bit as a BLE display for Stirling engine data, but its LEDs are not really adequate to display the amount of data that will be generated, so I have to add an LCD to the micro:bit. The micro:bit doesn't have enough memory to store fonts, so the LCD interface card will also have a FRAM footprint to provide extra non-volatile memory

It seems very limiting to design a display without having a decent way to enter data, so I am also designing a QWERTY keyboard to work with micro:bits. This will turn the micro:bit into a full fledged BLE text messaging system. The idea is for micro:bits to be able to text each other via BLE. This aspect of the project is probably far more significant than the Stirling engine system since there are over a million micro:bits out there that could use this capability. Given the market audience, these peripherals need to be low-cost.

However the micro:bit barely has enough I/O pins to connect an SPI LCD, so the keyboard needs to have its own encoder with a slave SPI interface.

To handle the 60 button keyboard, I chose a low-cost PSoC4, which uses the same IDE as the PSoC6 hero module I am using. The PSoC4 is fully capable of running the keyboard and a couple of LCDs, so I designed it to have 3 different end use applications:

  • an SPI slave QWERTY keyboard for a BBC micro:bit
  • a serial (UART) and/or Bluetooth terminal with keyboard and display
  • a programmer that allows the BBC micro:bit expansion FRAM to be loaded with data

The PSoC4 is a capable platform in its own right and has enough pins but not quite enough internal resources to perform all these functions simultaneously. However the beauty of the PSoC paradigm is that it can easily be reprogrammed to implement a different feature set and they aren't all needed at the same time.

Designing all this flexibility into the custom cards took a lot of careful planning  and detailed design work, but both PCBs are now designed. One of my design constrains was that the PCB had to be less than 10 cm x 10 cm because of a price break at the PCB shop. That dictated how big the buttons on the keyboard could be.

The button matrix was set up to be a straight 6 row x 10 columns arrangement so I could get QWERTYUIOP on one row. The 60 keys were selected for communications speed rather than word processing flexibility.

I will publish schematics and layouts after the cards have been proven to work, but for now here is what the micro:bit TXTR will look like:

I added some translucency to the cover so you can see some of the circuitry underneath.

image

The button with the sun on it is for the LCD backlight.

The buttons for the tactile switches will be 3D printed in two-tone.

There are slide switches on the side for power.

I have compiled the PSoC4 hardware in all of its variants to ensure the pinouts will work, but no real software has been started.

 

Upcoming blogs:

Blog 4 will be on the sensor PCB

Blog 5 will be about how Stirling engines work

 

Related Links:

Bluetooth Unleashed Design Challenge

Bluetooth Unleashed Design Challenge: The Challengers

Bluetooth Unleashed Design Challenge: About This Challenge

 

Links to other blogs for this project:

Stirling Blue - Project Description - Blog 1

Stirling Blue - Unboxing Hero - Blog 2

StirlingBlue1

  • Sign in to reply

Top Comments

  • aspork42
    aspork42 over 7 years ago +4
    Doug - I used JLC PCB for my boards. They delivered 10 finished boards all the way from China 6 days after I uploaded files; and it was only $2 + ~$18 in shipping. Just an option but you may already have…
  • genebren
    genebren over 7 years ago +3
    Doug, Great update on your project. You are assembling a lot of processing power for your project, which does mean a rather large complexity (compounded by the multiple IDEs). Good luck bring all of this…
  • aspork42
    aspork42 over 7 years ago +2
    Wow! Great progress! I really look forward to seeing this finished!
  • dougw
    dougw over 7 years ago in reply to aspork42

    Thanks for the tip.

    I have received boards in 6 days sometimes, but sometimes it takes 6 weeks.

    I don't think it is the PCB shop that is the variable - they get the boards out with a tracking number in a week or less.

    The tracking number indicates when they leave for Canada, but Canada Post has stopped honoring the tracking numbers (sometime in the last year) and there is no further info until they arrive. It could be days or weeks. Sometimes I spring for a courier, but I've had them circle the globe a few times before finding me, (the tracking info is hilarious) so the courier is usually a couple of days, but sometimes it is a complete waste of money.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • aspork42
    aspork42 over 7 years ago

    Doug - I used JLC PCB for my boards. They delivered 10 finished boards all the way from China 6 days after I uploaded files; and it was only $2 + ~$18 in shipping. Just an option but you may already have a hookup for boards.

    • Cancel
    • Vote Up +4 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • genebren
    genebren over 7 years ago

    Doug,

     

    Great update on your project.  You are assembling a lot of processing power for your project, which does mean a rather large complexity (compounded by the multiple IDEs).  Good luck bring all of this together.

    Gene

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • aspork42
    aspork42 over 7 years ago

    Wow! Great progress! I really look forward to seeing this finished!

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube