OneROM

EPROM EEPROM SRAM NVRAM Flash chips, reading/writing hardware and software
jxx
Posts: 222
Joined: Tue Oct 25, 2011 9:47 am
cars: To many
Location: Vic

Re: OneROM

Post by jxx »

The external is just the flash, RP2350 requires external spi flash and RP2354 has the 2MB internal, they both operate exactly the same.
The memory issue isn''t that with them, it's the RAM and the way the onerom is built and coded it only has 2KB set aside for the system plugin, that's the limit.
Now i could probably change the base code and expand that but then I don't know exactly where all Piers code sits and uses things, it could get messy real fast.

In theory can install external RAM to increase the 520KB, but that's heading down the path of fabricating a completely custom board with a new firmware, quite doable but there'd have to be a bit more interest in it to embark on that journey.
themr.m
Posts: 18
Joined: Sun Jul 05, 2026 6:42 am
cars: EK3

Re: OneROM

Post by themr.m »

jxx wrote: Thu Jul 16, 2026 2:13 am The external is just the flash, RP2350 requires external spi flash and RP2354 has the 2MB internal, they both operate exactly the same.
The memory issue isn''t that with them, it's the RAM and the way the onerom is built and coded it only has 2KB set aside for the system plugin, that's the limit.
Now i could probably change the base code and expand that but then I don't know exactly where all Piers code sits and uses things, it could get messy real fast.

In theory can install external RAM to increase the 520KB, but that's heading down the path of fabricating a completely custom board with a new firmware, quite doable but there'd have to be a bit more interest in it to embark on that journey.

I email piers asking about these RAM limitation, and here his answer:
You are right, there is only a very small amount of _static_ RAM available for the plugins, as One ROM can _potentially_ use up to 512KB to serve the ROM image. It uses 512KB for some 32 and 40 pin ROM images, and the plugins can be used with any size ROM. So the code firmware doesn't know at compile time if there's any more spare SRAM than the latest 8KB.

However, the firmware has the concept of RAM slots - chunks of spare SRAM (that isn't used by the ROM image) that can be used by plugins. The host-control plugin uses this - see plugins/user/host-control/src/host_control_main.c - which uses a RAM slot as a scratch are to copy a function into so it can run from RAM:

```
uint32_t slot_base, slot_size;
if (s_get_ram_slot_info(slot, &slot_base, &slot_size, NULL) != ORA_RESULT_OK) { ... }

// Copy NV flash contents into staging (linear SRAM write, no mangling)
volatile uint8_t *staging = (volatile uint8_t *)slot_base;
for (uint32_t i = 0u; i < NV_STORAGE_SIZE; i++) {
staging = __nv_storage_start;
}

// Copy erase function binary immediately after staging data.
volatile uint8_t *erase_dest = staging + NV_STORAGE_SIZE;
```

You can do something similar, and use the RAM for whatever you want.
themr.m
Posts: 18
Joined: Sun Jul 05, 2026 6:42 am
cars: EK3

Re: OneROM

Post by themr.m »

And here is ostrich 2.0 serial data capture, maybe help anyone woking on DATA Trace in tunerpro RT.

#Update with Address Hit Tracking serial data capture
https://www.mediafire.com/file/98j4gth8 ... e.pdf/file

Code: Select all

Ostrich 2.0 - v20.9 usb hardware id
FTDIBUS\VID_0403+PID_6001+A506XGLFA\0000
FTDIBUS\COMPORT&VID_0403&PID_6001

Code: Select all

When Run DOReset.exe
Serial data capture:
Ostrich
VV..OHR...¢P..U...ºBEEÌ.BRRæ.NS¡.ÿÿÿÿÿÿÿÿ™BESÚ.NS¡.ÿÿÿÿÿÿÿÿ™
OneROM
VV..OHR...¢........BEEÌBRRæ.NS¡.. . . . BESÚ.NS¡.. . . . 
Ostrich
[17/07/2026 22:59:17] Written data (COM43)
56 56 VV
[17/07/2026 22:59:17] Read data (COM43)
14 09 4f ..O
[17/07/2026 22:59:17] Written data (COM43)
48 52 07 00 01 a2 HR...¢
[17/07/2026 22:59:17] Read data (COM43)
50 02 00 55 02 01 10 ba P..U...º
[17/07/2026 22:59:17] Written data (COM43)
42 45 45 cc BEEÌ
[17/07/2026 22:59:17] Read data (COM43)
9b ›
[17/07/2026 22:59:17] Written data (COM43)
42 52 52 e6 BRRæ
[17/07/2026 22:59:17] Read data (COM43)
00 .
[17/07/2026 22:59:17] Written data (COM43)
4e 53 a1 NS¡
[17/07/2026 22:59:17] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[17/07/2026 22:59:17] Written data (COM43)
42 45 53 da BESÚ
[17/07/2026 22:59:17] Read data (COM43)
00 .
[17/07/2026 22:59:17] Written data (COM43)
4e 53 a1 NS¡
[17/07/2026 22:59:17] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™

Code: Select all

Reset Vendor ID From Nep,Crome,Tunerprort to
Nep,Crome,Tunerprort
Serial data capture:
Ostrich
NS¡.ÿÿÿÿÿÿÿÿ™BR.”OBS.•OVV..OHR...¢P..U...ºBEEÌ.BRRæ.NS¡.ÿÿÿÿÿÿÿÿ™BESÚ.
NS¡.ÿÿÿÿÿÿÿÿ™
OneROM
NS¡.. . . . BR.”OBS.•OVV..OHR...¢........BEEÌBRRæ.NS¡.. . . .
BESÚ.NS¡.. . . . 
Ostrich
[18/07/2026 01:25:20] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:25:20] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[18/07/2026 01:25:20] Written data (COM43)
42 52 00 94 BR.”
[18/07/2026 01:25:20] Read data (COM43)
4f O
[18/07/2026 01:25:20] Written data (COM43)
42 53 00 95 BS.•
[18/07/2026 01:25:20] Read data (COM43)
4f O
[18/07/2026 01:25:20] Written data (COM43)
56 56 VV
[18/07/2026 01:25:20] Read data (COM43)
14 09 4f ..O
[18/07/2026 01:25:20] Written data (COM43)
48 52 07 00 01 a2 HR...¢
[18/07/2026 01:25:20] Read data (COM43)
50 02 00 55 02 01 10 ba P..U...º
[18/07/2026 01:25:20] Written data (COM43)
42 45 45 cc BEEÌ
[18/07/2026 01:25:20] Read data (COM43)
00 .
[18/07/2026 01:25:20] Written data (COM43)
42 52 52 e6 BRRæ
[18/07/2026 01:25:20] Read data (COM43)
00 .
[18/07/2026 01:25:20] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:25:20] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[18/07/2026 01:25:20] Written data (COM43)
42 45 53 da BESÚ
[18/07/2026 01:25:20] Read data (COM43)
00 .
[18/07/2026 01:25:20] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:25:20] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™

Code: Select all

Reset Vendor ID From nep,crome,tunerprort to ectune
Serial data capture:
Ostrich
NS¡.ÿÿÿÿÿÿÿÿ™N.ÿÿÿÿÿÿÿÿGOBR.”OBS.•OVV..OHR...¢P..U...ºBEEÌ.BRRæ.NS¡.ÿ
ÿÿÿÿÿÿÿšBESÚ.NS¡.ÿÿÿÿÿÿÿÿš
OneROM (FAIL)
NS¡.. . . . N.. . . . ß
OneROM (RESET BACK TO VENDOR ID 0x00)
VV..OHR...¢........BEEÌBRRæ.NS¡.. . . . BESÚ.NS¡.. . . . 
Ostrich
[18/07/2026 01:27:56] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:27:56] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[18/07/2026 01:27:56] Written data (COM43)
4e 01 ff ff ff ff ff ff ff ff 47 N.ÿÿÿÿÿÿÿÿG
[18/07/2026 01:27:58] Read data (COM43)
4f O
[18/07/2026 01:27:59] Written data (COM43)
42 52 00 94 BR.”
[18/07/2026 01:27:59] Read data (COM43)
4f O
[18/07/2026 01:27:59] Written data (COM43)
42 53 00 95 BS.•
[18/07/2026 01:27:59] Read data (COM43)
4f O
[18/07/2026 01:27:59] Written data (COM43)
56 56 VV
[18/07/2026 01:27:59] Read data (COM43)
14 09 4f ..O
[18/07/2026 01:27:59] Written data (COM43)
48 52 07 00 01 a2 HR...¢
[18/07/2026 01:27:59] Read data (COM43)
50 02 00 55 02 01 10 ba P..U...º
[18/07/2026 01:27:59] Written data (COM43)
42 45 45 cc BEEÌ
[18/07/2026 01:27:59] Read data (COM43)
00 .
[18/07/2026 01:27:59] Written data (COM43)
42 52 52 e6 BRRæ
[18/07/2026 01:27:59] Read data (COM43)
00 .
[18/07/2026 01:27:59] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:27:59] Read data (COM43)
01 ff ff ff ff ff ff ff ff 9a .ÿÿÿÿÿÿÿÿš
[18/07/2026 01:27:59] Written data (COM43)
42 45 53 da BESÚ
[18/07/2026 01:27:59] Read data (COM43)
00 .
[18/07/2026 01:27:59] Written data (COM43)
4e 53 a1 NS¡
[18/07/2026 01:27:59] Read data (COM43)
01 ff ff ff ff ff ff ff ff 9a .ÿÿÿÿÿÿÿÿš

Code: Select all

Opening TunerPro RT
Serial data capture:
Ostrich
VV..OE..........MP..U...ºHR...¢P..U...ºBEEÌ.BRRæ.NS¡.ÿÿÿÿÿÿÿÿ™S.SOBES
Ú.BRRæ.NS¡.ÿÿÿÿÿÿÿÿ™BESÚ.
OneROM
VV..OE..........MHR...¢........BEEÌBESÚ.BRRæ.BESÚ.
Ostrich
[17/07/2026 23:12:37] Written data (COM43)
56 56 VV
[17/07/2026 23:12:37] Read data (COM43)
14 09 4f ..O
[17/07/2026 23:12:37] Written data (COM43)
45 07 00 01 00 00 00 00 00 00 00 4d E..........M
45 07 00 01 00 00 00 00 00 00 00 4d
[17/07/2026 23:12:37] Read data (COM43)
50 02 00 55 02 01 10 ba P..U...º
[17/07/2026 23:12:37] Written data (COM43)
48 52 07 00 01 a2 HR...¢
48 52 07 00 01 a2
[17/07/2026 23:12:37] Read data (COM43)
50 02 00 55 02 01 10 ba P..U...º
[17/07/2026 23:12:37] Written data (COM43)
42 45 45 cc BEEÌ
[17/07/2026 23:12:37] Read data (COM43)
00 .
[17/07/2026 23:12:37] Written data (COM43)
42 52 52 e6 BRRæ
[17/07/2026 23:12:37] Read data (COM43)
00 .
[17/07/2026 23:12:37] Written data (COM43)
4e 53 a1 NS¡
[17/07/2026 23:12:37] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[17/07/2026 23:12:37] Written data (COM43)
53 00 53 S.S
[17/07/2026 23:12:37] Read data (COM43)
4f O
[17/07/2026 23:12:37] Written data (COM43)
42 45 53 da BESÚ
[17/07/2026 23:12:37] Read data (COM43)
00 .
[17/07/2026 23:12:37] Written data (COM43)
42 52 52 e6 BRRæ
[17/07/2026 23:12:37] Read data (COM43)
00 .
[17/07/2026 23:12:37] Written data (COM43)
4e 53 a1 NS¡
[17/07/2026 23:12:37] Read data (COM43)
00 ff ff ff ff ff ff ff ff 99 .ÿÿÿÿÿÿÿÿ™
[17/07/2026 23:12:38] Written data (COM43)
42 45 53 da BESÚ
[17/07/2026 23:12:38] Read data (COM43)
00 .

Code: Select all

Closing TunerPro RT Software
Serial data capture:
Ostrich
S.ZO
OneROM
(No any data when software Tunerpro RT close)
Ostrich
[17/07/2026 23:15:57] Written data (COM43)
53 07 5a S.Z
[17/07/2026 23:15:57] Read data (COM43)
4f O
***Some command need to send in hex, it wont respond with ostrich if send in string / ASCII
Last edited by themr.m on Sat Jul 18, 2026 1:22 pm, edited 2 times in total.
jxx
Posts: 222
Joined: Tue Oct 25, 2011 9:47 am
cars: To many
Location: Vic

Re: OneROM

Post by jxx »

Interesting, i'll dust everything off and have to sit down and get focused again.

I think the main thing will be to get it to respond to the data tracing somewhat as a starting point before trying to modify ram alotment, try and get a sign of life then expand on that
User avatar
antus
Site Admin
Posts: 10012
Joined: Sat Feb 28, 2009 10:34 am
cars: TX Gemini 2L Twincam 8psi
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Subaru WRX 2007

Re: OneROM

Post by antus »

If you need to understand the trace look for Moates Hardware Protocols v19.xls
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
themr.m
Posts: 18
Joined: Sun Jul 05, 2026 6:42 am
cars: EK3

Re: OneROM

Post by themr.m »

antus wrote: Sat Jul 18, 2026 11:21 am If you need to understand the trace look for Moates Hardware Protocols v19.xls
I forgot to do the test for command Address Hit Tracking toggle. Here I update the serial data capture

Code: Select all

When Address Hit Tracking Enable

Serial data capture:

Ostrich
T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?T#.....ñn.ò1.OyO?

***Loop until we disable Address Hit Tracking

T#.....ñn.ò1.OyO?  --> Status In Waiting since no ecu connected

Refer to r19 Ostrich Hardware protocol

'T'+x1+x2+x3+y1+y2+sMMSB+sMSB+sLSB+eMMSB+eMSB+eLSB+CS

Ostrich
[18/07/2026 20:57:13] Written data (COM43) 
    54 23 00 00 01 01 07 f1 6e 07 f2 31 09            T#.....ñn.ò1.    
[18/07/2026 20:57:13] Read data (COM43) 
    4f                                                O                
[18/07/2026 20:57:13] Written data (COM43) 
    79                                                y                
[18/07/2026 20:57:13] Read data (COM43) 
    4f 3f                                             O?               



When Address Hit Tracking Disable

No any serial data when Address hit tracking disable
.
.
https://www.mediafire.com/file/98j4gth8 ... e.pdf/file
themr.m
Posts: 18
Joined: Sun Jul 05, 2026 6:42 am
cars: EK3

Re: OneROM

Post by themr.m »

Refer to Hardware protocol v19

(CS) mean Checksums are just 8-bit additive of the rest of the request, no carry.

Example : Query serial number >> N+S+CS

So, CS for NS is A1(In hex) which is ¡

Converter:
https://www.rapidtables.com/convert/num ... erter.html

Checksums Calculator:
https://www.scadacore.com/tools/program ... alculator/

Breakdown command:
https://www.mediafire.com/file/js73kf22 ... d.pdf/file
.
Image
.
Image


.
pasto
Posts: 6
Joined: Tue Dec 31, 2019 9:26 am
cars: Fiat coupé 20v turbo

Re: OneROM

Post by pasto »

20260717_170604.jpg
Hy everybody

I bought the EPROM socket and installed it on a Fiat Seicento IAW16F ECU. I have an ostrich with which I worked a lot for the construction of an XDF But I also use the Ostrich to configure an XDF for a Motronic 2.10.4.
That's why I bought Onerom—to avoid transferring the Ostrich from one ECU to another.

The Seicento works well; TunerPro can program the ROM without any issues, though the emulator function obviously doesn't work.

I am not an IT specialist, but if you need help running functional tests, I am at your disposal.
You do not have the required permissions to view the files attached to this post.
jxx
Posts: 222
Joined: Tue Oct 25, 2011 9:47 am
cars: To many
Location: Vic

Re: OneROM

Post by jxx »

The emulation is ecu/pcm specific with some hackery.
For honda ecu's there's a pin header from what i've seen, for the GM/Holden delco ecu/pcm you need to tap into the tx rx on the board which i assume will be the same for a majority of different manufacturers.

Good old 808 for example:
delco_808_comms_mod.jpg

As for further developement, I think it's probably about as good as it's going to get, If anyone finds bugs i'm happy to dive back into it and fix them but I think i have this firmware fairly reliable.

It's to cold and wet outside at the moment so I haven't done any live in car testing on the 27C010 Fire 32 firmware.
You do not have the required permissions to view the files attached to this post.
User avatar
antus
Site Admin
Posts: 10012
Joined: Sat Feb 28, 2009 10:34 am
cars: TX Gemini 2L Twincam 8psi
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Subaru WRX 2007

Re: OneROM

Post by antus »

Gee thats a blast from the past, I recon I made that image 17 years ago :lol:
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396