Having worked with the Sensors Mezzanine board (By itself, and in a kit) extensively over the last year I can say there are changes I would love to see. After speaking with others who have used the board, many agree changes should be made. The sensors board was developed by the Fellow who worked at Linaro, Grant Likely. He also developed the 96boards-uart board. There was an amazing amount of discussion between Grant and a lot of us about the sensors board, It went through several revisions, each time getting better for a purpose.

The more I think about it, the more a particular change comes to mind. I would like to fix the sensor board so the level shifting voltage is selectable on all grove connectors(3.3V or 5V), and dump the idea that some Grove connectors are 3.3V and others are 5V, it just does not work all that well. On top of that I’d dump all the Grove connectors for the “Arduino like” Atmel chip, the “Arduino like” headers are there. If you want to use Grove connectors with the Atmel chip, simply add an Arduino Grove connector shield it’s less than $9.00 USD and gives you a bunch of Grove connections. In the place of the Grove connectors you dump, I’d add back the C and D GPIO pins which were left off due to lack of space.

I really think the purpose of the sensors board was to allow people to easily experiment with 96Boards. While this is accomplished by the Sensor’s board, it’s not what I need or want for serious project development. What I really want is a new board. We will call it the “Community Mezzanine” and it will be very similar to the sensors board. The goal is to targets project development with the least amount of extra hardware as possible. Below you will find a list of what my colleagues, community and I have considered to be the good, the bad, and the things I want in the new “Community Mezzanine”.  I’m sure some of you will agree with me, and I’m equally sure more of you will disagree with my ideas.

Don’t hold back, jump in let’s all thrash this out. There is a chance someone might actually build the design, but first we need to get on the same page.

In my view:

The good:

  1. The Atmel ATMEGA328P chip which offers Arduino compatibility and optional shield connectors.
    1. There are some really good uses for a small bare metal hardware chip. Linux is a great OS, but unless you are running “Real Time Linux” it has a hard time dealing with some sensors, they require very predictable timing, and this is hard to come by with a full blown OS. Being able to mount Arduino shields is super handy. There are lots of shields which address sensors, motor drivers, and other cool things. We can use them for our own projects with little to no changes.
  2. The micro USB serial port. This could be improved by adding jumpers to select which serial port is coming out (like the original serial to usb tiny mezzanine board).
  3. Level shifting from 1.8V.  
    1. While the shifting is definitely necessary, I’d like to see the entire low speed connector I/O level shifted. First off the level shifting should be to 3.3V or 5V selectable by a jumper.  Everything shifts to one voltage or another. Drop the bit that some I/O is 3.3 and some is 5V, this is just confusing. I would like to make it selectable, everything goes to the selection.  
  4. The 12 x GPIO pins. They should be high current(in or out) and selectable by pin. Let’s avoid using the lower power bidirectional level shifters. Some might argue this point but I know what pins I’m going to use and in what direction. I need current handling more than auto direction. On the I2C and the SPI, we can use high quality bidirectional level shifters designed for I2C and SPI communications. I think TI has some which actually make sure the signal, as it passes through is sane.
    1. Both serial ports should be level shifted like the GPIO, 3.3V or 5V (in or out) as appropriate. This way you can use the UART at 3.3V or 5V directly. This can be very very handy.
  5. Power Reset buttons, handy and worth having if there is no space issue.

The Bad:

  1. The grove connectors, they are nice for an experimenting board but they take up too much space for a project board, drop all of them.
  2. The pass through 40 pin low speed connector.  It’s sort of nice to have but I don’t really care, if everything is brought out, then I don’t really need this, but I do need the space it takes up.

Things I want which are not there now:

  1. Bring out the high speed connector, all of it, and level shift it.
    1. Bring out the USB line to a standard USB A connector, there are too many times I could really use a 3rd USB connector.
    2. Bring out the camera connectors.
    3. Bring out the display connector.
  2. Add a more standard low speed header .1”/2.54 mm pitch 40 pin socket connector that is equivalent to the low speed connector that is totally level shifted.
  3. Add a second connector that is RPi compatible .1”/2.54 mm pitch 40 pin connector that you could plug in RPi shields into.  There are a lot of RPi compatible parts out there, would be handy if I could easily use them.  Make this a close to the real RPi header as possible, I have not explored this as far as I would like but I “think” it’s possible to accomplish.
  4. Pin headers for SPI, I2C, I2S and Clocks are a good idea if there is room for them.  You could just add another connector that had all of them on it.  I don’t really care how the SPI, I2C, I2S and the Clocks come off the board I just care that they are level shifted and available for me to use them easily.
  5. I’d love an Ethernet jack but you would just have to add the hardware on the board to go from the 3rd onboard USB to a USB Ethernet since most of the CE 96Boards don’t have onboard Ethernet Hardware.  Also I suspect this adds a really hard space issue, you’d have to use some kind of a cut away connecter that fit 3mm below the board and the rest above.  Seems hard to me for little return.
  6. 3.5mm Audio jack. For boards which support audio, this jack would not take up too much space on the mezzanine and offer users the ability to use headsets and possibly microphones.

Hand Drawn Sketch of my proposal

communityboard

The community board idea was discussed on last week’s episode of OpenHours! Please visit our YouTube channel for other 96Boards videos.

Don’t forget, if you get stuck, there are resources to help you through the installation. Feel free to check out the 96Boards forums, 96Boards wiki, or Freenode IRC channel #96Boards (there are many ways to access IRC, this website is one of them). Dig around the wiki, create a new forum thread, and/or post a question in the chat, myself or one of the 96Boards developers would love to help get your 96Boards up and running!

openhours-03

Don’t forget about the Open Hours every Thursday, where we will discuss this blog along with other pressing questions amongst a fun crowd of 96Boards users and developers over coffee. We hope to you see you there!

Other Blogs from David Mandala:

 

 

 

 

Showing 7 comments
  • Andy from Workshopshed

    I’m wondering if you are trying to do too much in one board? Perhaps different mezzanines with different features.
    I’m also wondering if the Pi compatible adapter would be a game changer as it would allow lots of different existing boards to work with the 96boards. For example there are great servo and audio boards already designed for that platform.
    As mentioned on this week’s call a breakout board would be great for prototyping. Perhaps including some level shifters.

    • David Mandala

      To me an improved sensor board (dropping all Grove connectors for the Atmel chip) and replacing them with Grove connectors with level shifters for the ARM would be a great breakout board for prototyping GPIO, I2C, SPI and I2S.

      I agree the proposed community board is dense, but I really hate losing the high speed connecter (as we do with the sensor board) with it’s camera input and display output. There are lots of projects where I’d like to have a display (not an HDMI monitor) and camera inputs that are not USB.

      I’m not sure if we can simulate the entire RPi connector but it would be worth see if we could pull that off, you are right it would open the world of boards designed for that connector.

  • jean-marc

    Hello David,
    looking at the board I would suggest a minimum redesign on this one and what we might just change is add some strength to the level-shifter in output by adding either a driver or a transistor or a FET (I already sent a modified schematic for one output to Akira some months ago with a transistor added). We just need it for a few GPIOs.
    For the others, SPI, Arduino and else it could be fine…
    In output the GPIO will drive enough current thru the transistor and in input we will need no changes.
    The result is: we will have 2 pins per GPIO, one in output (transistorised) and one in input (direct as it is now).
    We will need to clean up some connectors to make place for the added output drivers. Maybe an inline pin header 2.54 would be an idea rather all these grove connectors?
    What do you think?

  • barryb

    Hello David,

    the first point I would like to give feedback on is how expense all the add-on boards are go get delivered to the UK (and I’m sure other parts of the world). As a new board is considered, I would like it that some consideration is given to distribution. I’m not sure how easy that is to solve but it should be a consideration.

    On to the boards itself, I would agree with the previous comments that there is too much on this proposed board to be practical/cost effective.
    My suggestion would be to break this up to be a few boards focused on specific groups of interested parties. Some possible groups are:

    1) Breadboard friendly
    The first challenge when trying to use a 96boards with external components is the connection to a breadboard with jumper wires. Both the pitch of the LS connector and the voltages are difficult to work with. So a mezzanine with enough room for a mini-breadboard and a connector that is easy to take connections from would be valuable. That connector should have some 5v safe inputs and outputs capable of driving a few mA’s at 3.3v/5v. Maybe a simple motor driver would be useful for this general board.
    Having some simple buttons and LEDs so you can do something with the board without using external components would also add to the utility of such a board.

    2) IoT Board
    There seems to be interest from software people to experiment with IoT edge devices. To solve this requirement, having a board that has some inputs and outputs to experiment with without needing to learn about connecting up the electronics is the requirement for this board. A group of RGB LED’s, some buttons and sensors allows people to experiment with IoT without needing to wire up any electronics. A luxury would be a tiny TFT screen. This would be enough to write some interesting tutorials.

    3) Robotic Board
    People want to be build (autonomous) rovers and drones. A board that can drive 4 motors, handle a number of sensors (analog and digital) and a camera would be another category of board.

    4) All-in-one systems
    Support for touch screens, camera etc. Maybe some sensors like accelerometer and magnetometer plus support for audio in and out.

    Having a board that is an interface to either Arduino shields and/or Raspberry Pi HATs gets you access to their eco-system of add-on boards although maybe isn’t a good long term direction.

    • David Mandala

      I’m aware of the shipping costs, they seem to be high but it’s out of my hands, with the exception that I’d like to see a community board that has all of the design and layout open sourced so you can perhaps just have the board built locally cheaper then the shipping.

      The robotic board I “think” is met by the Gumstix Aerocore 2 for DragonBoard https://www.gumstix.com/blog/product-releases/aerocore-2-dragonboard/ It will drive a 4 motor drone and has a camera interface and a high speed GPS interface for flight too.

  • Tyeth

    Not sure if you’re still looking for 1.8V humidity sensors for your HVAC system.
    Stumbled upon 1.8V Digital Humidity Sensor SHTW2 (WLCSP) while looking at other environmental devices:

    https://www.sensirion.com/product-detail/digital-humidity-sensor-for-iot-applications/

    • David Mandala

      Thanks, yes still looking for 1.8V Digital Humidity Sensors and also looking for any other 1.8V sensors out there so we can create a list of sensors that would work directly with a CE 96Board. Easier then having to do level shifting if we can avoid that.

Leave a Comment