Commit Graph

49 Commits

Author SHA1 Message Date
Hugo Saint-Vignes
688394abce [ion] Set stack pointer when testing as well
Change-Id: Ibeae7961535208c224f9ac51f4cf33e3978665b3
2020-11-04 15:32:58 +01:00
Hugo Saint-Vignes
70a628f2c8 [apps] Fix Python assert crash on malloc free
Change-Id: I48f86422f7d6af5227e2556e6ef531dfad696da4
2020-11-04 15:30:53 +01:00
Émilie Feral
3f6647f3ae [ion][python] Implement an architecture-dependant collect_registers.
setjmp is not guaranteed to collect all registers without modification
on all platforms.

This fixes the following bug: when the pointer of a newly allocated
object on the Python heap is stored in rpb registers on x86_64 arch, it
was not collected by the garbarge collector.
2020-05-18 14:39:46 +02:00
Léa Saviot
d70c4c7205 [ion] Typo 2020-02-12 15:13:22 +01:00
Léa Saviot
ebc5843795 [apps/ion/exam_mode] Store the exam mode activation in the flash
This way, it is not cleared by a reset
2019-12-11 13:51:38 +01:00
Romain Goyet
758c217120 [ion] ion_main takes const arguments 2019-10-16 10:01:00 +02:00
Léa Saviot
6e27c7aec7 [ion/crc] Fix crc: n0100 does not have 8-bits hardware implementation 2019-06-06 14:34:09 +02:00
Léa Saviot
380ac52cd8 [ion/crc32] crc32Byte and crc32Word 2019-04-25 17:11:06 +02:00
Léa Saviot
784381bd33 [unicode] Use unicode when dealing with chars - Part 1 2019-04-12 15:16:51 +02:00
Léa Saviot
63d7155376 Remove Ion::Charset 2019-04-12 15:16:50 +02:00
Léa Saviot
1fe6881171 [ion] Fix coputation of Record name crc32 2018-11-23 12:03:59 +01:00
Damien Nicolet
f93bf97182 [ion] Sharing millis & micros for blackbox and simulator 2018-11-09 01:30:22 +01:00
Damien Nicolet
c0c0905b84 [ion] millis() and micros() returns uint32_t and are defined in their own header 2018-11-09 01:30:22 +01:00
Damien Nicolet
940270e78a [ion] add millis() and micros() using systick on device 2018-11-09 01:30:22 +01:00
Romain Goyet
f1198d3c76 [ion] Add Ion::stackSafe
This allows asserting the stack is within bounds
2018-10-12 09:36:44 +02:00
Romain Goyet
f4f567814e [escher] Compress images 2018-10-12 09:36:44 +02:00
Romain Goyet
a29c775663 [ion] Encode the serial number in Base64
Also, expose serialNumber() in Ion and keep "copySerialNumber" in
Ion::Device. This allows the DFU bootloader to remain .bss-free.
2018-05-04 17:31:41 +02:00
Léa Saviot
55d56b3927 [usb] Send real serial number in the device descriptor.
Change-Id: Ie64f2a0fb03913600c96986dab8171afaa6bf05b
2018-04-06 14:31:49 +02:00
Léa Saviot
d753e6e781 [ion] Move Ion::reset to Ion::Device::core/jumpReset
Change-Id: I3032c3e1b9a8f944cd321670c7be6586ba6d973b
2018-04-06 14:31:48 +02:00
Romain Goyet
5c86a07481 [ion] Add the ability to perform a jump-reset 2018-04-04 10:38:52 +02:00
Émilie Feral
b0ede47d55 [ion] Change Storage design (former kallax) 2018-03-22 14:01:38 +01:00
Émilie Feral
aa984bca74 [escher][ion] Move Record and Kallax in Ion/ 2018-03-22 14:01:38 +01:00
Émilie Feral
37ff8dc0a3 [ion] Give the options to ion_app that becomes ion_main 2018-03-22 11:58:56 +01:00
Émilie Feral
6a888136c3 [apps/settings] Add FCC ID in about menu
Change-Id: Iafe06e56591399a1442b8de64257990ffa23ddac
2017-06-02 14:16:55 +02:00
Émilie Feral
3261701d2d [ion] Add a method to know if the USB is plugged
Change-Id: I040ce7996bbec121c71d57a5092ffae4f5f76025
2017-04-07 14:40:34 +02:00
Émilie Feral
7091b2ea35 [ion] Add software version, patch level and serial number
Change-Id: I011eeb2d8596f63e0c2fdedf353d544dc8a8a202
2017-04-04 14:18:11 +02:00
Romain Goyet
bfab275a88 [ion] Get rid of log
Change-Id: Icf37d4cedb1cc3ffbc9e020cdb7b4a89d543aa23
2017-03-17 16:00:47 +01:00
Romain Goyet
7b575a204b Merge changes I4d59900f,Ifd3d4c6b,I485bd67f,Ib2dd1d91,I29085da3, ...
* changes:
  [ion/device] Fix building console.o
  [apps/hwtest] Add CHARGE and KEYBOARD commands to lowlevel test
  [apps/hwtest] Proper MCU_SERIAL command
  [ion] Add a Ion::serialNumber function
  [apps/hwtest] Add ADC and BACKLIGHT commands to the lowlevel test
  [ion/device] Use the proper ADC channel
  [ion] Add a console facility
  [apps/hwtest] Blink the LED from the lowlevel test
  [apps/hwtest] The lowlevel test uses the UART
  [ion/device] Add USART register
  [apps] Add a lowlevel test app
  [ion/device] Add SPI registers
2017-03-07 10:15:55 +01:00
Romain Goyet
eaeed82eea [ion] Add a Ion::serialNumber function
Change-Id: Ib2dd1d9187936f5c044bbcbc21dc7164fe6e9822
2017-02-28 18:56:04 +01:00
Romain Goyet
bca8a6fd86 [ion] Add a console facility
Change-Id: I34b406ae8589fdd2a5d6b826b34ac411359b58dc
2017-02-27 14:13:19 +01:00
Romain Goyet
809fd8a17a [ion] Ion::random()
Change-Id: Ib85055ab3b4bf3dfce991f9990659c744be20f39
2017-02-20 16:14:48 +01:00
Romain Goyet
59e998ddab [ion] Add a Ion::Log::print method
Change-Id: Iba069b97c07b9ef6c1f21dd33b83a445c0e3dbda
2017-02-14 10:08:53 +01:00
Émilie Feral
e6d5a8dfd1 [ion] Add a charset to associate char code to special symbols
Change-Id: I7533318185a7a66080ac68ced9b051d5e22b156d
2017-01-27 11:52:39 +01:00
Romain Goyet
025405d01d [ion] Add Ion::crc32
Takes only 32bit values. Uses non-reversed data/input

Change-Id: I8a776064af69047f7a8fa1399cf8a484f42b9b18
2017-01-06 17:22:29 +01:00
Romain Goyet
c1db79b5f9 [ion] Add a backlight namespace
Change-Id: I0b9ec9a1b342d4b949776f0303eca69a28d1de91
2017-01-05 16:00:10 +01:00
Romain Goyet
9b2fecfb12 [ion] Add Ion::usleep
Change-Id: Ife70133410e55c3f0af9a838543042a3da618119
2017-01-05 16:00:01 +01:00
Romain Goyet
99a4e3de91 [ion] Enable suspend/resume
Change-Id: I1fe580de7f98b95c768416ca889a7d74dad851ca
2016-08-31 17:07:41 +02:00
Romain Goyet
831c42796b [ion] Add battery-related functions
Change-Id: Ib63b48140a8347d0d07902d956a3685fb040c481
2016-08-29 13:25:14 +02:00
Romain Goyet
457b7215fd [Ion] Enable setting the LED's color
Change-Id: Ib3e25be8d180f9d19ad3a0d0861b210d8a702194
2016-08-23 17:29:07 +02:00
Romain Goyet
753a4a7cb5 [Ion] Move to C++
Change-Id: Id75fca5e92a3fdf18258015bcda7cd70297b0fdb
2016-08-23 16:30:15 +02:00
Romain Goyet
2eeec9e929 [ion] Clean ion_sleep
Change-Id: Ib71e7e535ecd2ee572d09f2e64f2cba9368c614f
2016-08-18 16:45:36 +02:00
Romain Goyet
ac4660bf3b ION: SCREEN_WIDTH becomes ION_SCREEN_WIDTH
Change-Id: Ifc7d06b773f8660cff30e727f510eea448b23852
2016-06-10 17:32:31 +02:00
Felix Raimundo
fd95a7e558 Adds a text_input function to get text.
Also removes ion_getchar in favor of ion_get_event.

Change-Id: Id95ea509315185da24fd2a3fe90969da0bd19cfc
2016-03-23 17:31:59 +01:00
Romain Goyet
8869986a76 [ion] Proper CM4 registers 2015-09-30 14:46:29 +02:00
Romain Goyet
08441e6ec5 [ion] big cleanup 2015-09-19 13:09:41 +02:00
Romain Goyet
e11f6efa94 [ION] Separate header for keyboard 2015-09-01 22:48:17 +02:00
Romain Goyet
cd3046b3ef Ion simulator support 2015-09-01 11:39:02 +02:00
Romain Goyet
b32b47300a ION re-structuring 2015-08-05 15:52:44 +02:00
Romain Goyet
067c53d705 Multiple platform support 2015-08-03 21:04:13 +02:00