Greetings
Thanks Element14 for sponsoring my design challenge. My PSoC 6 BLE “hero” Pioneer kit arrived today and I am now thoroughly looking forward to the next 11 weeks or so as I take my idea and develop it into what I hope will be a winning prototype application.
Unlike most bars and restaurants, I got plenty of notification of my hero’s journey from Element14 HQ to my front door. It is this transparency that I am intending to replicate using Bluetooth Low Energy technology, because I am sure many of you have been in the situation before where you are in a bar or restaurant, and regardless of whether it’s busy or empty, you can never find a waiter or waitress when you want them. And, now that I think about it, there is more, as I’m sure you’ve seen this before too, where the kitchen chef, or barman, has cooked and plated your food, or served your drink, and it is just sitting there because there is no one around to collect.
I believe many an eatery has considered or has used this little device in an attempt to resolve this problem, with limited effect, so I believe we now have the right technology to introduce a more cost effective change, which will add value through better quality of service and operational efficiency.
Image Source: https://www.amazon.com/dp/B01N0AG1FM
Enter my BLE Unleashed Idea.
So, this is where I propose to unleash Bluetooth Low Energy to solve this conundrum by developing a simple low-cost system that will benefit both the bar or restaurant and the customer by making operations more transparent and hopefully more efficient.
The design concept hinges on the ability of Bluetooth Low Energy to handle multiple connections, with the possibility of mesh connectivity (for larger premises), and as such I needed a hero board that is at least Bluetooth 4.2 or Bluetooth 5.0 / 5.0 ready.
The other parts of my intended design are to have the following:
- Provide user information through low power displays that offer good readability, especially in daylight;
- Provide visual indications of any change of operational status etc. at a distance via the use of RGB LED’s;
- And provide reliable touch control as another human/machine interface (HMI).
This is why I chose the PSoC 6 BLE Pioneer board as my hero board.
Then, another intention of mine for my overall solution, was to try and exploit features that are found on existing development boards. So, as the solution also requires a notification and control device for the waiter I felt that the micro:bit would make a very good fit here for this purpose.
I’ve also thought that the BLE/USB dongle, which comes with the PSoC 6 BLE Pioneer kit, could even be used to provide a simple remote wireless configuration device for the central hub, as many restaurant/bar owners use a desktop PC to manage things. Desktop software would then be provided for this purpose – however, this probably outside the minimum scope of this project as I may not have time to develop.
First, let’s check to see that my hero board is all in order and ready for action.
Cool Success!!
For those who want to learn more about the PSoC 6 BLE Pioneer kit, please read through my recent road test report.
Now, thinking through the challenges ahead.
1. System Architecture
My assumed system architecture is made up as follows:
- The Kitchen. This acts as the central device which the table and the waiter connect to. A spare PSoC 6 Pioneer board (courtesy of my PSoC 6 roadtest) will be used to build the kitchen device so that it could display information on the eInk display and the buttons could be used to request a waiter and clear items off the list, for example. A key design challenge here is speed and minimising user action so as not to slow down the kitchen.
- The Table. This acts as a peripheral device (and may act as a mesh) which connects to the kitchen-based central device. Options will be left open as to whether it would be beneficial to allow for a customer’s phone to connect to this device as well. A key feature is to use the buttons to call a waiter. Then there’s a range of other options to consider here in terms of possible features, such as having the table device display information on the eInk display (e.g. status of the order and approximate time until delivery etc.) to incorporating addressable RGB LED’s, such Adafruit’s neopixels, or equivalent, to act as an informative “light beacon” for the waiter so that they know exactly where to go etc. Then there is the monitoring of the local table environment. Here I will use the built-in temperature sensor on the display shield to keep tabs on table temperature and potentially the microphone could be used to keep track of noise levels too. The proximity sensor theoretically could also be used to ascertain table or seat occupation etc.
- The Waiter. The micro:bit built waiter wearable device acts as a peripheral which connects to the kitchen. The waiter would be assigned a group of tables each with a table number. If the table requests a waiter this is sent to the kitchen device which relays the request onto the waiter and the table number is shown on the LED display. A small haptic vibration motor could also be used to make the waiter aware of the new request call. The buttons could be used to acknowledge which can then be sent back to the table. The micro:bit accelerometer sensor could also be used to monitor waiter movement/activity.
- The customer. The customer could use a Bluetooth enabled phone app to communicate with the table peripheral device to obtain table details. Options for app (which are outside the scope of this proposal) could include Menu details and allow for ordering of items and payments etc.
2. Hardware
Beside a customised enclosure for the table, the only new hardware that will be added to the design will be the use of multiple addressable RGB LED’s, such as Adafruit’s “neopixels” for visual display. What I like about these is that they are readily available, they have a small footprint and are low cost. However, from what I gather a key design challenge is to make sure the control signal has and can maintain the strict timing requirements. This is another reason why I felt that the PSoC 6 dual core would be ideal for this sort of hardware IO requirement.
I have found on the Element 14 community website some great examples using RGB LED’s / neopixels, especially the content provided in a previous design challenge (https://www.element14.com/community/community/design-challenges/get-closer) and I also see that Adafruit.com have a great reference too: https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels
As mentioned in the previous section, I was also planning to use the built-in sensors on PSoC 6 shield for ambient monitoring, but if time permits I may expand this and instead of relying on just the thermistor, for temperature measure, I may include a digital I2C temperature and humidity sensor.
3. Software
The success of the viability of this prototype project hinges on the software in creating the right business rules for a bar or restaurant. As such I foresee a number of steps, not necessarily in this order, will be required to develop the prototype solution, namely:
- Step 1, as I see it, will be to design a means for a straightforward connection method between the central hub and the peripheral devices.
- Step 2, will be to develop the logic flows between all devices, such as, for example, determining how information flows from a table peripheral device to a waiter’s peripheral device and vice versa.
- Step 3, will be to develop the logic for the LED’s and the visual displays.
- Step 4, will be to capture and monitor ambient sensors. Options could include alarm thresholds such that if a table area is seen to be too hot or too cold then the kitchen is made aware and action can be taken for example.
Finally, my Next Steps
I tend to take a more organic approach to rapid development, so if I find that I am stuck on one aspect of the project I quickly put it to one side on move onto something else. As such, the topic of each of my forthcoming blogs will be decided at the end of each week and the interim blogs will simply document what happened up to that point in time as I move from concept to working prototype.
If you have any questions about this design challenge development project please add a comment below.
Top Comments