-
Testing opportunity with UCPLA
08/30/2020 at 17:48 • 0 commentsI am sending a hand shake kit to Aragna Ker at UCPLA for trial. This is a great opportunity to get some real-world feedback.
This gave me the kick to test out a couple of off-the-shelf wrist holder solutions for the microbit. Much as I like my own home-made holder, using a read-made sport armband for an iPod means that the microbit and battery holder will have a plastic cover, which makes the kit easy to clean, which is important in today's Covid-19 world.
Thanks to Hackaday for making this possible. -
Functional block diagram
08/22/2020 at 16:09 • 0 commentsA block diagram of the system setup is shown below. The base.exe program runs on the communication device and monitors the USB port that the receiver microbit is connected to. When a trigger is received from the receiver microbit, a software keystroke is broadcast. This software keystroke is intended to control communication software or any other target software running. The default keystroke is F1, but this can be changed at run time.
The receiver microbit can remotely change the threshold of shake detection on the transmitter microbit using the two buttons on the receiver microbit. The transmitter microbit is worn by the end user. The threshold of shake detection can also be adjusted on the transmitter microbit using the two buttons on this microbit. When a shake is detected by the transmitter microbit, a signal is sent by radio to the receiver microbit.
-
Benchmark
08/13/2020 at 09:55 • 0 commentsThis log answers the Benchmark requirement for the Hackaday 2020 prize entry rules:
Benchmark-How well is the project impact and viability demonstrated? Are estimated costs realistic? How well does the project improve upon other currently available solutions?
Benchmark
Preliminary testing can be seen with the target user group on a short video at:
The testing indicates the impact and viability of the project.
The estimated costs are realistic as the components are repurposed off the shelf components.
This project fills a gap in what is available as assistive technology. This gap was identified by the Technologists who work at Beaumont College with the target user group.
-
Production
08/13/2020 at 09:51 • 0 commentsThis log answers the Production requirement for the Hackaday 2020 prize entry rules:
Production-Is the project realistically reproducible (taking into consideration necessarymaterials, skills, and production processes)? Are the manufacturing processes detailed? Are those processes realistic for scalability?
Production
The design comprises of two microbits and one wrist holder plus associated code. There are over 1.5 million microbits already produced. Microbits cost around $15 each. So obtaining these does not require any production.
There are wrist holders commercially available, though I prefer my home made one. It would be straight forwards to ask a fabric shop to do a production run of wrist holders based on my home made one. Otherwise commercially available wrist holders can be used.
The code is on my GitHub site, so can easily be replicated.
-
Design
08/13/2020 at 09:46 • 0 commentsThis log answers the Design requirement for the Hackaday 2020 prize entry rules:
Design-Is there a depth of design detail available (like a system design, CAD models, project test methods, etc.)? Is there base-level planning for the functionality (e.g.,functional block diagram, list of specifications and descriptions of how they will be met, etc.)? How user-friendly is the design?
Design
Each block of the design is explained in the set up instructions on my website at:
https://www.seismicmatt.com/handshake-set-up-instructions/
The design is extremely user friendly as it repurposes off the shelf technology. The only construction necessary is to make a wrist holder for the microbit. How to do this is explained on my website at:
https://www.seismicmatt.com/introduction/bbc-microbit-wrist-holder/
Wrist holders are commercially available, but I found my home made one to be more secure and comfortable.
-
Concept
08/13/2020 at 09:41 • 0 commentsThis log answers the Concept requirement for the Hackaday 2020 prize entry rules:
Concept-Is the project creative, original, functional, and pushing boundaries? Does the project effectively address the selected challenge?
Creative
This project is creative in that I created a solution to a recognised problem. Initially I created custom made hardware, which I realised would be difficult for others to replicate. There is also the safety issue associated using 'home-made' hardware with a vulnerable user group. I managed to re-purpose an off the shelf microcontroller board, which is aimed at high school education. This simplicity is the creativity.
Original
The need for this project was identified by the Lead Technologist at Beaumont College, Lancaster. This is a specialist educational centre for students, many of whom have cerebral palsy. The professional at Beaumont were unable to find off the shelf technology that fills the gap that this project intends to.
Functional
Preliminary testing was done with the target user group, both with my home made prototypes and later with the microbits. The technology works.
Pushing boundaries
This project pushes the boundaries of the technology that can be used to enable some people who currently cannot communicate to access communication technology.
Enabling somebody who cannot communicate to communicate will empower that individual to push his or her boundaries.
Does the project effectively address the selected challenge?
This project is a solution for some people for the selected challenge. It is effective in that it works and is easy and safe to replicate.
-
Running in Administrator mode
08/04/2020 at 16:16 • 0 commentsSensory Software's Grid 3 is a popular communication software package, running in Windows. Naturally, I would like handShake to be able to operate this software through the software keystrokes that handShake generates. To get Grid 3 to respond to a software keystroke, I have to 'elevate' handShake to run as an Administrator. I do have a second solution. I can use a Freetronics Leostick USB dongle as a pretend keyboard and have this generate keystrokes that appear as coming from a physical keyboard. I did this for a while, but this adds a layer of complexity and expense to the project. The simplest solution is to run handShake as an Administrator when using Grid 3, or other software that requires software keystrokes to come from an elevated source.
I tested out adding the functionality for handShake to detect when Grid3 was running, then automatically try to elevate to run in Administrator mode. I got this running. Then removed the functionality. Why? Security. Software running as Administrator can damage your system if incorrectly or maliciously written.
Now handShake detects if Grid 3 is running and advises that this requires the software to be restarted as an Administrator, but does not automatically restart in Administrator mode.
Running handShake as Administrator is a choice that the user makes and implements if he or she deems necessary. As all of the code is on the project GitHub site, the code can be reviewed by the user or whoever administers the communication device that handShake runs on. The code can be reviewed to check that it is safe to run as an Administrator.
One of the advantages of open source projects is that they are open to scrutiny to find security flaws.
-
Testing
07/01/2020 at 17:07 • 0 commentsI spent a short time working in mechanical engineering, for a company that makes quick release anchors for oil rigs. Every part was tested, as you can imagine. But not only the finished assembly. Even fragments of the castings used to construct the main component were taken for destructive testing to prove that the metal had the correct characteristics.
Why should it be any different in software engineering? Software testing is an established part of producing reliable code. I have been slack at implementing this. So I took an online course through Pluralsight, kindly made available for free during the recent lockdown, on writing tests for software. The course is aimed at Python, which I use for scripting the software implemented on the PC.So I am slowly getting to grips with writing tests. I find writing stand alone doctests a useful tool. I test the code from the command line, then copy and paste the tests into a separate file. It is not quite as simple as this, but you get the idea. I am slowly getting to grips with mocks and pytest. Using the doctests is fast and easier, so I am more likely to actually write some tests.
-
What do I want out of posting this project
06/30/2020 at 15:18 • 0 commentsThere are so many excellent projects submitted to the Hackaday competitions, showing a level of skill that I don't have - why would I enter this? I hope that somebody who can use the project shown here, or who knows somebody that could potentially benefit from the project, reads this site and tries to implement hand shake. Please get in touch if there is anything that I did not explain well.
If you do try this out, please let me know. I keep an unpaid position at my local university for when I am not working at sea. This gives me the resources and support to do this work. Any feedback helps me write publications, which I need to keep the position. The data will be anonymised.