Hello to everyone, this is an optional (but it will obiouvsly make a good impression) task assigned to every candidate for a position in the software department here at RaceUP-e. You are asked to write an Arduino sketch for the Arduino Uno that reads time data from an RTC device (DS1307 based datasheet) communicating via i2c. This data then needs to be displayed on an LCD display (HD44780 based wiki) that gets updated each second to show current date and time in the format dd/mm/yy hh:mm:ss. To let everyone develop and test the code, the assignment is based on the Wokwi simulator that can emulate real hardware on the browser (docs), or inside VS Code.
- Code ONLY on the .ino file don't use any other file
- Use the provided
diagram.json, otherwise when we test your code it might not work because you used a different pin setup - Comments that explain what you are doing and your way of thinking are very welcomed
- The only allowed library is
Wire.hfor i2c, NO OTHER INCLUDES ALLOWED
- Create a new empty Arduino Uno example
- Copy the content of this repository
diagram.jsoninto the one in the browser - Code on the provided .ino file
- Clone the repository
git clone https://github.com/raceup-electric/assignment - Install the Arduino extension from the VS Code marketplace
- Install the Wokwi extension (you are asked to login do it, don't worry it is free)
- Check the box for
Arduino: Use Arduino CLIin VS Code settings - Reload the editor
- Open the command palette (
Ctrl/Cmd+Shift+P) and selectArduino: Initialize - Open the command palette (
Ctrl/Cmd+Shift+P) and selectArduino: Board Managerthen install Arduino AVR Boards - Select Arduino Uno on the bottom bar
- Everything is already set up you just need to edit the assignment.ino file
- To compile the sketch open the command palette (
Ctrl/Cmd+Shift+P) and selectArduino: Verify - To run the sketch open the command palette (
Ctrl/Cmd+Shift+P) and selectWokwi: Start Simulator
If you can't make it work on VS Code use Wokwi.
When you have finished upload your .ino file on this Drive folder (link), naming the file as following: Name_Surname.ino.
Don't worry if it is not working completely or at all, just comment the code and hand in your code anyway: we are interested in your approach to problem solving and your line of reasoning.
Good work to everyone, see you at the interwiew!