owned this note
owned this note
Published
Linked with GitHub
# SR / SB Development: The next 6 months
Date: 29th April, 7pm
## Overview
Now that the Student Robotics competition is over, we have some time to look into future development of kit and competition software. This meeting is proposed to discuss and decide what we are going to do in the next six months.
## Deadlines
- August 2019: SourceBots / Smallpeice Summer School
- October / November 2019: SR 2019 Kickstart
## Goals for this meeting
- Work out a structure to ensure that Smallpeice 2019 / SR2019 is able to happen.
- Lots of things to do.
## Points of discussion
- SR Kit Team ideas
- Replacement of ODROIDs.
- It seems to be accepted by many within SR that the ODROID U3 currently used as the brain board needs replacing, mainly due to it no longer being manufactured.
- A replacement will need to be researched, and tested.
- Possible: Raspberry Pi 3. Used by SB and HR Robocon.
- Board Firmware Upgrades.
- There are a number of issues recognised with the current SR Board Firmwares.
- [Motor Board](https://github.com/j5api/sr-motor-v4-fw/issues)
- [Servo Board](https://github.com/j5api/sr-servo-v4-fw/issues)
- [Power Board](https://github.com/j5api/sr-power-v4-fw/issues)
- Upgrade to Python 3
- Python 2.7 is deprecated on [January 1st, 2020](https://pythonclock.org/).
- This was also widely requested in the kit interviews that Dan and Kier did at SR2019.
- Simply py2to3 existing SR API
- `robot-api` / `robotd` - ~Generally considered too buggy to deploy.~
- [j5](https://j5.readthedocs.io/en/master/)
- A library to build robot APIs, see [here](https://j5.readthedocs.io/en/master/usage/quickstart.html).
- Modular, supports multiple backends.
- Cross-platform (yes, it works on Windows.)
- In development since November 2018.
- An SRO Project, MIT licenced, welcomes contributions from all.
- Takes the best bits of SB, SR, and Robocon libraries.
- Supports Python 3.6+
- Fully type hinted, heavily unit tested (~98%), all code PEP8 compliant.
- Progress is good, motor and power board work. (Servo board finished, not yet merged.)
- OS
- Major issue with boot time raised in interviews.
- SB is currently Debian 9.
- Debian 10 due out soon.
- Open Embedded
- Non-standard, but much more control
- Previously used for v3 kit.
- [Alpine Linux](https://wiki.alpinelinux.org/wiki/Raspberry_Pi)
- Official Support for RasPi
- Official support for Read Only FS, in-RAM operation (Diskless mode).
- Fully atomic updates possible.
- Userspace not as familiar to students.
- IDE
- Interviews indicated that an online IDE is essential to SR.
- Possible Improvements:
- Wireless Upload (One team requested FTP)
- Performance
- Git Feature is not widely used.
- Robocon's is based off [VSCode](https://github.com/systemetric/shepherd)
- Hosted on the Robot
- Not great, limits development location.
- SRComp Screens
- Currently use a very old version of Polymer. Although very stable.
- Suggested: Elm? Vue?
- Integrate the Livestream Overlay.
- SRComp-http
- A couple minor bugs found this competition.
- mostly from Flask upgrades.
- Possibly integrate srcomp-stream, as it's now possible.
- Should we use Smallpeice as a testing ground for future developments of the SR kit?
- This year, SourceBots will be upgrading the hardware of their kit to have a SR servo board also.
- As this will replace the servo hat, the kit will be almost identical to the SR kit. (See point below about ODROID.)
## Beyond this year
- New vision library
- Some people are interested in developing this.
- Vision Board
- Prototype is currently being built.
- Improved FOV, better resolution
- Faster cameras than USB
- 6-axis IMU
- Multiple camera support
- Cheaper than high-spec webcams
- Rotary Encoder Hat